0x00簡介
CVE-2020-16898侦香,又稱“Bad Neighbor”Windows TCP/IP堆棧不正確地處理ICMPv6 Router Advertisement數據包時,存在一個遠程執(zhí)行代碼漏洞。成功利用此漏洞的攻擊者可以獲得在目標服務器或客戶端上執(zhí)行代碼的能力巧颈。要利用此漏洞,攻擊者必須將經過特殊設計的ICMPv6 Router Advertisement數據包發(fā)送到遠程Windows計算機上袖扛。
0x01漏洞描述
遠程攻擊者通過構造特制的ICMPv6 Router Advertisement(路由通告)數據包砸泛,并將其發(fā)送到遠程Windows主機上十籍,即可在目標主機上執(zhí)行任意代碼。
攻擊者可以利用該漏洞發(fā)送惡意制作的數據包唇礁,從而有可能在遠程系統上執(zhí)行任意代碼勾栗。與MAPP(Microsoft Active Protection計劃)成員共享的概念證明既非常簡單又非常可靠盏筐。它會導致立即出現BSOD(藍屏死機)围俘,但更嚴重的是,對于那些能夠繞過Windows 10和Windows Server 2019緩解措施的人來說琢融,存在被利用的可能性界牡。可以使遠程代碼執(zhí)行的漏洞利用的影響將是廣泛的漾抬,并且影響很大宿亡,因為這種類型的錯誤可能會變成可感染的。
0x02受影響版本
?Windows 10 Version 1709 for 32-bit Systems
?Windows 10 Version 1709 for ARM64-based Systems
?Windows 10 Version 1709 for x64-based Systems
?Windows 10 Version 1803 for 32-bit Systems
?Windows 10 Version 1803 for ARM64-based Systems
?Windows 10 Version 1803 for x64-based Systems
?Windows 10 Version 1809 for 32-bit Systems
?Windows 10 Version 1809 for ARM64-based Systems
?Windows 10 Version 1809 for x64-based Systems
?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 10 Version 2004 for 32-bit Systems
?Windows 10 Version 2004 for ARM64-based Systems
?Windows 10 Version 2004 for x64-based Systems
?Windows Server 2019
?Windows Server 2019 (Server Core installation)
?Windows Server, version 1903 (Server Core installation)
?Windows Server, version 1909 (Server Core installation)
?Windows Server, version 2004 (Server Core installation)
0x03 環(huán)境搭建
網絡環(huán)境開啟ipv6支持纳令。這里使用vmware挽荠,NAT出一個子網,并開啟ipv6支持平绩。點擊VM的編輯--->虛擬網絡編輯器圈匆,選擇NAT模式,開啟ipv6支持捏雌,點擊確定臭脓,如下圖。
選取一個受影響版本的windows10鏡像腹忽,安裝在虛擬機里来累。
這里我使用的是1709版本:
打開win10的控制面板-->選擇網絡和共享中心,右鍵打開Ethernet0
打開ipv6版本:
0x04漏洞復現
1.執(zhí)行ipconfig窘奏,查看IPv6地址:
2.注意:受害機器的 IPv6地址選取“ipv6地址”或者“臨時ipv6地址”
3.攻擊者和目標主機通信(這里把自己的物理機作為攻擊機者)
執(zhí)行ipconfig查看攻擊機的ipv6地址嘹锁,選擇“本地鏈接的ipv6地址”。
4.攻擊機中python為3.7+ 着裹,并且安裝了scapy领猾。 :在安裝好的python后,打開cmd骇扇,輸入python,沒有報錯摔竿,說明成功:
[圖片上傳失敗...(image-e7e7ef-1604571187435)]
然后安裝scapy:
直接使用pip安裝:
pip install scapy
一些擴展功能安裝,可選:
pip install matplotlib pyx cryptography
啟動scapy交互shell
切換到Python的Scripts文件夾下少孝,直接使用scapy命令啟動(本質是scapy.bat):
Scapy
啟動界面如下圖:
5.這段payload作用是構造特定ipv6數據包继低,發(fā)送給受害者機器,讓受害機器藍屏稍走。
CVE-2020-16898-exp1.py:
修改完后袁翁,在攻擊者上執(zhí)行:python 1.py
虛擬機被打上藍屏:如下
可以使用wirkshark選擇對應的虛擬網卡進行抓包查看
如下圖所示:
查看數據包可以看到里面有發(fā)送的payload柴底。
0x05修復建議
1.升級更新。立即安裝針對此漏洞的更新粱胜,下載最新的補丁包進行更新修復柄驻,如下連接。
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-16898
2.不能升級的話焙压,建議先禁用基于RA的DNS配置