记录并浅析一次服务器被黑事件
字数 1365 2025-08-18 11:39:30
WordPress服务器被黑事件分析与防护教学文档
1. 事件概述
- 时间:2020年3月发现,实际入侵时间可追溯至2018年1月
- 系统环境:Windows系统 + Apache + PHP + WordPress
- 发现迹象:网站出现异常外文页面链接,页面中嵌入了恶意JS代码
2. 攻击技术分析
2.1 XSS跨站脚本攻击
- 攻击方式:在页面中嵌入恶意JS代码
- 代码功能:通过
getCookie函数窃取访问用户的cookie信息 - 攻击服务器:193.238.46.57(已无法访问)
2.2 WordPress暴力破解
- 攻击接口:
xmlrpc.php - 绕过机制:利用POST方式提交数据绕过WordPress的登录限制
- 影响:导致服务器资源严重损耗
2.3 漏洞利用尝试
日志中发现的常见漏洞攻击:
- ThinkPHP5远程代码执行漏洞
- WordPress插件漏洞利用
- 其他常见CMS漏洞扫描
2.4 后门植入
- 位置:
C:\phpStudy\WWW\wordpress2\wp-content\plugins\anything-order-by-terms\modules\ - 文件特征:
- 430多个怪异英文命名的PHP文件
- 几十个
php.suspected文件(被杀毒软件重命名) - 文件生成时间集中在2018年1月12日15:29
3. 攻击流程还原
- 初始入侵:通过WordPress插件漏洞或弱密码获得管理员权限
- 植入后门:上传恶意PHP文件到插件目录
- 持久化:创建大量伪装文件,包含恶意代码
- 数据窃取:通过XSS窃取访问者cookie信息
- 隐蔽通信:与C&C服务器(193.238.46.57)通信
4. 恶意代码分析
4.1 check_is_bot.php
<?php
// 解码后的恶意代码功能:
// 1. 检查访问者是否为搜索引擎爬虫
// 2. 对非爬虫访问者执行恶意操作
// 3. 包含其他恶意脚本
?>
4.2 恶意JS代码
// 主要功能:
// 1. 窃取用户cookie
// 2. 通过base64编码隐蔽传输
// 3. 使用setTimeout执行混淆后的代码
5. 安全防护建议
5.1 系统管理措施
- 资产清查:定期汇总所有对外服务器情况
- 责任明确:为每台服务器指定管理责任部门和人员
- 巡查制度:建立网站日常安全巡查机制
5.2 技术防护措施
-
更新升级:
- 及时更新WordPress核心、主题和插件
- 保持PHP、Apache等组件为最新版本
-
访问控制:
- 限制WordPress后台管理访问IP
- 禁用或保护
xmlrpc.php接口 - 使用强密码并启用双因素认证
-
安全加固:
- 安装Web应用防火墙(WAF)
- 部署入侵检测系统(IDS)
- 定期进行漏洞扫描和安全评估
-
日志监控:
- 启用并定期分析access.log和error.log
- 监控异常文件修改行为
- 设置关键目录的文件完整性检查
5.3 应急响应措施
- 隔离系统:发现入侵后立即将服务器下线
- 取证分析:保留日志和恶意文件样本
- 彻底清理:重装系统或确保完全清除后门
- 密码重置:重置所有相关账户密码
6. 长期安全策略
- 最小化原则:仅安装必要的插件和主题
- 定期备份:实施3-2-1备份策略(3份备份,2种介质,1份离线)
- 安全培训:对管理员进行安全意识培训
- 合规检查:定期检查是否符合网络安全法规要求
7. 总结
本次事件暴露了长期无人维护的WordPress网站的安全风险,攻击者通过多种手段实现入侵并长期潜伏。防护重点在于:定期更新、严格访问控制、全面监控和应急响应能力建设。