Windows DNS服務器曝"蠕蟲級"漏洞,已存在長達17年
漏洞介紹
SigRed漏洞的高危害性在于其是可蠕蟲的,也就是可以自傳播的,無需用戶交互就能傳播到易受攻擊的設備上,允許未經身份驗證的遠程攻擊者獲得針對目標服務器的域管理員特權,并完全控制組織的IT基礎架構。
漏洞運行機制
攻擊者可以通過將惡意DNS查詢發送到Windows DNS服務器并實現任意代碼執行來利用SigRed漏洞,從而使黑客能夠攔截和操縱用戶的電子郵件和網絡流量,使服務不可用,收獲用戶的電子郵件。
當DNS服務器無法解析給定域名(例如www.google.com)的IP地址時,查詢會被轉發到權威DNS服務器(NS),也就是轉發查詢。
為了利用這個查詢邏輯,SigRed首先需要配置一個域的(“ deadbeef.fun”)NS資源記錄,用來指向惡意名稱服務器(“ns1.41414141.club”),然后查詢目標DNS服務器的域,以便從名稱服務器獲得與域或其子域相關的所有后續查詢的解析響應。
這些設置完成后,攻擊者只要發送一個大小超過64KB的SIG記錄,就能導致在分配的小緩沖區上引發大約64KB的受控堆緩沖區溢出,觸發惡意 DNS 查詢,然后在分析轉發查詢的傳入響應的函數中觸發整數溢出漏洞(“dns.exe!sigwirelead“)。
換句話說,該漏洞針對的是負責為資源記錄分配內存的函數,一旦生成大于65535的字節數,就會導致整數溢出,分配變小。不過,一條DNS消息的UDP限制為512字節(如果服務器支持擴展機制,則限制為4096字節),而TCP 限制為65535字節,因此,僅帶有長簽名的SIG響應不足以觸發此漏洞。但攻擊者可以巧妙地利用DNS響應中的DNS名稱壓縮功能,從而利用上述操作將緩沖區大小增加,進而依舊達到緩沖區溢出的目的。
此外,SigRed還能在特定的一些情況下通過瀏覽器遠程觸發,例如基于Internet Explorer和非Chromium的Microsoft Edge瀏覽器,攻擊者可以利用Windows DNS服務器對連接重用和查詢管道功能的支持,在訪問其控制下的網站時,將HTTP請求負載內的DNS查詢“偷偷轉發”到目標DNS服務器。甚至,還可以實現write What where功能,進一步利用漏洞泄漏內存地址,從而讓對手劫持執行流并使其執行意外的指令。
令人驚訝的是,DNS客戶端(“dnsapi.dll)不易受同一個bug的影響,這使得研究人員懷疑“微軟為DNS服務器和DNS客戶端設置了兩個完全不同的代碼基,并且沒有在它們之間同步漏洞補丁。”
緩解措施
Windows DNS服務器作為核心網絡組件,一旦DNS服務器泄露是非常嚴重的安全問題,而在大多數情況下,它使攻擊者離破壞整個組織僅一寸之遙,企業勢必要引起重視。雖然微軟表示目前還沒有證據表明該漏洞已經被利用,但建議用戶立即安裝安全補丁:https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-1350
此外,用戶也可以DNS消息的最大長度(通過TCP)設置為“ 0xFF00”,以消除緩沖區溢出的可能。
到此這篇關于Windows DNS服務器曝"蠕蟲級"漏洞,已存在長達17年的文章就介紹到這了,更多相關Windows DNS服務器曝漏洞內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!
相關文章:
1. windows2008 server子域加入父域時提示錯誤 域已經存在2. windows 時間服務器配置方法詳解3. Windows下ftp服務器實現匿名訪問的配置方法4. windows2003下ftp服務器配置教程5. Windows server 2016服務器基本設置6. Windows10安裝Apache2.4的方法步驟7. 最新Windows Server 2012 R2 安裝IIS的詳細步驟8. Windows Server 2019 DNS服務器配置方法(入門篇)9. windows server2008 開啟端口的實現方法10. Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL環境搭建教程