Metasploit免杀
*1 利用msf自带编码器进行编码免杀
*2 利用加壳进行免杀
21网安师1 2021025643137 郭弘凯
利用msf自带编码器进行编码免杀
首先查看本机IP地址
生成payload
上面生成的mike.exe没有进行编码处理,很可能一进入靶机就会被杀毒软件删除,下面我们进行一定的编码处理
查看msf自带的编码进行测试
查看当前所有的编码器
我们使用性能为excellent的编码器进行编码
这里的 -e的意识是使用编码器 -i的意思是编码次数
上面的mike.exe没有进行编码,mike1.exe进行了一次编码,而往往一次编码可能达不到免杀的效果,msfvenom多重编码将增大免杀率,下面对初始生成的文件进行多重编码生成mike2.exe(注:使用管道符号“|”进行多次编码)
再次查看msfvenom的编码器,选择合适的编码器进行多次编码
选择上面几项编码器进行一下多重编码(-e 后面的就是选择的编码器)(注:编码后输出的文件应该是raw类型(-f raw),但是最后输出的文件得是windows可以执行的exe文件)
至此,三个文件都已经生成,第一个未编码,第二个编码一次,第三个多重编码,我们用来比较一下他们的免杀效果
打开msfconsole
使用handler模块进行监听
设置参数
运行
首先将mike.exe文件放进靶机中(成功)(注:杀毒软件报毒,点击信任)
退出meterpreter,并重新监听
其次把mike1.exe文件放进靶机中并运行(成功)(注:杀毒软件报毒,点击信任)
退出并再次监听
最后把mike2.exe文件靶机中并运行(成功)(杀毒软件报毒)
如果用msfconsole进行多次编码后,靶机运行多次编码之后生成的文件不能获取meterpreter,问题可能出现在编码和运行的过程中。多次编码可能导致代码的损坏或不完整,而这可能会导致生成的文件无法获取meterpreter。
此时可以尝试将编码次数减少,或者确认编码后的文件是否完整。
另外,还可以尝试使用不同的编码器,以防止代码损坏。
利用加壳进行免杀
查看msf中加壳脚本upx的用法(注:-o file 中的file是指加壳后的文件名,而后面的file是要加壳的文件)
运行
把cr7.exe放入靶机中运行(成功)(杀毒软件报毒)
总结
本次实验中不管是利用msf中的编码器进行编码还是用加壳脚本,目的都是要绕过Windows系统的查杀,但还是不能够逃过杀毒系统的检测,故还是要寻找更好的方式来进行免杀。