XZ實用程序後門
2024年3月29日,軟件開發者Andres Freund報告稱,liblzma庫在2024年2月發布的5.6.0和5.6.1版本中,包含的Linux實用程序xz含有一個惡意引入的後門[1]。
CVE標識符 | CVE-2024-3094 |
---|---|
發現日期 | 2024年3月29日 |
發現者 | Andres Freund |
受影響軟件 | xz / liblzma 庫 |
網站 | tukaani |
雖然大多數Linux發行版都安裝有xz,但後門僅針對基於Debian和RPM的x86-64架構系統[來源請求]。在發現時,後門版本尚未被廣泛部署[2]。
如果擁有特定的Ed448私鑰,攻擊者能夠使用此後門在受感染的Linux系統上執行遠程代碼。CVSS評分為10.0分,為最高分[3][4][5]。
背景
編輯微軟員工、PostgreSQL開發人員Andres Freund在對Debian Sid進行性能回歸測試時發現了該後門[6]。Freund注意到SSH連接產生了超乎尋常的高CPU使用率,並且使內存調試工具Valgrind報錯[7]。Freund將他的發現報告給了Openwall Project開源安全郵件列表[8],引起了各大軟件供應商的注意[7]。有證據表明,攻擊者將單次意圖拆解進多個階段[9],盡力混淆攻擊代碼[10][11]。
一旦惡意版本被整合進操作系統,它就會藉助systemd庫篡改OpenSSH SSH服務器,使攻擊者竊得等同於管理員的訪問權限[9][7]。據Red Hat分析,該後門可以「使惡意行為者能夠攻破sshd身份驗證,並獲得對整個系統的遠程未經授權的訪問」[12]。
隨後的調查發現,在XZ實用程序項目中插入後門是一位暱稱JiaT75、名為「Jia Tan」的用戶在大約三年的時間內,獲取該項目信任的結果。在操縱明顯是馬甲的帳號施加壓力後,創始人和首席維護者向「Jia Tan」移交了項目的控制權,作為聯合維護者的「Jia Tan」簽名發布了5.6.0版本引入後門,而5.6.1版本修復了操作系統軟件測試期間可能出現的一些異常行為[7]。疑似傀儡帳號包括「Jigar Kumar」、「krygorin4545」和「misoeater91」。有人懷疑「Jia Tan」這個名字以及所謂的代碼作者「Hans Jensen」(針對版本5.6.0和5.6.1)只是該活動參與者編造的假名。除了在該活動的短短幾年外,兩個帳號在軟件開發領域都沒有可見的公開活動[13]。該後門因其複雜程度,及犯罪者在努力獲得信任地位的同時展現的長期高水平行動安全而引人注目。美國安全研究員戴夫·艾特爾(Dave Aitel)認為,該攻擊符合APT29的攻擊模式。APT29是一個高級長期威脅執行機構,據信為俄羅斯SVR工作[14]。
機制
編輯據了解,惡意代碼存在於XZ實用程序版本5.6.0和5.6.1中。漏洞將一直處於潛伏狀態,直到SSH服務器打上了特定的第三方補丁。在適當的情況下,惡意行為者可破壞sshd身份驗證過程,並遠程獲取對整個系統的未經授權的訪問[12]。該惡意機制由包含惡意二進制代碼的兩個測試壓縮文件組成。這些文件儲存在git存儲庫中,但除非提取並注入到程序中,否則將保持休眠狀態[5]。該代碼使用glibc IFUNC
機制,將OpenSSH中名為RSA_public_decrypt
的函數替換為惡意版本。OpenSSH通常不會加載liblzma,但多個Linux發行版常使用的第三方補丁會使其加載libsystemd,進而加載lzma[5]。GitHub上上傳的發行tar文件中包含了build-to-host.m4
的修改版本,該文件會釋放對liblzma
進行實際注入的腳本。這個修改過的m4文件並不存在於git存儲庫中,它只能從維護者獨立於git發布的tar文件中獲取[5]。似乎只有在x86-64 Linux系統、使用glibc和GCC、通過dpkg或rpm編譯軟件包時,該腳本才會執行注入[5]。
反應
編輯補救措施
編輯負責網絡安全和基礎設施的美國聯邦機構CISA發布了一份安全公告,建議受影響的設備回滾至未受感染的版本[15]。Red Hat、SUSE和Debian等Linux軟件供應商複製了CISA的公告,並撤回了受影響的軟件更新[12][16][17]。GitHub已禁用了xz存儲庫的鏡像[18]。
大眾回應
編輯計算機科學家Alex Stamos認為,「這可能是有史以來植入軟件產品中最廣泛、最有效的後門」,並指出,如果該後門未被發現,它將「為其創建者提供全球數億台運行 SSH 計算機的萬能鑰匙」[19]。此外,該事件還引發了一場關於讓關鍵網絡基礎設施依賴無償志願者的可行性的討論[20]。
參考
編輯- ^ Corbet, Jonathan. A backdoor in xz. LWN. [2024-04-02]. (原始內容存檔於2024-04-01).
- ^ CVE-2024-3094. National Vulnerability Database. NIST. [2024-04-02]. (原始內容存檔於2024-04-02).
- ^ Gatlan, Sergiu. Red Hat warns of backdoor in XZ tools used by most Linux distros. BleepingComputer. [2024-03-29]. (原始內容存檔於2024-03-29) (美國英語).
- ^ Akamai Security Intelligence Group. XZ Utils Backdoor – Everything You Need to Know, and What You Can Do. 2024-04-01 [2024-04-02]. (原始內容存檔於2024-04-02).
- ^ 5.0 5.1 5.2 5.3 5.4 James, Sam. xz-utils backdoor situation (CVE-2024-3094). GitHub. [2024-04-02]. (原始內容存檔於2024-04-02) (英語).
- ^ Zorz, Zeljka. Beware! Backdoor found in XZ utilities used by many Linux distros (CVE-2024-3094). Help Net Security. 2024-03-29 [2024-03-29]. (原始內容存檔於2024-03-29).
- ^ 7.0 7.1 7.2 7.3 Goodin, Dan. What we know about the xz Utils backdoor that almost infected the world. Ars Technica. 2024-04-01 [2024-04-01]. (原始內容存檔於2024-04-01) (美國英語).
- ^ oss-security - backdoor in upstream xz/liblzma leading to ssh server compromise. www.openwall.com. [2024-04-03]. (原始內容存檔於2024-04-01).
- ^ 9.0 9.1 Claburn, Thomas. Malicious backdoor spotted in Linux compression library xz. The Register. [2024-04-01]. (原始內容存檔於2024-04-01) (英語).
- ^ Larabel, Michael. XZ Struck By Malicious Code That Could Allow Unauthorized Remote System Access. Phoronix. [2024-03-29]. (原始內容存檔於2024-03-29) (英語).
- ^ O'Donnell-Welch, Lindsey. Red Hat, CISA Warn of XZ Utils Backdoor. Decipher. 2024-03-29 [2024-03-29]. (原始內容存檔於2024-03-29) (英語).
- ^ 12.0 12.1 12.2 Urgent security alert for Fedora 41 and Fedora Rawhide users. Red Hat. [2024-03-29]. (原始內容存檔於2024-03-29) (英語).
- ^ Watching xz unfold from afar. [2024-04-06]. (原始內容存檔於2024-04-06).
- ^ Greenberg, Andy. The Mystery of ‘Jia Tan,’ the XZ Backdoor Mastermind. Wired. [2024-04-03]. (原始內容存檔於2024-04-03).
- ^ Reported Supply Chain Compromise Affecting XZ Utils Data Compression Library, CVE-2024-3094. CISA. 2024-03-29 [2024-03-29]. (原始內容存檔於2024-03-29) (英語).
- ^ SUSE addresses supply chain attack against xz compression library. SUSE Communities. SUSE. [2024-03-29]. (原始內容存檔於2024-03-29).
- ^ Salvatore, Bonaccorso. [SECURITY] [DSA 5649-1] xz-utils security update. debian-security-announce (郵件列表). 2024-03-29 [2024-03-29]. (原始內容存檔於2024-03-29) (英語).
- ^ Larabel, Michael. GitHub Disables The XZ Repository Following Today's Malicious Disclosure. Phoronix. 2024-03-29 [2024-03-31]. (原始內容存檔於2024-03-31) (英語).
- ^ Roose, Kevin. Did One Guy Just Stop a Huge Cyberattack?. The New York Times. [2024-04-04]. (原始內容存檔於2024-04-04).
- ^ Khalid, Amrita. How one volunteer stopped a backdoor from exposing Linux systems worldwide. The Verge. 2024-04-02 [2024-04-04]. (原始內容存檔於2024-04-04) (英語).