事件概述
xz
是一種幾乎存在于所有Linux
發(fā)行版中的通用數(shù)據(jù)壓縮格式。從5.6.0版本開始,在xz
的上游tarball
包中被發(fā)現(xiàn)了惡意代碼,通過一系列復(fù)雜的混淆手段,liblzma
的構(gòu)建過程從偽裝成測(cè)試文件的源代碼中提取出預(yù)構(gòu)建的目標(biāo)文件,然后用它來修改liblzma
代碼中的特定函數(shù)。這導(dǎo)致生成了一個(gè)被修改過的liblzma
庫,任何鏈接此庫的軟件都可能使用它,從而攔截并修改與此庫的數(shù)據(jù)交互。
3月29日,微軟PostgreSQL
開發(fā)人員Andres Freund
在調(diào)試SSH
性能問題時(shí),在開源安全郵件列表中發(fā)帖稱,他在XZ
軟件包中發(fā)現(xiàn)了一個(gè)涉及混淆惡意代碼的供應(yīng)鏈攻擊。據(jù)Freun
d和RedHat
稱,Git
版XZ
中沒有惡意代碼,只有完整下載包中存在。但是這個(gè)代碼的提交人兩年前就加入了項(xiàng)目維護(hù),暫時(shí)不能確定之前的版本有沒有問題。
xz 5.6.0
和5.6.1
版本庫中存在的惡意注入只包含在tarball
下載包中。Git
發(fā)行版中缺少觸發(fā)惡意代碼構(gòu)建的M4
宏。注入期間構(gòu)建時(shí)使用的第二階段工件存在于Git
存儲(chǔ)庫中,以防存在惡意的M4
宏。如果不合并到構(gòu)建中,第二階段文件是無害的。在發(fā)現(xiàn)者的演示中,發(fā)現(xiàn)它干擾了OpenSSH
守護(hù)進(jìn)程。雖然OpenSSH
沒有直接鏈接到liblzma
庫,但它以一種使其暴露于惡意軟件的方式與systemd
通信,而systemd
鏈接到了liblzma
。惡意構(gòu)建會(huì)通過systemd
干擾sshd
的認(rèn)證。在一定的情況下,這種干擾有可能使惡意行為體破壞ssh
認(rèn)證,并遠(yuǎn)程未經(jīng)授權(quán)訪問整個(gè)系統(tǒng)。
截至日前(3月30日),暫未觀察到利用此后門代碼的行為。
影響的系統(tǒng)范圍
xz
和liblzma 5.6.0~5.6.1
?版本,可能包括的發(fā)行版 / 包管理系統(tǒng)有:
-
Fedora 41 / Fedora Rawhide
-
Debian Sid
-
Alpine Edge
-
x64 架構(gòu)的 homebrew
-
滾動(dòng)更新的發(fā)行版,包括 Arch Linux / OpenSUSE Tumbleweed
如果你的系統(tǒng)使用systemd
?啟動(dòng)?OpenSSH
?服務(wù),你的?SSH
?認(rèn)證過程可能被攻擊。非x86-64
?架構(gòu)的系統(tǒng)不受影響。
if ! (echo "$build" | grep -Eq "^x86_64" > /dev/null 2>&1) && (echo "$build" | grep -Eq "linux-gnu$" > /dev/null 2>&1);then
你可以在命令行輸入xz --version
來檢查xz
?版本,如果輸出為5.6.0
或5.6.1
?,說明你的xz-utils
已被植入后門。
$ xz --version
xz (XZ Utils) 5.6.1
liblzma 5.6.1
目前跡象表明,后門作者有選擇性的針對(duì)linux
?發(fā)行版下手。但這個(gè)liblzma
?可不只Linux
上用。比如目前流行的iOS
越獄環(huán)境,大部分tweak
?包還是以.deb
?格式發(fā)行,比較新的版本就用到了lzma
?作為壓縮。除此之外,近期有在?macOS
上使用brew
?安裝過xz
?這個(gè)包也受影響,暫時(shí)不能證明有惡意行為:
【----幫助網(wǎng)安學(xué)習(xí),以下所有學(xué)習(xí)資料免費(fèi)領(lǐng)!加vx:dctintin,備注 “博客園” 獲??!】
?、?網(wǎng)安學(xué)習(xí)成長路徑思維導(dǎo)圖
?、?60+網(wǎng)安經(jīng)典常用工具包
?、?100+SRC漏洞分析報(bào)告
④ 150+網(wǎng)安攻防實(shí)戰(zhàn)技術(shù)電子書
?、?最權(quán)威CISSP 認(rèn)證考試指南+題庫
?、?超1800頁CTF實(shí)戰(zhàn)技巧手冊(cè)
?、?最新網(wǎng)安大廠面試題合集(含答案)
?、?APP客戶端安全檢測(cè)指南(安卓+IOS)
過程精彩如諜戰(zhàn)片
這可能是最大膽的信息安全事件之一?!白畲竽憽北砻鬟@起事件在手法、規(guī)模、影響等方面都超出了我們以往對(duì)于攻擊的認(rèn)知,可能是一個(gè)全新的安全威脅模型。
"最大膽"一詞還隱含著對(duì)攻擊者心理和技術(shù)實(shí)力的一種評(píng)價(jià)。做出如此"大膽"之舉的,肯定是心理素質(zhì)極強(qiáng)、技術(shù)水平極高、準(zhǔn)備極其縝密的黑客團(tuán)伙,絕非一般的腳本小子可以企及。
1、一個(gè)不知名團(tuán)伙注意到OpenSSH
依賴一個(gè)名為liblzma(xz)
的小眾開源壓縮庫。
2、他們虛構(gòu)了一個(gè)名為"Jia Tan"的開發(fā)者身份,從2021年10月開始為xz
項(xiàng)目積極做貢獻(xiàn),逐漸獲得信任,并最終接管了維護(hù)工作。
3、2024年2月,"Jia"在構(gòu)建腳本中引入了一個(gè)復(fù)雜隱蔽的后門,該后門似乎針對(duì)OpenSSH
的身份驗(yàn)證前加密功能,可能添加了"主密鑰"讓攻擊者隨意訪問受影響服務(wù)器。
4、 "Jia"聯(lián)系Linux
發(fā)行版維護(hù)者,試圖讓帶后門的xz
庫被打包分發(fā)給用戶,直到微軟員工Andres Freund
因調(diào)查SSH
延遲問題發(fā)現(xiàn)了此事。
這可能是一次有外國政府支持的職業(yè)行動(dòng),而非業(yè)余愛好者所為。更根本的是,xz
后門不是一個(gè)技術(shù)問題,可能也不能單靠技術(shù)來解決。歸根結(jié)底,這是一個(gè)反情報(bào)挑戰(zhàn)——完全屬于政府和少數(shù)擁有生態(tài)系統(tǒng)范圍監(jiān)控能力的商業(yè)實(shí)體的能力范疇。這尤其包括谷歌和微軟。事實(shí)上,這里有一個(gè)有趣的想法:也許他們已經(jīng)知道了很長一段時(shí)間。我們能分辨出這是為了掩蓋"手段和來源"而精心設(shè)計(jì)的披露,還是偶然發(fā)現(xiàn)的嗎?
檢測(cè)和解決方法
解決方法:
-
降級(jí)到5.6.0以下版本
-
更新到官方最新版5.6.4
檢測(cè)腳本:
#! /bin/bash
?
set -eu
?
# find path to liblzma used by sshd
path="$(ldd $(which sshd) | grep liblzma | grep -o '/[^ ]*')"
?
# does it even exist?
if [ "$path" == "" ]
then
echo probably not vulnerable
exit
fi
?
# check for function signature
if hexdump -ve '1/1 "%.2x"' "$path" | grep -q f30f1efa554889f54c89ce5389fb81e7000000804883ec28488954241848894c2410
then
echo probably vulnerable
else
echo probably not vulnerable
fi
更多網(wǎng)安技能的在線實(shí)操練習(xí),請(qǐng)點(diǎn)擊這里>>文章來源:http://www.zghlxwxcb.cn/news/detail-844380.html
??文章來源地址http://www.zghlxwxcb.cn/news/detail-844380.html
到了這里,關(guān)于liblzma/xz被植入后門,過程堪比諜戰(zhàn)片!的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!