记一次畅捷通任意文件读取漏洞复现发现的问题

简介: 记一次畅捷通任意文件读取漏洞复现发现的问题

前言


在一次复现畅捷通任意文件读取漏洞的过程中,发觉这个“任意文件读取”漏洞其实暗藏了大坑。通过网上检索,一大堆的文章和工具都是copy只提到文件读取。


复现过程


1.首先就是用网上 公开的的poc试一下

/tplus/SM/DTS/DownloadProxy.aspx?preload=1&Path=../../Web.Config

ac6227d534d844021b03dfc7085818c4_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

成功读取到了文件内容

095908982d3a40dbf726006ad843da4e_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

2.然后想通过读取源代码,来分析看看漏洞的成因。通过读aspx文件读取到的文件内容如下

698f0baa32c3ce560ae2508321807e09_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

3.通过网上查阅资料了解到,畅捷通系统是asp.net开发的,代码是采用了预编译。

简单说,就是提前将源码aspx文件转换成dll文件,这些dll文件保存在bin/ 文件夹下,当程序运行时,首先会加载bin目录下的程序。

当访问aspx文件时,会被对应的.dll文件处理。代码逻辑也是存储在dll中,不论aspx文件是否存在,只要dll文件存在,特定路由的功能就能正常处理。

而文件对应路径为:abc.aspx -> /bin/abc.dll

4.进一步利用读源码读取文件,成功读取相应的dll文件

0e79a2d9729e4f6f48200d56e9eabbb5_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

5.然后再次请求,去读上传接口的文件,出了大问题了。竟然报错报。

错提示:文件找不到了

0573c2796c09db85de247ee8968c9bbf_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


分析源码


网上找到了畅捷通源码,直接反编译DownloadProxy.aspx对应的dll文件

a41f373b976442580d4648ff8125767c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

通过源码看出代码逻辑很简单,首先是获取了Path参数,赋给变量text。

然后也没有经过任何过滤,到了最下边WriteFile()函数(向浏览器输出文件),就发生了任意文件读取。

但紧接着下一行就是  File.Delete()  ,通过字面意思也知道这是个文件删除函数。

由于Path参数可控,就能读取任何文件,但同样也会删除任何文件。

这明明就是一个 任意文件读取+删除 漏洞!


总结


对于别人的漏洞还是要自己分析复现下,copy的东西是方便省力,但效果不可控。像任意文件删除还是很危险的,在生产环境打这种漏洞,系统崩了可就麻烦了。


相关文章
|
安全 数据安全/隐私保护
蓝凌OA系统存在任意文件读取(SSRF)
蓝凌OA系统存在任意文件读取(SSRF)
蓝凌OA系统存在任意文件读取(SSRF)
|
安全
致远OA wpsAssistServlet 任意文件上传漏洞 漏洞复现
致远OA wpsAssistServlet 任意文件上传漏洞 漏洞复现
1974 0
|
安全
致远OA A8 htmlofficeservlet 任意文件上传漏洞 漏洞复现
致远OA A8 htmlofficeservlet 任意文件上传漏洞 漏洞复现
1965 0
致远OA A8 htmlofficeservlet 任意文件上传漏洞 漏洞复现
|
JSON 监控 安全
通达OA任意文件上传漏洞详细分析
通达OA任意文件上传漏洞详细分析
|
安全 关系型数据库 Oracle
一个云本地文件包含漏洞,影响世界一流公司
本文讲的是一个云本地文件包含漏洞,影响世界一流公司,先通过一张截图看一下影响范围吧
1495 0
|
安全 测试技术 区块链
游戏安全资讯精选 2018年第八期:3975款游戏被查处,游戏圈重击;Memcached被利用UDP反射攻击漏洞预警;VentureBeat称区块链或可定位和消除恶意可执行代码的安全问题
3975款游戏被查处,游戏圈重击;Memcached被利用UDP反射攻击漏洞预警;VentureBeat称区块链或可定位和消除恶意可执行代码的安全问题
6071 0

热门文章

最新文章