兩週內第三個重大Linux核心漏洞被發現——得益於AI
繼Copy Fail和Dirty Frag之後,又一個Linux核心漏洞Fragnesia出現,可讓非授權使用者獲得root許可權。該漏洞由AI安全公司Zellic使用其AI代理軟體審計工具V12發現,利用Linux XFRM ESP-in-TCP子系統的邏輯錯誤,無需競態條件即可將任意位元組寫入只讀檔案的核心頁面快取,導致本地許可權提升和容器逃逸。已存在概念驗證利用程式碼,主流發行版均受影響。目前上游補丁已可用但尚未分發,臨時緩解措施會停用IPsec或使用者名稱空間。
根據Linus定律,“只要有足夠多的眼球,所有bug都是淺顯的”,這曾是開源軟體的基石。然而,隨著AI漏洞發現工具(如Claude Mythos和OpenAI Daybreak)的出現,這些“眼球”背後大部分是AI引擎,它們在發現安全問題上比人類快得多。因此,最新的嚴重Linux核心漏洞Fragnesia應運而生,這是兩週內第三個嚴重的本地root漏洞。
Fragnesia緊隨Copy Fail和Dirty Frag之後,是一種頁面快取損壞漏洞,可使非特權使用者在受影響系統上獲得完全的root控制權。據AlmaLinux稱,Fragnesia可立即在所有主要發行版上獲得root許可權。這意味著幾乎所有Linux發行版都可能成為目標並被成功攻擊。
該漏洞由AI安全公司Zellic披露,William Bowling和其他研究人員使用公司的AI代理軟體審計工具V12發現。它透過濫用Linux XFRM(“transform”的縮寫)ESP-in-TCP子系統中的邏輯錯誤,將任意位元組寫入只讀檔案的核心頁面快取,且無需任何競態條件。這為本地許可權提升和在多租戶環境中潛在的容器逃逸開啟了大門。與經典的競態條件利用不同,此類漏洞允許攻擊者精確破壞檔案支援的頁面,無需時間技巧,使攻擊更可靠,並在概念驗證程式碼可用時更容易武器化。
目前已有概念驗證利用程式碼。它構建了一個256條目查詢表,將所有可能的金鑰流位元組對映到相應的nonce。攻擊然後複製惡意負載,將頁面快取中switch user命令的前192位元組覆蓋為一個小的ELF存根,該存根呼叫setresuid並啟動shell。這意味著本地使用者可獲得超級使用者(root)許可權。Red Hat將其通用漏洞評分系統(CVSS)評分定為7.8,屬於高階別安全漏洞。
更糟糕的是,雖然Fragnesia在技術上是本地許可權提升漏洞,但在現代雲架構中,其影響會顯著放大,因為這類架構在共享Linux核心上執行大量不受信任的容器。如果攻擊者能在容器或受限使用者賬戶中執行程式碼,但仍可建立名稱空間和網路棧,就可能逃逸到宿主機的完整root許可權,並進一步攻擊其他使用者的虛擬機器或容器。
核心開發者和發行版維護者正在努力加固ESP-in-TCP程式碼路徑,提議的修復方案側重於消除共享檔案支援頁面上的就地轉換,並加強片段處理。目前已有上游補丁可用,但截至5月13日尚未在任何發行版中釋出。在此期間,可以透過以root身份執行以下命令來緩解:
rmmod esp4 esp6 rxrpc
printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/fragnesia.conf
但這樣做會停用IPsec,導致Linux虛擬專用網路(VPN)無法工作。或者,根據Red Hat的建議,可以執行以下命令:
echo "user.max_user_namespaces=0" > /etc/sysctl.d/dirtyfrag.conf
sysctl --system
但這會停用非特權使用者名稱空間,可能影響rootless容器、沙盒瀏覽器和Flatpak。
或許最好的做法是等待發行版提供補丁。大多數主要發行版已在測試補丁,預計5月14日左右就會有修補後的Linux核心。屆時應立即更新系統。
為什麼會出現這種情況?Red Hat技術長Chris Wright早些時候與我討論了這個問題,歸根結底是我們的AI故障檢測器在發現真實bug方面比幾周前好得多。這意味著:在未來幾個月,我們可能會看到更多此類安全漏洞被披露;同時,我們需要更快地修復出現的bug。這不僅是Linux的問題,所有開源軟體都面臨挑戰,而且隨著AI在逆向工程二進位制程式碼方面越來越好,Windows和其他專有軟體的開發者也需要提升修復技能。