畅捷通T+ v17任意文件上传漏洞复现

1.前言

8月29晚上就开始收到通知,让我们来排查一下是否有使用畅捷通的系统,说是疑似0day导致很多用户被植入勒索病毒,一时间风头十足。第二天很多平台都更新的防护策略,本次漏洞是任意文件上传漏洞,如果网站前端存在waf等安全设备,应该是可以被正常拦截的,所以也无需过于担心。
在这里插入图片描述

畅捷通T+ v17任意文件上传漏洞复现_第1张图片

2.漏洞复现

2.1 漏洞信息:

  • 适用版本:<=v17.0
  • 漏洞类型:任意文件上传
  • 漏洞危害:可实现RCE获取主机权限
  • 涉及接口:/tplus/SM/SetupAccount/Upload.aspx?preload=1

2.2 漏洞分析

这是一个上传漏洞,所以我们需要构造一个post的上传请求,请求接口即为/tplus/SM/SetupAccount/Upload.aspx?preload=1,不难看出,这是一个上传用户个人头像的接口。
通过源码分析可知:
在这里插入图片描述
上传过程中只检测了Content-Type这一个参数,攻击者可以随意构造filename的参数从而 上传任意文件,这就导致了漏洞的产生。
畅捷通T+ v17任意文件上传漏洞复现_第2张图片
不难看出上传路径为当前目录下的images目录,即为/tplus/SM/SetupAccount/images/目录。
到这里漏洞的产生原因就很清楚了,算是一个比较常见的上传漏洞,接下来就是常规的文件上传了。

2.3 漏洞利用

我们可以构造如下参数的上传包(出于和谐考虑就不贴完整的上传包了):

Content-Type: multipart/form-data; boundary=---------------------------33007515338361897914262830846

-----------------------------33007515338361897914262830846
Content-Disposition: form-data; name="File1"; filename="test.html"
Content-Type: image/jpeg

test
-----------------------------33007515338361897914262830846--

上传之后,如果对方在漏洞利用范围就会成功返回200
畅捷通T+ v17任意文件上传漏洞复现_第3张图片此时我们访问一下/tplus/SM/SetupAccount/images/1.html即可访问对应文件,至此这个漏洞的基本复现就完成了。

3.深度利用

注:非授权测试是违法行为,请大家不要恶意攻击他人的业务系统!
漏洞到复现程度在上文就已经实现了,但是实际测试中如果你想要进一步利用就会出现一些问题。
畅捷通T+ v17任意文件上传漏洞复现_第4张图片

你会发现aspx的文件并不能正常解析,这是由于根目录下的PrecompiledApp.config 中的updatable值设置成了false。导致后面上传的文件无法进行编译。aspx程序无法正常执行。
当然,遇到这种情况,部分环境是可以尝试asp文件进行getshell的。因为asp文件并非.Net处理。这个就只能看运气了绝大多数环境可能并不支持执行asp文件。
但是这种情况并非无法解决问题,我们可以通过手动编译的方式上传编译后的dll文件来提供aspx文件的运行环境。具体操作在这里就不具体分析了,等风头过了之后再考虑补全一下操作方案。
有想复现的白帽子可以参考
https://www.buaq.net/go-53733.html

4.修复方案

  • 官方补丁, https://www.chanjetvip.com/product/goods/goods-detail?id=53aaa40295d458e44f5d3ce5
  • WAF拦截,由于这是一个常规的上传漏洞,很多waf都是有默认的拦截能力的,需要的话也可以将/tplus/SM/SetupAccount/Upload.aspx路径进行主动拦截。

你可能感兴趣的:(漏洞复现,漏洞复现,网络安全,畅捷通)