研究人員在Realtek RTL8170C Wi-Fi模塊中發(fā)現(xiàn)多個(gè)安全漏洞,,可用來(lái)劫持無(wú)線通信,。
Realtek RTL8710C模塊是基于Cortex M3處理器的,RTL8710C中不包含ADC/DAC模塊,、GPIO端口也少,能耗也低,廣泛用于農(nóng)業(yè),、能源、游戲,、健康,、智能家居等設(shè)備中。近日,,研究人員在Realtek RTL8170C Wi-Fi模塊中發(fā)現(xiàn)了多個(gè)安全漏洞,。攻擊者利用這些漏洞可以在受害者設(shè)備上進(jìn)行權(quán)限提升,并劫持無(wú)線網(wǎng)絡(luò)通信,。
漏洞存在于該模塊的WPA2握手機(jī)制中,,研究人員發(fā)現(xiàn)其握手機(jī)制易受到2個(gè)基于棧的緩沖區(qū)溢出漏洞,漏洞CVE編號(hào)為CVE-2020-27301和CVE-2020-27302,。這兩個(gè)漏洞的利用都需要攻擊者知道網(wǎng)絡(luò)的PSK,,然后攻擊者濫用其來(lái)獲取WPA2客戶端上的遠(yuǎn)程代碼執(zhí)行。
CVE-2020-27301漏洞
在WPA2 4次握手中,,EAPOL幀中會(huì)產(chǎn)生一次密鑰交換,。在密鑰交換過(guò)程中,Realtek WPA2客戶端會(huì)調(diào)用ClientEAPOLKeyRecvd來(lái)處理該數(shù)據(jù)包,。而ClientEAPOLKeyRecvd會(huì)調(diào)用DecGTK()函數(shù)解密GTK (Group Temporal Key),。而在DecGTK()中,會(huì)有一個(gè)不安全的AES_UnWRAP()被調(diào)用,。漏洞就存在于該函數(shù)的調(diào)用中,。
漏洞影響所有使用該組件來(lái)連接誒WiFi網(wǎng)絡(luò)的嵌入式設(shè)備和IoT設(shè)備中,。攻擊者利用該漏洞要求與受害者設(shè)備處于同一WiFi網(wǎng)絡(luò)下,攻擊者成功利用該漏洞可以完全控制WiFi模塊,,并可能獲取嵌入式設(shè)備操作系統(tǒng)的root 權(quán)限,。
CVE-2020-27302漏洞
CVE-2020-27302漏洞是WPA2密鑰分析中的棧溢出漏洞,CVSS 評(píng)分8.0分,。研究人員通過(guò)修改開(kāi)源的hostapd來(lái)實(shí)現(xiàn)漏洞利用,。PoC中攻擊者作為AP,發(fā)送惡意的加密的GTK給通過(guò)WPA2連接的任意客戶端:
https://d3u9fi9s7csg1s.cloudfront.net/files/2021-06/Exploiting%20Realtek%20vuln%20-%20take2%20-%20edited.mp4
PoC視頻證明了該棧溢出漏洞,,并最終將返回地址覆寫為無(wú)效地址(0x95f98179),。因?yàn)榫彺媸峭ㄟ^(guò)AES解密的,所以該地址是隨機(jī)地址,,因?yàn)楣粽咧浪械募用軈?shù),,因此可以精準(zhǔn)控制返回地址。