1.漏洞简介
Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品,Microsoft Windows是一套个人设备使用的操作系统,Microsoft Windows Server是一套服务器操作系统,Server Message Block是其中的一个服务器信息传输协议。
微软公布了在Server Message Block 3.0(SMBv3)中发现的“蠕虫型”预授权远程代码执行漏洞。
时间线:
2020-03-11 某厂家发布规则更新,疑似SMBv3严重漏洞
2020-03-11 360-CERT 跟进并发布改漏洞初步跟进说明
2020-03-12 微软正式更新CVE-2020-0796漏洞补丁
2020-03-12 360CERT更新预警
2.漏洞概述
(CVE-2020-0796 SMBGhost)该漏洞是由于SMBv3协议在处理恶意的压缩数据包时出错所造成的,它可让远程且未经身份验证的攻击者在目标系统上执行任意代码。
3.影响版本
适用于32位系统的Windows 10版本1903
Windows 10 1903版(用于基于x64的系统)
Windows 10 1903版(用于基于ARM64的系统)
Windows Server 1903版(服务器核心安装)
适用于32位系统的Windows 10版本1909
Windows 10版本1909(用于基于x64的系统)
Windows 10 1909版(用于基于ARM64的系统)
Windows Server版本1909(服务器核心安装)
4.环境搭建
(1)python3环境(因为我找的脚本大佬是用python3写的)
下载地址
我用的是3.7.7
(2)没有打过补丁的win10版本,我用的是1903下载地址
攻击前关闭win10的防火墙
5.漏洞检测
漏洞检测工具scanner.py
python (你scanner.py的路径) (你攻击的那个win10 IP地址)
但我出现了这个问题,是缺少一个模块
输入这个
但是一堆红
下这个https://pypi.org/project/netaddr/#modal-close
ok了。
继续,出现箭头所指即存在此漏洞。
6.漏洞蓝屏攻击
poc 网上有,仔细找找,找不到私我。
python (poc存放路径)(ip)
攻击成功,蓝屏
7.防护措施
(1)开启防火墙
经测试,关闭公共网络会收到这个攻击,所以一定要开启公共网络的防火墙。
(2)在微软发布修补CVE-2020-0796漏洞的安全更新之前,Cisco Talos分享了通过禁用SMBv3压缩和拦截计算机的445端口来防御利用该漏洞发起的攻击。
(3)目前厂商已发布升级补丁以修复漏洞,补丁获取链接:
https://portal.msrc.microsoft.com/zh-cn/security-guidance/advisory/CVE-2020-0796
(4)使用以下PowerShell命令禁用SMBv3服务的压缩(无需重新启动):
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 –Force
(5)可以通过禁止SMB 的流量流向外网来防御攻击。
8.提权
当我导入提权POC(python脚本)时出现了“ WindowsPath”类型的参数不可迭代
猜测是win10自动打了补丁的原因:(win10怎么查看已安装更新补丁)
卸载补丁后再次尝试还是不行。
最后我找了一个exp来:
exp
直接运行就好了。
参考:
https://www.cnblogs.com/L0ading/p/12519325.html
https://nosec.org/home/detail/4420.html
https://i2.wp.com/securityaffairs.co/wordpress/wp-content/uploads/2020/04/CVE-2020-0796-poc-RCE.gif?fit=1024%2C743&ssl=1