记一次绕过安全狗命令执行上线

admin 2022年6月13日12:50:26评论278 views字数 2089阅读6分57秒阅读模式
声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。


朋友@Sin在一次渗透测试项目中遇到的一个问题,在拿到了Webshell权限后发现不能执行命令,最后虽然成功绕过了安全狗的命令执行限制,但上线时还是遇到些问题。


我们在这篇文章中将模拟这个实战场景来记录整个测试过程,以及遇到的问题和解决方式。


0x01 问题复现

Windows 2008,官网下载的最新网站安全狗IIS版 V4.0.29666,已开启"禁止IIS执行程序"防护功能。


这免费版的安全狗产品估计也快凉凉,软件和防护规则都已经快两年没更新了。http://free.safedog.cn/

记一次绕过安全狗命令执行上线


我们尝试利用冰蝎来连接Webshell,但在访问时发现已经被安全狗拦截了,中国菜刀、冰蝎、哥斯拉等默认的Webshell均会被拦截,所以还得找个免杀的Webshell。

记一次绕过安全狗命令执行上线


这里我找了一个可用来免杀冰蝎Webshell的项目,只需使用该项目生成一个ASP.NET免杀Webshell即可绕过网站安全狗的特征检测。

项目地址:https://github.com/Tas9er/ByPassBehinder
记一次绕过安全狗命令执行上线

注:这个免杀项目Java写的,用exe4j打包的exe,所以在执行前还得先安装好JRE或JDK,并且在环境变量中新建一个系统变量:EXE4J_JAVA_HOME,否则在执行时可能会出现下图提示。

下载地址:https://adoptium.net
记一次绕过安全狗命令执行上线

接着我们再去这个网站后台通过上传漏洞将刚生成的冰蝎ASP.NET免杀Webshell上传上去,虽然在访问时出现了报错,但还是可以用冰蝎连接这个Webshell。

记一次绕过安全狗命令执行上线
记一次绕过安全狗命令执行上线


在冰蝎执行命令时总会提示:拒绝访问,刚开始还以为是cmd权限问题,但自己传了一个cmd还是不行,后边才想到可能是网站安全狗的"禁止IIS执行程序",因为几年前有测试过这个防护功能。

记一次绕过安全狗命令执行上线


0x02 绕过测试

掏出了我多年前改的一个可用于绕过安全狗命令执行限制的ASP.NET脚本,原理也很简单,只需在执行的命令中带有安全狗内置的白名单程序即可,这时可以看到已经可以正常执行命令了。

记一次绕过安全狗命令执行上线


但在@Sin那个项目中虽然绕过了安全狗的命令执行限制,但也只能执行set、whoami、ipconfig,其他命令和自己传的EXE都执行不了,暂时还不能上线。按理说是OK的,不知问题出哪!

记一次绕过安全狗命令执行上线

不过我们后边在冰蝎中测试发现也可以通过带有安全狗内置的白名单程序来执行命令。


现在基本上什么命令都可以执行了,也可以直接上线CS/MSF了,实战中得自行考虑杀软和免杀问题。

c:windowsMicrosoft.NETFrameworkv1.1.4322csc.exe........system32cmd.exe /c whoami
记一次绕过安全狗命令执行上线
记一次绕过安全狗命令执行上线

我们也可以直接利用冰蝎反弹shell模块中的Meterpreter、CobaltStrike来上线。


如果能够免杀蚁剑、哥斯拉的Webshell,也可以去试一下里边的内存加载shellcode上线,原理都是一样的。

记一次绕过安全狗命令执行上线

注:我们利用冰蝎Meterpreter上线时还得注意以下一些问题,CobaltStrike倒是没啥问题,可以直接上线。


0x03 注意事项

(1) 冰蝎不可自定义shellcode,内置的是x86的shellcode,如果IIS应用池是64位,而我们加载的是x86的shellcode,所以这时即使执行了也不能上线

记一次绕过安全狗命令执行上线


(2) 因为以上方式是将冰蝎Meterpreter中的shellcode加载到IIS的w3wp.exe内存中运行,所以极易造成该网站对应IIS应用池崩溃,网站出现503报错,还请谨慎使用。

记一次绕过安全狗命令执行上线


(3) 通过冰蝎Meterpreter、CobaltStrike成功上线,但执行命令时仍会被安全狗"禁止IIS执行程序"拦截,所以还是得利用安全狗内置白名单绕过,也可尝试进程迁移或另起一个会话。

execute -Hc -i -f "c:windowssystem32cmd.exe" -a "C:WINDOWSMicrosoft.NETFrameworkv1.1.4322csc.exe"
记一次绕过安全狗命令执行上线


0x04 文末总结

这次渗透测试项目其实也就是通过ByPassBehinder免杀冰蝎Webshell绕过安全狗特征检测,利用内置白名单绕过命令执行限制上线MSF,然后发现运行的ssms.exe进程,通过模拟令牌方式拿到Administrator权限。


这里只是给大家提供一个思路,因为有时在本地和实战的测试结果不太一样,所以还得根据实际情况灵活运用。



关 注 有 礼



关注公众号回复“9527”可以领取一套HTB靶场文档和视频1208”个人常用高效爆破字典0221”2020年酒仙桥文章打包2191潇湘信安文章打包,“1212”杀软对比源码+数据源,0421Windows提权工具包

记一次绕过安全狗命令执行上线 还在等什么?赶紧点击下方名片关注学习吧!记一次绕过安全狗命令执行上线


推 荐 阅 读




记一次绕过安全狗命令执行上线
记一次绕过安全狗命令执行上线
记一次绕过安全狗命令执行上线

记一次绕过安全狗命令执行上线

原文始发于微信公众号(潇湘信安):记一次绕过安全狗命令执行上线

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月13日12:50:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次绕过安全狗命令执行上线http://cn-sec.com/archives/1112119.html

发表评论

匿名网友 填写信息