Exp3-免杀原理
基础问题回答
(1)杀软是如何检测出恶意代码的?
根据特征码检测:就是恶意代码都有一些特征数据,也就是特征码,这些特征数据存储在AV厂商的特征库中。如果一个文件被检测出他的某些特征数据是特征库中的特征数据,那么这个文件就被认为包含恶意代码。
启发式检测:就是如果一个软件在干通常是恶意软件干的事,看起来了像个恶意软件,那我们就把它当成一个恶意软件。
(2)免杀是做什么?
免杀就是让本身能被杀毒软件发现的恶意代码,通过一些手段加工后,使得它不能被发现。
(3)免杀的基本方法有哪些?
改变特征码:如果是类似exe的可执行文件可以加壳,例如压缩壳,如果是shellcode可以用encode进行编码或者用payload重新编译生成可执行文件,如果是源代码可以用其他语言进行重写再编译。
改变行为:尽量使用反弹式连接;减少对系统的修改。
非常规方法:使用社工类攻击,诱骗目标关闭AV软件;纯手工打造一个恶意软件。
(4)开启杀软能绝对防止电脑中恶意代码吗?
不能,从实验来看,如果通过一些方式改变了恶意代码中的特征码,那么恶意软件将不被杀毒软件发现,但这并不意味着该文件是安全的、没有病毒的。
实践总结体会
本次实验操作性较强,不是很难,但是过程比较复杂。我在安装veil的时候遇到了很多问题,花了很久的时间才解决。后面做免杀操作的时候,也要结合之前几次实验的内容。通过实验,我也发现了开启杀软并不能完全防止电脑中恶意代码,因此不能完全依靠杀软来维护电脑的安全。
问题及解决:
解决:输入指令 /usr/share/veil/config/setup.sh --force --silent
实验记录
(1)正确使用msf编码器,使用msfvenom生成如jar之类的其他文件
后门文件测试: 编码一次再测试: 编码n次再测试:
利用php格式文件检测:
利用jar文件检测:
(2)veil,加壳工具
veil安装
利用加壳工具产生后门软件
免杀加壳尝试
(3)使用C + shellcode编程
(4)通过组合应用各种技术实现恶意代码免杀
利用python+aes_encrypt