More  

小編的世界 優質文選 主機

開源服務器被曝7漏洞!可引起DNS緩存中毒並遠程執行惡意代碼


2021年1月23日 - 主機小編  
   

SegmentFault思否

網絡安全研究人員在 Dnsmasq 發現了 7 個漏洞,這是一個流行的開源軟件服務器,用於緩存域名系統(DNS)響應。

這 7 個漏洞被以色列研究公司 JSOF 統稱為“ DNSpooq”,與之前披露的 DNS 架構的弱點相呼應,使得 Dnsmasq 服務器無法抵禦一系列攻擊。惡意攻擊者可以發起 DNS 緩存中毒攻擊並遠程執行惡意代碼。

研究人員在今天發表的一份報告中指出: “我們發現,Dnsmasq 很容易受到偏離路徑攻擊者(也就是沒有觀察到 DNS 轉發器與 DNS 服務器之間通信的攻擊者)的 DNS 緩存中毒攻擊。”

由於這 7 個漏洞,攻擊者可以在幾秒鐘到幾分鐘的時間內同時攻擊多個域名,而且沒有任何特殊操作。此外,安全研究人員還發現,Dnsmasq 的許多實例被錯誤地配置為偵聽 WAN 接口,黑客可以直接發起網絡攻擊。

Dnsmasq 是 DNS 偽裝的縮寫,是一個輕量級軟件,具有 DNS 轉發功能,用於本地緩存 DNS 記錄,從而減少了上遊名稱服務器的負載,提高了性能。

JSOF發現,截至 2020 年 9 月,大約有 100 萬個 Dnsmasq 漏洞實例,該軟件包含在 Android 智能手機中,以及數百萬個來自 Cisco、Aruba、Technicolor、Redhat、Siemens、Ubiquiti 和 Comcast 的路由器和其他網絡設備。

再論 Kaminsky 攻擊和 SAD DNS

DNS 緩存中毒的概念並不新鮮,2008年,安全研究員 Dan Kaminsky 提出了他的發現,該發現是一個廣泛而關鍵的 DNS 漏洞,攻擊者可以利用該漏洞對大多數域名服務器發起緩存中毒攻擊。

它利用了 DNS 的一個基本設計缺陷(可能只有65,536個可能的交易 ID“TXID”),向 DNS 服務器發送大量偽造的響應,然後將其緩存起來,並利用這些響應將用戶引向欺詐網站。

引入事務 ID 是為了防止權威命名服務器被模擬以制造惡意響應的可能性。通過這種新的設置,DNS 解析器將一個 16 位的 ID 附加到他們的請求到名稱服務器,然後名稱服務器將返回具有相同 ID 的響應。

但是事務 ID 的限制意味著每當遞歸解析器查詢給定域名的權威解析器(例如,www.google. com)時,攻擊者可能會向解析器發送部分或全部 6.5 萬個左右可能的事務 ID 的 DNS 響應。

如果來自攻擊者的帶有正確事務 ID 的惡意應答在來自權威服務器的響應之前到達,那麼 DNS 緩存將被有效地毒化,只要 DNS 響應有效,就返回攻擊者選擇的 IP 地址而不是合法地址。

這種攻擊是基於整個查找過程未經身份驗證這一事實,這意味著沒有辦法驗證權威服務器的身份,而且 DNS 請求和響應使用 UDP(用戶數據報協議協議)而不是 TCP,因此很容易欺騙響應。

為了解決這個問題,一個隨機的 UDP 端口和事務 ID 一起被用作第二個標識符,而不是僅僅使用端口 53 進行 DNS 查找和響應,從而增加了數十億的平均信息量,使攻擊者幾乎無法猜測源端口和事務 ID 的正確組合。

盡管由於前面提到的源端口隨機化(SPR)和諸如DNSSEC(域名系統安全擴展)之類的協議,緩存中毒攻擊的有效性受到了打擊,但研究人員於去年 11 月發現了一種“新穎的”側信道,通過使用 ICMP 速率限制作為側信道來揭示給定的端口是否打開。

這些攻擊稱為“ SAD DNS”或側信道攻擊 DNS,包括向 DNS 解析器發送大量欺騙式 UDP 數據包,每個數據包通過不同的端口發送,然後使用 ICMP“ Port Unreachable”消息(或缺少該消息)作為識別速率限制是否已達到的指標,並最終縮小請求發出端口的確切來源。

允許設備接管的多階段攻擊

有趣的是,JSOF 詳細介紹的 DNS 緩存中毒攻擊與 SAD DNS 有相似之處,因為 CVE-2020-25684、 CVE-2020-25685 和 CVE-2020-25686 三個漏洞旨在減少事務 ID 的平均信息量和接受響應所需的源端口。

具體而言,研究人員指出,盡管 Dnsmasq 支持 SPR,但它“在一個端口上多路傳輸多個 TXID,並不將每個端口鏈接到具體的 TXID”,而且用於防止 DNS 欺騙的 CRC32 算法可能會被輕易地擊敗,導致出現“攻擊者需要獲得任何一個正確的端口和任何一個正確的 TXID”的情況。

安全研究人員發現,Dnsmasq 版本 2.78 到 2.82 都受這三個漏洞的影響。

JSOF 公布的其他四個漏洞是基於堆的緩沖區溢出,這可能導致在易受攻擊的設備上執行潛在的遠程代碼。

研究人員說,“這些漏洞本身的風險有限,但會變得特別強大,因為它們可以與緩存中毒漏洞結合起來,產生強大的攻擊,允許遠程執行代碼。”

更糟糕的是,這些弱點可以與其他網絡攻擊鏈接起來,比如 SAD DNS 和 NAT 滑流,從而對監聽端口 53 的 Dnsmasq 解析器發起多階段攻擊。如果惡意代碼通過網絡瀏覽器或同一網絡上的其他受感染設備傳輸,那麼即使是那些被配置為只偵聽內部網絡中接收到的連接的惡意代碼也會面臨風險。

除了讓它們容易受到高速緩存中毒的影響,這種攻擊還可以讓惡意攻擊者控制路由器和網絡設備,通過破壞惡意域名的流量來實施分布式拒絕服務(DDoS)攻擊,甚至阻止用戶訪問合法網站(反向 DDoS)。

研究人員還提出了“蠕蟲攻擊”的可能性,即移動設備連接到一個使用受感染的 Dnsmasq 服務器的網絡,接收到一個錯誤的 DNS 記錄,然後在連接到新網絡時用於感染新網絡。

如何減輕 Dnsmasq 漏洞的風險

安全研究人員建議供應商將他們的 Dnsmasq 軟件升級到最新到 2.83 版本或以上以減輕風險,這個版本將在今天晚些時候發布。

此外,研究人員還提出了一種解決方案,建議降低允許轉發的最大查詢數,並依靠 DNS-over-HTTPS(DoH)或 DNS-over-TLS (DoT)連接到上遊服務器。

DNS 是一個互聯網關鍵協議,其安全性極大地影響互聯網用戶的安全。這些問題使網絡設備處於危險之中,影響到數以百萬計的互聯網用戶,這些用戶可能會受到域名服務器緩存中毒的影響。

這次發現的 7 個漏洞也凸顯了 DNS 安全的重要性,特別是 DNS 轉發器的安全性。研究人員強調了加快部署 DNS 安全措施,如 DNSSEC、 DNS 傳輸安全和 DNS Cookie 的必要性。

編譯:芒果果 | 發自:思否編輯部

此文是翻譯,原文在這裏:A Set of Severe Flaws Affect Popular DNSMasq DNS Forwarder