自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

XZ惡意代碼潛伏三年,差點引發(fā)核末日?后門投毒黑客身份成謎

人工智能 新聞
這個周末,開源軟件xz后門事件,直接引發(fā)了安全界地震!一段惡意代碼被悄悄植入了,險些波及各大Linux系統(tǒng)。好在,或許是因為攻擊者疏忽了,目前并未造成嚴重后果。但如果后門沒被及時發(fā)現(xiàn) ,結(jié)果將是災難性的……

整個周末,開源軟件xz被植入后門事件,引發(fā)了安全界的軒然大波。

研究人員驚恐地發(fā)現(xiàn),在包括Red Hat和Debian在內(nèi)的多個廣泛使用的Linux版本中,一款壓縮工具被悄悄植入了惡意代碼!

微軟的安全研究員Andres Freund首次報告了這件事。

他發(fā)現(xiàn),在這款名為xz Utils的工具的5.6.0和5.6.1版本中,都含有惡意代碼。

圖片

而且,這段惡意代碼極其復雜難解。

扒著扒著人們發(fā)現(xiàn),這段代碼是由一位名為Jia Tan的用戶(JiaT75),通過四次代碼變更(也即在GitHub上「提交」)的方式,植入到了Tukaani項目中。

這樣,攻擊者即使沒有有效賬號,也可以直接從SSHD訪問系統(tǒng)了。

(SSHD是一個關(guān)鍵的二進制文件,負責SSH連接的工作。)

圖片

目前,GitHub已經(jīng)禁用XZ Utils代碼庫,且還未收到漏洞被利用的報告

好在,這個后門已經(jīng)及時被發(fā)現(xiàn)了。目前GitHub已經(jīng)以違反服務條款為由,禁用了Tukaani項目維護的XZ Utils代碼庫。

然而可怕的是,如果這個后門的漏洞很巧妙,技術(shù)很高超,那么xz被廣泛引入各Linux發(fā)行版后,這些Linux系統(tǒng)就會輕易被入侵!

這件事情可能導致的可怕后果,讓安全社區(qū)對此掀起了經(jīng)久不息的討論。

一場災難被避免了

好在證據(jù)顯示,這些軟件包只存在于Fedora 41和Fedora Rawhide中,并不影響Red Hat Enterprise Linux (RHEL)、Debian Stable、Amazon Linux以及SUSE Linux Enterprise和Leap等主流Linux版本。

但Red Hat和Debian已經(jīng)報告稱,最近發(fā)布的測試版中的確使用了這些被植入后門的版本,特別是在Fedora Rawhide和Debian的測試、不穩(wěn)定及實驗版本中。

同樣,Arch Linux的一個穩(wěn)定版本也受到了影響,不過,該版本也并未應用于實際生產(chǎn)系統(tǒng)中。

另外還有一些讀者報告稱,macOS的HomeBrew包管理器中包含的多個應用,都依賴于被植入后門的5.6.1版本xz Utils。目前,HomeBrew已經(jīng)將該工具回滾至5.4.6版本。

安全公司Analygence的高級漏洞分析師Will Dormann表示,「這個問題實際上并沒有對現(xiàn)實世界造成影響」。

但這主要是因為惡意行為者疏忽了,導致問題被發(fā)現(xiàn)的時機很早。就如同上文所提,如果后門沒被及時發(fā)現(xiàn),后果將是災難性的。

Jia Tan是誰?

既然事情解決了,那么問題的焦點就集中在了——Jia Tan究竟是誰?

這位Jia Tan,是xz Utils項目的兩位主要開發(fā)者之一,對該項目貢獻良多。

Freund其報告中指出,「考慮到這幾周內(nèi)的活動情況,這位提交者要么是直接涉及,要么其系統(tǒng)遭受了嚴重的安全威脅?!?/span>

不幸的是,種種跡象表明,后一種可能性似乎并不大。

所以,這次xz被植入后門事件,很可能就是Jia Tan的主觀惡意行為。

上周四,有人冒用了這位開發(fā)者的名字,在Ubuntu的開發(fā)者社區(qū)中請求將含后門的5.6.1版本納入正式發(fā)布,理由是它修復了一個導致Valgrind工具出錯的問題。

還有人發(fā)現(xiàn),近幾周這位開發(fā)者也向他們提出了類似的請求,希望在Fedora 40的測試版本中使用這個帶有后門的工具版本。

「我們甚至還幫助他解決了Valgrind的問題(而現(xiàn)在看來,這個問題正是由他加入的后門引起的),」Ubuntu的維護人員說。

「他已經(jīng)在xz項目中工作了兩年,添加了各種各樣的測試文件,鑒于這種復雜的操作,我們對xz的早期版本也持懷疑態(tài)度,直到后來,它們被證明是安全的?!?/span>

后門技術(shù)分析

簡單來說,CVE-2024-3094引入的這個后門,是為了在受害者的OpenSSH服務器(SSHD)中注入惡意代碼,從而讓遠程攻擊者(持有特定私鑰)能夠通過SSH發(fā)送任意代碼,并在認證步驟之前執(zhí)行,進而有效控制受害者的整臺機器。

盡管具體的內(nèi)容仍在分析當中,但初步分析表明,它的設計相當復雜:

  • 后門代碼被注入到OpenSSH服務器(sshd進程),因為liblzma(含有惡意代碼)是某些OpenSSH版本的依賴項。
  • 后門劫持了RSA_public_decrypt函數(shù),這個函數(shù)原本用于驗證RSA簽名。
  • 惡意代碼會檢查RSA結(jié)構(gòu)中傳入的公共模數(shù)(「N」值),這個模數(shù)完全受到攻擊者控制。
  • 惡意代碼使用硬編碼的密鑰(采用ChaCha20對稱加密算法)對「N」值進行解密。
  • 解密后的數(shù)據(jù)通過Ed448橢圓曲線簽名算法進行有效性驗證。由于這是一種非對稱簽名算法,后門只包含了公鑰,這意味著只有攻擊者能夠為后門生成有效載荷。此外,這個簽名與主機的公鑰綁定,因此一個主機上的有效簽名不能在其他主機上使用。
  • 如果數(shù)據(jù)有效,該有效載荷將以shell命令的形式被執(zhí)行。
  • 如果數(shù)據(jù)無效(有效載荷格式不正確或簽名無效),則會透明地恢復到RSA_public_decrypt的原始實現(xiàn)。這意味著,除了攻擊者之外,是無法通過網(wǎng)絡發(fā)現(xiàn)易受攻擊的機器的。

「臥薪嘗膽」三年

這次最令人印象深刻的,是攻擊者超乎尋常的耐心和決心。

攻擊者花費了兩年多的時間,通過參與各種開源軟件項目并提交代碼,逐步建立起作為一個可信任維護者的形象,以此來避免被發(fā)現(xiàn)。

2021年,一個名為Jia Tan(GitHub用戶名:JiaT75)的用戶創(chuàng)建了GitHub賬戶,并開始為多個項目做出貢獻。

在那一年,Jia Tan共提交了546次代碼,其中對libarchive項目的一次提交尤其引起了人們的關(guān)注。

2022年2月6日,Jia Tan在XZ項目中做出了他的第一次正式提交,這次提交增加了對LZMA和LZMA2編碼器的參數(shù)驗證功能。

2023年6月27日至28日,Jia Tan對XZ Utils項目進行了一系列關(guān)鍵的更改,從而為后續(xù)的攻擊做好了準備。

特別是,項目中的一個文件crc64_fast.c,新增了對一種名為ifunc的技術(shù)的支持。

根據(jù)安全研究員Andres Freund的分析,引入的這種ifunc技術(shù)可能是潛在后門功能的一部分,顯示了攻擊者可能利用的一種手段。

此外,值得注意的是,這個重要更新是由項目的原始維護人Lasse Collin引入的,并且他特別提到了另一位貢獻者Hans Jansen對這一更新的貢獻。

2023年7月8日,JiaT75在oss-fuzz項目中提交了一個請求,該項目負責對XZ等多個開源軟件項目進行自動錯誤檢測。這個請求實際上關(guān)閉了一種特定的錯誤檢測方式,從而防止oss-fuzz發(fā)現(xiàn)XZ項目中潛藏的惡意代碼。

2024年2月15日,JiaT75通過修改XZ項目的配置文件,加入了一個規(guī)則來忽略特定的腳本文件build-to-host.m4。

很快,這個腳本就被包含在了項目的正式發(fā)布版本中——它會在構(gòu)建過程中執(zhí)行,并植入一段負責在受害者電腦上安裝后門的惡意代碼。

2024年2月23日,JiaT75在XZ項目的測試文件夾中加入了兩個含有隱藏后門的測試文件。

2024年2月24日,JiaT75發(fā)布了包含惡意腳本文件的新版本5.6.0,也就是說任何使用了這個版本及以后版本的XZ都存在安全風險。

2024年2月27日,這個帶有安全隱患的版本被Fedora采納。

2024年3月9日,JiaT75更新了后門程序,發(fā)布了版本5.6.1,F(xiàn)edora同樣更新了這個版本。

2024年3月29日,安全研究員Andres Freund在oss-security郵件列表上公布了他對XZ項目中發(fā)現(xiàn)的惡意行為的詳細分析。

還有更多受害者

雖然惡意代碼僅在XZ項目中被檢測到,但攻擊者賬戶的其他代碼貢獻目前也在調(diào)查中。

截至今日,一些項目已經(jīng)被發(fā)現(xiàn)添加了可疑代碼:

libarchive

2021年,JiaT75向libarchive代碼庫提交了一個名為「在使用bsdtar解壓時添加錯誤提示文本」的合并請求,乍看之下似乎沒什么問題。

但仔細一看,這個合并請求中的代碼把原本安全的函數(shù)safe_fprintf()換成了更危險的fprintf()函數(shù),這一改動可能會導致字符逃逸的安全漏洞。

oss-fuzz

2023年初,JiaT75把XZ項目在Google的oss-fuzz工具上注冊的主郵箱改為了他個人的Gmail郵箱。

這一行為似乎暗示,他們想要第一時間接收到XZ項目中發(fā)現(xiàn)的漏洞報告,以此來及時知曉自己的惡意操作被揭露的情況。

2023年末,他們提交了一個新的合并請求(Pull Request),目的是在XZ項目的fuzzer配置中禁用「間接函數(shù)支持(Indirect function support)」。

這一操作似乎可以防止被fuzzer探測到,從而為在XZ項目中植入的后門做好鋪墊。

責任編輯:張燕妮 來源: 新智元
相關(guān)推薦

2024-04-01 00:01:30

2025-03-20 08:20:00

惡意代碼黑客網(wǎng)絡安全

2024-05-31 13:18:44

2011-08-04 10:51:01

2013-11-08 10:42:09

代碼工具

2011-08-09 11:45:45

2014-02-11 09:15:33

2013-11-05 15:06:29

scdbg惡意代碼分析安全工具

2024-04-11 14:14:50

2014-10-29 14:43:05

2016-11-24 11:07:54

Andriod惡意代碼

2014-12-12 14:55:42

移動惡意代碼移動安全

2024-04-11 13:55:16

2011-08-09 11:51:37

2014-02-10 16:13:06

2017-03-27 15:46:14

2021-03-01 11:33:03

微軟惡意代碼惡意軟件

2018-11-27 16:35:19

黑客JavaScript代碼

2023-02-14 22:19:11

2009-08-29 08:09:31

點贊
收藏

51CTO技術(shù)棧公眾號