寻找防护点
在一次渗透测试中发现存在某安全防护软件,无法执行命令。本地搭建环境进行绕过。
开启防护
防护软件通过将DLL加载进入w3wp.exe。
总所周知CreateProcessW是IIS创建进程的API函数,查看CreateProcessW。
跟进call调用可以发现调用的是kernelbase.dll->CreateProcessInternalW函数
跟进CreateProcessInternalw,通过JMP跳转至web_safe.dll。
关闭防护
区别在于没有通过jmp跳转到web_safe处
通过pchunter64.exe我们可以批量查找被防护软件Hook的函数,并且可以看见被hook前的值。
内存补丁
我们首先查看cmd.exe未经过hook的CreateProcessW的调用
比对两个的调用
经过比对我们可以得知4C 8B DC 53 56 57是正常的流程调用,我们直接恢复其原始值。
这里我给aspx大马加了白名单,绕过的是行为不是木马免杀。对内存进行补丁之前,防护软件是有报警的。
对内存补丁之后
提权成功没有拦截
关注公众号
公众号长期更新安全类文章,关注公众号,以便下次轻松查阅
原文始发于微信公众号(moonsec):IIS命令执行防护绕过
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论