iDocView /html/2word 远程代码执行漏洞分析

渗透技巧 12个月前 admin
171 0 0


前言

长亭于今日发布了iDocView /html/2word 远程代码执行漏洞的预警

iDocView /html/2word 远程代码执行漏洞分析

所以这边直接掏出了早前的审计过程


漏洞分析

tomcat+spring-mvc看Interceptor ViewInterceptor没什么拦截。this.thdViewCheckSwitch默认为False

iDocView /html/2word 远程代码执行漏洞分析

XssFilter也没拦截

iDocView /html/2word 远程代码执行漏洞分析

看漏洞点 html/2word传入URL参数。大概率是根据URL下载文件之类没判断后缀的漏洞

iDocView /html/2word 远程代码执行漏洞分析

url带入了GrabWebPageUtil.downloadHtml 首先看看带入getWebPage发生了什么

iDocView /html/2word 远程代码执行漏洞分析

大概意思就是访问指定的URL。然后截取/之后的文件名。写入。判断后缀是否为php之类的。。没过滤jsp。

iDocView /html/2word 远程代码执行漏洞分析

还有一个要注意的点。这里传入的第三个参数fileName和截取URL拿到的文件名filename。如果fileName存在就不用URL截取的文件名了。 所以这里第三个参数传入了index.html。这里文件名不可控。不能利用 回到上一层。这里的getWebPage没有指定第三个参数。只要GrabUtility.filesToGrab可控。就能写任意文件

iDocView /html/2word 远程代码执行漏洞分析

看看GrabUtility.filesToGrab怎么来的 最后发现是第一次传入的url返回的内容做了解析

iDocView /html/2word 远程代码执行漏洞分析

将内容中的link、script、img标签的URL加入到filesToGrab。然后遍历去下载。其实也可以理解。下载一个HTML。同时把相关的css img都下下来

iDocView /html/2word 远程代码执行漏洞分析

所以这里就有大概的利用方式了。

1、指定一个URL。写一个访问之后将link的url加入filesToGrab

2、遍历filesToGrab访问http://IP/……2.jsp 

3、起一个python socket。访问就返回jsp内容。由于getwebpage的文件名是由最后一个/之后的。这里利用反斜杠绕过。得到……2.jsp即可写入web目录

解析第一次请求结果之后的URL加入filesToGrab

iDocView /html/2word 远程代码执行漏洞分析

把……2.jsp拼接路径。最后跨目录写文件

iDocView /html/2word 远程代码执行漏洞分析
iDocView /html/2word 远程代码执行漏洞分析

这里有个小问题。其实路径要写……docview2.jsp才是web目录。懒得重写了

iDocView /html/2word 远程代码执行漏洞分析



更多漏洞安全请关注我们


未经允许禁止转载


1

END

1


iDocView /html/2word 远程代码执行漏洞分析

原文始发于微信公众号(漏洞随笔):iDocView /html/2word 远程代码执行漏洞分析

版权声明:admin 发表于 2023年11月22日 下午3:09。
转载请注明:iDocView /html/2word 远程代码执行漏洞分析 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...