MS17-010远程溢出漏洞(永恒之蓝)
Ti:2019-12-25
By:Mirror王宇阳
MS17-010 CVE-2017-0143
MS17-010 CVE-2017-0144
MS17-010 CVE-2017-0145
MS17-010 CVE-2017-0146
MS17-010 CVE-2017-0148
实验准备
漏洞原理
MS17-010漏洞出现在Windows SMB v1中的内核态函数srv!SrvOs2FeaListToNt
在处理FEA
(File Extended Attributes)转换时,在大非分页池(Large Non-Paged Kernel Pool)上存在缓冲区溢出。
函数srv!SrvOs2FeaListToNt
在将FEA
list转换成NTFEA
(Windows NT FEA) list前会调用srv!SrvOs2FeaListSizeToNt
去计算转换后的FEA lsit的大小,因计算大小错误,而导致缓冲区溢出。
漏洞历史
-
2017-03-12,微软发布MS17-010补丁包
-
2017-03-14,发布《MS17-010:Windows SMB 服务器安全更新说明》
-
2017-04-14,Shadowbroker发布漏洞利用工具
-
2017-05-12晚上20 时左右,全球爆发永恒之蓝勒索病毒
机器环境
- Kali 【攻击机】 192.168.2.196
- Win7 【靶子机】 192.168.2.155
靶机环境
-
Windows7 专业版
-
漏洞的产生
Sbm服务 445端口
实施漏洞
目标扫描
-
使用Nessus对目标机进行扫描,结果如下:
-
nmap扫描目标服务:
二次确认漏洞
-
使用msf的auxiliary二次判断是否存在“MS17-010”漏洞
看见“Host is likely VULNERABLE to MS17-010(主机可能易受MS17-010攻击)”可以断定目标机存在该漏洞!
执行渗透
上面就是可以利用的漏洞模块:
-
exploit/windows/smb/ms17_010_eternalblue【成 功】![1577276079109](MS17-010 永恒之蓝.assets/1577276079109.png)
-
exploit/windows/smb/ms17_010_eternalblue_win8+【系统不符】
-
exploit/windows/smb/ms17_010_psexec【无效】
配置Payloads
如上图,当前exploit支持的Payload都在上面;
载入“reverse_tcp”,建立meterpreter会话
ps:建立会话后,有大概会导致目标机自动重启
修复策略
漏洞自查
> systeminfo | findstr KB40
执行上述命令会返回系统补丁包的编号(盗版的嘛~~嘻嘻参考下面的表)
补丁修复
-
下载补丁地址
http://www.catalog.update.microsoft.com/search.aspx?q=补丁编号 -
添加系统的入站规则;关闭445、135、138、139等端口