xz 是一個壓縮程式

xz 有漏洞影響 5.6.0 以上(含)的版本,以下沒事,目前 CentOS 8 預設是在 5.2.4

這漏洞有些故事很有趣 ↓

參考到這篇文章 > 預設安裝於每個Linux發行版中的Xz/liblzma被植入後門程序

重點引用樓層

1.攻擊者JiaT75 (Jia Tan) 於2021年註冊了GitHub 帳號,之後積極參與xz專案的維護,並逐漸獲取信任,獲得了直接commit 代碼的權利。

2.JiaT75 在最近幾個月的一次commit 中,悄悄加入了bad-3-corrupt lzma2.xz和good-large compressed.lzma 兩個看起來人畜無害的測試用二進制數據,然而在編譯腳本中,在特定條件下會從這兩個檔案中讀取內容對編譯結果進行修改,致使編譯結果和公開的原始碼不一致。

3.目前初步的研究顯示,注入的程式碼會使用glibc的IFUNC 去HookOpensSH的RSA public decrypt 函數,致使攻擊者可以透過建構特定的驗證資料繞過RSA 簽章驗證。 (具體細節還在分析中)

4.只要是同時使用了liblzma和OpenSsH的程式就會受到影響,最直接的目標就是sshd,使得攻擊者可以建構特定請求,繞過金鑰驗證遠端存取。

5.受影響的xz-utils 套件已經被併入Debian testing 中進行測試,攻擊者同時也在嘗試併入fedora 和ubuntu。

6.幸運的是,注入的程式碼似乎存在某種Bug,導致特定情況下sshd 的CPU佔用飆升。被一位安全研究人員注意到了,順藤摸瓜發現了這個陰謀並報告給oss-security,致使此事敗露。如果不是因為這個Bug,那麼這麼後門有不低的機率被併入主流發行版的stable 版本,恐怕會是一件前所未有的重大安全事件。

另外從一些細節看得出來攻擊者非常用心:

攻擊者搶在ubuntu beta freeze 的幾天前才嘗試讓新版本併入,以期望減少在測試期間被發現的時間。

xz-utils 計畫的原始維護者Lasse Colin(Larhzu),有著定期進行internetbreaks的習慣,而且最近正在進行,導致這些變動他並沒有review的機會,即使到現在也沒能聯繫上他本人。這也可能是攻擊者選定xz-utils 項目的原因之一。