一個 732 位元組的 Python 腳本即可在 2017 年以來發布的所有主流 Linux 發行版上獲得 root 權限,使數百萬台伺服器和雲端工作負載暴露於一個極易利用的權限提升漏洞之下。
返回
一個 732 位元組的 Python 腳本即可在 2017 年以來發布的所有主流 Linux 發行版上獲得 root 權限,使數百萬台伺服器和雲端工作負載暴露於一個極易利用的權限提升漏洞之下。

Linux 核心中一個名為「Copy Fail」的高危漏洞允許任何本地使用者透過一個 732 位元組的 Python 腳本獲得完整的 root 權限。該漏洞影響了自 2017 年以來發布的幾乎所有主流發行版,包括 Red Hat、Ubuntu 和 SUSE。此漏洞被追蹤為 CVE-2026-31431,CVSS 評分高達 7.8,影響了大量雲端基礎設施,包括數百萬個 Kubernetes 集群和共享託管環境。
網絡安全公司 Xint Code 在 X 平台上的一篇文章中表示:「這是一個極易利用的邏輯錯誤。」 並指出相同的可攜式小型 Python 腳本無需修改即可在所有測試平台上運行。美國網路安全和設施安全局 (CISA) 已於 5 月 1 日將該漏洞添加到其「已知已利用漏洞」目錄中,並警告稱其對聯邦機構構成了「重大風險」。
該漏洞源於 2017 年核心優化中引入的一個邏輯錯誤。透過鏈接標準的系統調用,攻擊者可以對核心的頁快取(RAM 中系統保留檔案臨時副本以實現快速訪問的區域)執行受控的 4 位元組寫入。這使得特權程式(如 /usr/bin/su)的記憶體版本在不更改磁碟檔案的情況下被篡改,從而使入侵行為對大多數檔案完整性監控工具不可見。
該漏洞利用的可靠性和簡便性使其對多租戶環境構成了關鍵威脅。微軟 Defender 的研究人員指出,它具有促進容器逃逸和橫向移動的潛力,因為在單個容器中獲得立足點的攻擊者可以破壞整個主機節點。此類攻擊需要初始的本地訪問矢量,但一旦實現,提升至 root 權限是確定性的。
### 九年前的核心漏洞如何實現容器逃逸
CVE-2026-31431 的核心在於核心的加密子系統,特別是 algif_aead 模組。2017 年的一項旨在透過重用記憶體進行就地加密操作來提高性能的更改,未能考慮到特定的錯誤處理路徑。Theori 的研究人員在 3 月 23 日向 Linux 核心團隊私下披露了該漏洞,他們發現這一疏忽可被濫用於向任何可讀檔案的頁快取中寫入四個位元組的任意數據。
由於單台主機上的容器共享同一個核心,它們也共享同一個頁快取。因此,一個容器中的非特權程序可以使用 Copy Fail 漏洞修改主機或其他容器使用的敏感二進位檔案的記憶體表示。當該二進位檔案下次執行時,它將帶著攻擊者的修改運行,從而授予 root 權限並有效打破所有容器隔離邊界。這使得任何對容器的初始攻破(如透過易受攻擊的 Web 應用程式)都有可能演變為全系統淪陷。
### 補丁發布後的緩解措施
Linux 核心安全團隊於 4 月 1 日向主線分支提交了一個補丁,回滾了 2017 年那個有缺陷的優化。雖然完全修復的核心正在推廣中,但許多發行版使用較舊的長期支持 (LTS) 核心,必須進行修復程式的回移植,這一過程需要時間。為此,主要發行商已發布了緊急緩解措施。
對於 Ubuntu 及其衍生版本,kmod 軟體包的更新阻止了有漏洞的 algif_aead 模組被載入。管理員可以透過運行 sudo apt update && sudo apt upgrade 並重啟來應用此修復。對於無法立即更新的系統,可以透過在 /etc/modprobe.d/ 的檔案中添加 install algif_aead /bin/false 來手動禁用該模組。Red Hat 指出,此緩解措施可能會對需要核心加密功能的任務產生細微的效能影響,但能完全防止漏洞被利用。
本文僅供參考,不構成投資建議。