DNS曝高危漏洞,影響數(shù)百萬物聯(lián)網(wǎng)設(shè)備
近日,Nozomi Networks發(fā)出警告,uClibc庫的域名系統(tǒng) (DNS) 組件中存在一個(gè)高危漏洞,編號為CVE-2022-05-02,該漏洞將影響所有版本uClibc-ng庫的域名系統(tǒng)(DNS),因此,數(shù)百萬臺使用uClibc庫的物聯(lián)網(wǎng)設(shè)備都也將受到影響。
資料顯示,uClibc庫專門為OpenWRT設(shè)計(jì)的一個(gè)分支,OpenWRT 是用于各種關(guān)鍵基礎(chǔ)設(shè)施部門的路由器的通用操作系統(tǒng)。
通過該漏洞,攻擊者可以進(jìn)行DNS中毒或DNS欺騙攻擊,并將受害者重定向到惡意網(wǎng)站而不是合法網(wǎng)站。Nozomi Networks在報(bào)告中寫到,該漏洞是由庫生成的DNS請求中包含的事務(wù)ID的可預(yù)測性引起,可能允許攻擊者對目標(biāo)設(shè)備執(zhí)行DNS中毒攻擊。
目前,uClibc庫被廣泛應(yīng)用于各大廠商,包括Linksys、Netgear和Axis,或嵌入式Gentoo等Linux發(fā)行版。安全專家尚未透露該漏洞的細(xì)節(jié),因?yàn)楣?yīng)商暫時(shí)沒有解決該問題。
Nozomi的研究人員通過查看物聯(lián)網(wǎng)設(shè)備在其測試環(huán)境中執(zhí)行的DNS請求跟蹤發(fā)現(xiàn)了這個(gè)問題。他們從Wireshark
的輸出中確定執(zhí)行DNS請求的模式,事務(wù)ID首先是遞增的,然后重置為0x2值,然后再次遞增。請求的事務(wù)ID是可預(yù)測的,這種情況可能允許攻擊者在某些情況下發(fā)起DNS中毒攻擊。
研究人員分析了可執(zhí)行文件,發(fā)現(xiàn)創(chuàng)建DNS請求的問題出現(xiàn)在C標(biāo)準(zhǔn)庫uClibc 的0.9.33.2版本。
Nozomi報(bào)告中寫到,研究人員通過源代碼審查發(fā)現(xiàn),uClibc庫通過調(diào)用位于源文件“/libc/inet/resolv.c”中的內(nèi)部“__dns_lookup”函數(shù)來實(shí)現(xiàn)DNS請求。鑒于交易ID的可預(yù)測性,攻擊者想要利用該漏洞,就需要制作包含正確源端口的DNS響應(yīng),并贏得來自DNS服務(wù)器的合法DNS響應(yīng)的競爭。由于該函數(shù)不應(yīng)用任何顯式源端口隨機(jī)化,如果操作系統(tǒng)配置為使用固定或可預(yù)測的源端口,則很可能以可靠的方式輕松利用該問題。
如果操作系統(tǒng)使用源端口的隨機(jī)化,則利用該問題的唯一方法是通過發(fā)送多個(gè)DNS響應(yīng),暴力破解16位源端口值,同時(shí)贏得與合法響應(yīng)的競爭。
最后,Nozomi報(bào)告總結(jié)道,截止該報(bào)告發(fā)布時(shí),該漏洞仍未修復(fù)。開發(fā)者似乎無法修復(fù)該漏洞,自2022年1月以來,CERT/CC 向200多家受邀參與VINCE案例的供應(yīng)商披露了該漏洞,并在公開發(fā)布前30天通知他們。