近日,一種被稱(chēng)為NAT Slipstreaming的攻擊破滅了人們對(duì)防火墻和路由器的安全性幻想。
安全研究員Samy Kamkar開(kāi)發(fā)了一種基于JavaScript的攻擊——NAT Slipstreaming,允許攻擊者繞過(guò)受害人的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)或防火墻安全控制,遠(yuǎn)程訪問(wèn)綁定到受害者計(jì)算機(jī)的任何TCP/UDP服務(wù)-如果首先誘騙了受害人,訪問(wèn)可能受到黑客控制的網(wǎng)站。
NAT為通過(guò)網(wǎng)絡(luò)設(shè)備的流量重新映射IP地址空間,該技術(shù)在節(jié)省IPv4地址空間方面非常有效,此外安全人士還廣泛認(rèn)為NAT還有助于提高安全性,例如可以減少資產(chǎn)暴露(編者按:“萬(wàn)物直聯(lián)”也是人們對(duì)5G安全性的最大擔(dān)憂(yōu)),但是NAT的安全光環(huán)被NAT Slipstreaming給徹底毀掉了。
NAT Slipstreaming的開(kāi)發(fā)者Samy Kamkar指出,該攻擊僅對(duì)支持應(yīng)用程序級(jí)別網(wǎng)關(guān)(ALG)的NAT/防火墻有效,ALG是支持需要多個(gè)端口(控制通道和數(shù)據(jù)通道)協(xié)議才能工作的技術(shù),例如VoIP協(xié)議、SIP和H323、文件傳輸協(xié)議(FTP)等。
NAT Slipstreaming是一種全新的數(shù)據(jù)包注入技術(shù),可攻擊所有主流瀏覽器。Kamkar在技術(shù)博客中詳細(xì)介紹道:
NAT Slipstreaming通過(guò)定時(shí)攻擊或WebRTC連接內(nèi)部IP提取、自動(dòng)遠(yuǎn)程MTU和IP碎片發(fā)現(xiàn)、TCP數(shù)據(jù)包massaging、TURN身份驗(yàn)證濫用、精確的數(shù)據(jù)包邊界控制以及瀏覽器濫用造成的協(xié)議混亂等方式的組合,實(shí)現(xiàn)對(duì)瀏覽器與路由器防火墻NAT中內(nèi)置的ALG鏈接追蹤機(jī)制連接的利用。
由于是通過(guò)NAT或防火墻打開(kāi)的目標(biāo)端口,因此繞過(guò)了任何基于瀏覽器的端口限制。
簡(jiǎn)而言之,NAT Slipstreaming利用了某些路由器中的ALG部署方式,從而繞過(guò)了NAT。
Kamkar指出,解決NAT Slipstreaming暴露的安全缺陷對(duì)于廠商們來(lái)說(shuō)可能是一個(gè)困難的挑戰(zhàn)。
可以在路由器上禁用ALG,但這會(huì)帶來(lái)不便(VoIP電話(huà)無(wú)法工作)。可以改進(jìn)SIP ALG,但是SIP只是一部分,其他ALG同樣會(huì)暴露問(wèn)題。
可以在瀏覽器上阻止端口5060,但這并不能解決根本問(wèn)題:“這事有些鬧心。”
事實(shí)上,NAT Slipstreaming并不是嚴(yán)格意義上的“漏洞”,也“安全缺陷”是一個(gè)更準(zhǔn)確的定義。
正如Kamkar所言:“一切協(xié)議和功能都符合標(biāo)準(zhǔn),但是當(dāng)它們組合在一起進(jìn)行復(fù)雜交互的時(shí)候,糟心的問(wèn)題產(chǎn)生了。”