使用shellcode打造MSF免杀payload及shellcode加载技术

0x00 前言  
    经常有同学提及MSF payload的免杀问题,其实除了Veil之处,还有另一种比较轻巧的方案可以打造免杀的payload,那就是shellcode。 
0x01 从哪里开始  
    shellcode是什么,可以去drops 搜索学习,但这并不是本文的重点。因为MSF已经为我们提供了shellcode的生成功能,接下来我们就拿最常用的payload:reverse_tcp来做测试吧!(其它的payload均可以) 
CobaltStrike:payload>windows>meterpreter>reverse_tcp设置选项如下:监听9527端口。 

    接下来以同样的方式生成c格式的payload,打开payload查看: 

    没错,你看到的是shellcode,那么如何编译成我们需要的exe呢? 
0x02 如何执行shellcode  
    经过一番搜索,大致得到了这么几种执行shellcode的方法(c语言,其它语言执行shellcode的方法可自己去寻找) 
1: 

2: 

3: 

4: 

5: 

6: 

7: 

8: 

    使用vc6默认的Debug方式编译cpp代码,得到8个payload: 

分别使用360安全卫士(开启QVM及小红伞引擎,最新病毒库)和360杀毒扫描: 


    看起来,免杀是没有问题了,那么这些shellcode是否能正常执行呢?执行生成的8个exe测试下连接效果: 
 
0x03 总结  
     实际测试过程中发现,减小exe的体积会增加被查杀的风险,使用默认的编译选项即可完美兔杀!  
     不同的编译器编译生成的exe免杀效果也不同哦!

你可能感兴趣的:(免杀相关)