<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Linux內核 on KnightLi的博客</title>
        <link>https://knightli.com/zh-tw/tags/linux%E5%85%A7%E6%A0%B8/</link>
        <description>Recent content in Linux內核 on KnightLi的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-tw</language>
        <lastBuildDate>Thu, 21 May 2026 09:30:01 +0800</lastBuildDate><atom:link href="https://knightli.com/zh-tw/tags/linux%E5%85%A7%E6%A0%B8/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>AI 漏洞挖掘時代來了：Copy Fail、Dirty Frag、Fragnesia 與 ssh-keysign-pwn 為何集中爆發</title>
        <link>https://knightli.com/zh-tw/2026/05/21/linux-vulnerability-surge-ai-security-impact/</link>
        <pubDate>Thu, 21 May 2026 09:30:01 +0800</pubDate>
        
        <guid>https://knightli.com/zh-tw/2026/05/21/linux-vulnerability-surge-ai-security-impact/</guid>
        <description>&lt;p&gt;最近一段時間，Linux 內核相關漏洞密集出現：Copy Fail、Dirty Frag、Fragnesia、ssh-keysign-pwn 接連進入安全圈討論。它們有的可以本地提權，有的能洩露高敏感文件，有的影響容器宿主機和多租戶環境。很多人的第一反應是：Linux 怎麼突然變得這麼不安全？&lt;/p&gt;
&lt;p&gt;更準確的說法是：Linux 不是突然變差了，而是隱藏很久的問題被更快、更系統地挖了出來。&lt;/p&gt;
&lt;p&gt;這輪事件真正值得關注的，不只是某幾個 CVE 的修復，而是漏洞發現方式變了。過去需要少數頂級研究員花很久才能串起來的跨子系統邏輯漏洞，現在正在被 AI 輔助審計、自動化靜態分析、模糊測試和安全研究平台批量放大。漏洞沒有一夜之間多出來，但漏洞被發現、被復現、被擴散的速度變快了。&lt;/p&gt;
&lt;h2 id=&#34;這幾次漏洞有什麼共同點&#34;&gt;這幾次漏洞有什麼共同點
&lt;/h2&gt;&lt;p&gt;先把最近幾次事件放到一張表裡看。&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;漏洞&lt;/th&gt;
          &lt;th&gt;主要影響&lt;/th&gt;
          &lt;th&gt;關鍵特徵&lt;/th&gt;
          &lt;th&gt;風險重點&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Copy Fail / CVE-2026-31431&lt;/td&gt;
          &lt;td&gt;本地提權&lt;/td&gt;
          &lt;td&gt;Linux crypto / AF_ALG 相關路徑，涉及 page cache 寫入問題&lt;/td&gt;
          &lt;td&gt;普通使用者到 root，容器環境尤其敏感&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Dirty Frag / CVE-2026-43284、CVE-2026-43500&lt;/td&gt;
          &lt;td&gt;本地提權&lt;/td&gt;
          &lt;td&gt;XFRM/ESP、RxRPC 等路徑裡的 page cache 寫入原語&lt;/td&gt;
          &lt;td&gt;可鏈式利用，影響宿主機與容器邊界&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Fragnesia / CVE-2026-46300&lt;/td&gt;
          &lt;td&gt;本地提權&lt;/td&gt;
          &lt;td&gt;XFRM ESP-in-TCP 子系統邏輯問題&lt;/td&gt;
          &lt;td&gt;與 Dirty Frag 同屬相近攻擊面&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ssh-keysign-pwn / CVE-2026-46333&lt;/td&gt;
          &lt;td&gt;本地敏感資訊洩露與提權風險&lt;/td&gt;
          &lt;td&gt;Linux kernel &lt;code&gt;__ptrace_may_access()&lt;/code&gt; 邏輯缺陷&lt;/td&gt;
          &lt;td&gt;SSH 主機金鑰、&lt;code&gt;/etc/shadow&lt;/code&gt; 等敏感文件風險&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;它們不完全是同一個漏洞，但背後有幾個共同點：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;都不是傳統遠端 RCE，而是本地權限提升或本地敏感資訊洩露。&lt;/li&gt;
&lt;li&gt;都要求攻擊者先拿到某種本地執行能力，比如普通 shell、容器內命令執行、CI 任務權限或低權限帳戶。&lt;/li&gt;
&lt;li&gt;多數風險集中在內核邊界：page cache、加密/網路子系統、ptrace 權限判斷、容器共享內核。&lt;/li&gt;
&lt;li&gt;影響面會被現代雲原生環境放大，因為容器不是強安全邊界，宿主機內核仍然是共同底座。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以問題不只是「有沒有補丁」。更深的問題是：為什麼這些看起來很底層、很隱蔽、潛伏很久的問題，會在短時間內集中出現？&lt;/p&gt;
&lt;h2 id=&#34;第一層原因很多漏洞是歷史債不是剛寫進去&#34;&gt;第一層原因：很多漏洞是歷史債，不是剛寫進去
&lt;/h2&gt;&lt;p&gt;很多人看到漏洞披露時間，會誤以為漏洞是在最近版本裡新引入的。實際往往不是這樣。&lt;/p&gt;
&lt;p&gt;Copy Fail 這類問題的關鍵點在於：漏洞可以潛伏多年，直到有人把正確的呼叫路徑、權限邊界和記憶體語義串起來。公開資訊顯示，Copy Fail 與 2017 年前後的內核優化歷史有關。Dirty Frag、Fragnesia 也都指向網路、加密、page cache 這類深層交叉路徑。&lt;/p&gt;
&lt;p&gt;這類漏洞的可怕之處，不是某一行程式碼看起來明顯危險，而是多個前提剛好疊在一起：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;某個子系統為了效能做了原地處理。&lt;/li&gt;
&lt;li&gt;某個介面允許非特權使用者觸達內核功能。&lt;/li&gt;
&lt;li&gt;某個路徑把唯讀文件頁、page cache、網路包片段、加密緩衝區連接到一起。&lt;/li&gt;
&lt;li&gt;某個隱式約束沒有寫進型別系統、斷言或文件。&lt;/li&gt;
&lt;li&gt;最終形成「普通使用者能影響本不該影響的內核狀態」的路徑。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這不是普通程式碼審查最擅長發現的問題。審查者可能懂 crypto 子系統，另一個人懂網路子系統，第三個人懂記憶體管理，但漏洞剛好藏在它們的交界處。&lt;/p&gt;
&lt;h2 id=&#34;第二層原因linux-內核複雜度已經超出人工審查極限&#34;&gt;第二層原因：Linux 內核複雜度已經超出人工審查極限
&lt;/h2&gt;&lt;p&gt;Linux 的優勢是開放、通用、硬體支援廣、生態強。但這些優勢也帶來了代價。&lt;/p&gt;
&lt;p&gt;現代 Linux 內核不只是一個「小內核」。它包含排程、記憶體管理、檔案系統、網路協定棧、加密框架、驅動、虛擬化、容器相關機制、eBPF、LSM、安全模組、硬體平台適配等大量子系統。每個子系統都有自己的歷史、維護者、效能目標和相容性包袱。&lt;/p&gt;
&lt;p&gt;問題在於，漏洞常常不在單個模組裡，而在模組交叉點：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;splice()&lt;/code&gt; 把文件頁和管道連接起來。&lt;/li&gt;
&lt;li&gt;AF_ALG 把使用者態和內核 crypto API 連接起來。&lt;/li&gt;
&lt;li&gt;XFRM/ESP 把網路包、加密和記憶體頁連接起來。&lt;/li&gt;
&lt;li&gt;RxRPC、ESP-in-TCP 這類路徑讓網路協定棧更加複雜。&lt;/li&gt;
&lt;li&gt;容器讓低權限本地執行變成更常見的現實前提。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;從工程角度看，Linux 內核已經不是「足夠多的眼睛就能看完」的規模。開源確實讓問題更容易被修復和複核，但不等於每個角落都會被持續、安全地審查。真正能理解跨子系統漏洞的人很少，而這類漏洞偏偏最容易造成高影響。&lt;/p&gt;
&lt;h2 id=&#34;第三層原因效能優化經常把安全邊界壓得很薄&#34;&gt;第三層原因：效能優化經常把安全邊界壓得很薄
&lt;/h2&gt;&lt;p&gt;這輪漏洞裡反覆出現一個主題：為了效能減少拷貝、複用緩衝區、原地處理資料。&lt;/p&gt;
&lt;p&gt;這類優化非常合理。內核是基礎設施，效能差一點，雲廠商、資料庫、網路、儲存、容器平台都會感受到。一次少拷貝、一次更快的加解密、一次更少的記憶體分配，都可能在真實生產環境中帶來收益。&lt;/p&gt;
&lt;p&gt;但安全代價也很清楚：當「唯讀資料」「共享頁」「使用者可控輸入」「內核緩衝區」「加密輸出」之間的邊界變薄，只要某個子系統對輸入輸出契約理解不一致，就可能產生越權寫入或越權讀取。&lt;/p&gt;
&lt;p&gt;也就是說，效能優化本身不是錯，但它會製造更脆弱的組合：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;原地加解密減少了複製，但也更依賴輸入輸出緩衝區的正確隔離。&lt;/li&gt;
&lt;li&gt;page cache 提升了文件訪問效率，但也可能成為攻擊面。&lt;/li&gt;
&lt;li&gt;零拷貝提升吞吐，但也讓不同子系統共享同一批記憶體物件。&lt;/li&gt;
&lt;li&gt;容器提升部署效率，但共享內核意味著本地 LPE 的爆炸半徑更大。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;安全邊界不是靠「大家都記得別犯錯」維持的。邊界必須落實到型別、權限檢查、不可變約束、測試、fuzzing 和持續審計裡。否則，效能優化越多，隱式假設越多，漏洞遲早會被挖出來。&lt;/p&gt;
&lt;h2 id=&#34;第四層原因容器讓本地漏洞的價值變高了&#34;&gt;第四層原因：容器讓本地漏洞的價值變高了
&lt;/h2&gt;&lt;p&gt;過去說「本地提權」，很多人會覺得風險低於遠端漏洞，因為攻擊者已經需要本地帳戶。但雲原生時代改變了這個判斷。&lt;/p&gt;
&lt;p&gt;今天的「本地執行」來源太多了：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Web 應用被打出普通 shell。&lt;/li&gt;
&lt;li&gt;CI/CD 任務執行了不可信程式碼。&lt;/li&gt;
&lt;li&gt;容器裡跑了使用者上傳任務。&lt;/li&gt;
&lt;li&gt;多租戶平台允許使用者運行 notebook、外掛、腳本或構建任務。&lt;/li&gt;
&lt;li&gt;AI 程式碼執行環境、沙箱和線上評測平台越來越常見。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;一旦攻擊者在容器裡有執行能力，內核 LPE 就不再只是「本機小問題」。因為容器共享宿主機內核，內核漏洞可能直接跨過容器邊界，影響宿主機和其他租戶。&lt;/p&gt;
&lt;p&gt;這也是為什麼 Copy Fail、Dirty Frag 這類漏洞會被雲、安全、容器團隊高度關注。它們把「低權限本地程式碼執行」升級成「宿主機級風險」的可能性提高了。&lt;/p&gt;
&lt;h2 id=&#34;ai-的影響漏洞發現成本被壓低了&#34;&gt;AI 的影響：漏洞發現成本被壓低了
&lt;/h2&gt;&lt;p&gt;這輪事件裡最有時代感的部分，是 AI 輔助漏洞挖掘。&lt;/p&gt;
&lt;p&gt;Copy Fail 的公開資料提到，Theori 的 Xint Code 參與了漏洞發現過程。無論具體工具能力如何，這件事代表了一個趨勢：AI 不一定自己「憑空發明漏洞」，但它很擅長幫助研究員縮短搜尋路徑。&lt;/p&gt;
&lt;p&gt;AI 對漏洞研究的影響主要體現在幾件事上：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;更快掃過陌生程式碼&lt;br&gt;
內核子系統程式碼量很大，研究員不可能手工閱讀所有路徑。AI 可以幫助快速總結函式、呼叫鏈、輸入輸出關係和可疑模式。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;更容易發現跨模組連接&lt;br&gt;
很多漏洞藏在「使用者態入口 -&amp;gt; 網路棧 -&amp;gt; 加密框架 -&amp;gt; 記憶體頁 -&amp;gt; 文件快取」的鏈條裡。AI 可以輔助梳理這些跨文件、跨目錄、跨子系統的路徑。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;更容易生成審計假設&lt;br&gt;
比如「哪些路徑會把使用者可控資料寫入 page cache」「哪些 API 允許非特權使用者觸達 crypto 子系統」「哪些函式假設輸入輸出緩衝區不會重疊」。這些問題以前靠經驗慢慢想，現在可以被更系統地枚舉。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;更容易把漏洞變成可復現樣例&lt;br&gt;
AI 不能替代內核研究員的判斷，但可以幫助寫驗證程式碼、整理 PoC 思路、解釋錯誤路徑、生成測試用例。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;結果是：漏洞挖掘的單位成本下降了。&lt;/p&gt;
&lt;p&gt;過去，一個高品質內核漏洞可能需要很長時間才能被頂尖研究員發現。現在，懂系統的人加上 AI 工具，可以更快把可疑路徑篩出來。漏洞供給的天花板被抬高，集中爆發就更容易出現。&lt;/p&gt;
&lt;h2 id=&#34;但-ai-不是唯一原因&#34;&gt;但 AI 不是唯一原因
&lt;/h2&gt;&lt;p&gt;也要避免另一個極端：把所有問題都歸因於 AI。&lt;/p&gt;
&lt;p&gt;AI 只是加速器，不是漏洞根源。漏洞真正的根源仍然是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;歷史程式碼長期累積。&lt;/li&gt;
&lt;li&gt;效能優化中的隱式契約沒有被強制化。&lt;/li&gt;
&lt;li&gt;跨子系統複雜度太高。&lt;/li&gt;
&lt;li&gt;預設暴露的內核功能太多。&lt;/li&gt;
&lt;li&gt;安全測試沒有覆蓋所有組合路徑。&lt;/li&gt;
&lt;li&gt;容器、多租戶和自動化執行環境擴大了本地漏洞價值。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果沒有這些基礎條件，AI 再強也挖不出這麼多高影響漏洞。反過來，只要這些條件存在，AI 越成熟，漏洞就越容易被系統性挖出。&lt;/p&gt;
&lt;h2 id=&#34;對防守方意味著什麼&#34;&gt;對防守方意味著什麼
&lt;/h2&gt;&lt;p&gt;對維運、安全和平台團隊來說，這輪事件有幾個直接啟示。&lt;/p&gt;
&lt;p&gt;第一，不要再把「本地提權」當低優先級。&lt;br&gt;
只要你的環境裡有容器、CI、線上執行、外掛、notebook、多租戶任務，本地提權就可能變成宿主機風險。&lt;/p&gt;
&lt;p&gt;第二，內核補丁節奏要更快。&lt;br&gt;
關鍵宿主機、Kubernetes 節點、CI Runner、AI 沙箱、虛擬化宿主機，不應該長期停留在舊內核。內核更新、重啟窗口、live patch、灰度回滾都要有明確流程。&lt;/p&gt;
&lt;p&gt;第三，減少不必要的內核攻擊面。&lt;br&gt;
不需要的協定、模組、使用者命名空間、特殊 socket、除錯介面，要按業務需要收緊。預設開啟不等於預設應該暴露。&lt;/p&gt;
&lt;p&gt;第四，容器安全要假設內核可能被打穿。&lt;br&gt;
容器裡使用非 root、最小 capabilities、seccomp、AppArmor/SELinux、唯讀文件系統、隔離敏感掛載，仍然很重要。它們未必能擋住所有內核漏洞，但能減少前置條件和後續破壞。&lt;/p&gt;
&lt;p&gt;第五，監控要關注提權鏈條。&lt;br&gt;
不僅要看遠端入口，也要看異常進程、敏感文件讀取、內核模組載入、容器逃逸跡象、CI Runner 異常行為、&lt;code&gt;/etc/shadow&lt;/code&gt;、SSH host key 等高價值文件訪問。&lt;/p&gt;
&lt;h2 id=&#34;對開源社群意味著什麼&#34;&gt;對開源社群意味著什麼
&lt;/h2&gt;&lt;p&gt;對 Linux 社群和大型開源項目來說，AI 漏洞挖掘會帶來雙重壓力。&lt;/p&gt;
&lt;p&gt;一方面，AI 會幫防守方更快找到老問題。更多潛伏漏洞被公開修復，從長期看是好事。&lt;/p&gt;
&lt;p&gt;另一方面，AI 也會製造噪音。低品質自動報告、誤報、重複報告、沒有上下文的「AI 找 bug」會消耗維護者時間。真正的挑戰不是「是否使用 AI」，而是如何把 AI 輸出納入負責任的安全流程：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;報告必須有最小復現。&lt;/li&gt;
&lt;li&gt;必須明確影響範圍和威脅模型。&lt;/li&gt;
&lt;li&gt;必須區分理論問題、可觸發 bug、可利用漏洞。&lt;/li&gt;
&lt;li&gt;必須尊重 embargo、發行版協調和修復窗口。&lt;/li&gt;
&lt;li&gt;維護者需要更好的自動化測試、fuzzing、靜態分析和回歸驗證。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;AI 讓漏洞發現更快，也要求修復和協調機制更成熟。否則，安全研究的生產力提升會轉化成維護者的壓力和使用者的恐慌。&lt;/p&gt;
&lt;h2 id=&#34;結論不是神話破滅而是安全現實變了&#34;&gt;結論：不是神話破滅，而是安全現實變了
&lt;/h2&gt;&lt;p&gt;Linux 仍然是最透明、最可控、最能被修復和加固的主流作業系統基礎設施之一。問題不在於 Linux 突然「不安全」，而在於現代內核的複雜度、雲原生使用方式和 AI 輔助漏洞挖掘，正在改變漏洞暴露速度。&lt;/p&gt;
&lt;p&gt;以後類似事件很可能還會出現。不是因為每次都有新的災難，而是因為過去積累的複雜路徑正在被更高效率地搜尋。&lt;/p&gt;
&lt;p&gt;真正該改變的是我們的安全假設：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不能把「沒披露漏洞」當作「沒有漏洞」。&lt;/li&gt;
&lt;li&gt;不能把「本地提權」當作低風險。&lt;/li&gt;
&lt;li&gt;不能把「容器隔離」當作強安全邊界。&lt;/li&gt;
&lt;li&gt;不能只靠人工審查面對千萬行級別系統軟體。&lt;/li&gt;
&lt;li&gt;不能只等補丁，而要提前縮小攻擊面、加快補丁節奏、建立縱深防禦。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;AI 讓漏洞挖掘進入更高產能時代。對攻擊者是這樣，對防守者也一樣。區別在於，防守方能不能把這種能力變成更快的審計、更早的修復和更穩的基礎設施治理。&lt;/p&gt;
&lt;h2 id=&#34;參考資料&#34;&gt;參考資料
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.zhihu.com/question/28339369/answer/2039681587684586658&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;知乎討論：Linux 內核連續漏洞事件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/theori-io/copy-fail-CVE-2026-31431&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Theori：Copy Fail / CVE-2026-31431&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ubuntu.com/blog/copy-fail-vulnerability-fixes-available&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ubuntu：Copy Fail vulnerability fixes available&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.microsoft.com/en-us/security/blog/2026/05/01/cve-2026-31431-copy-fail-vulnerability-enables-linux-root-privilege-escalation/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Microsoft Security Blog：CVE-2026-31431 Copy Fail vulnerability&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://blog.qualys.com/misc/2026/05/20/cve-2026-46333-local-root-privilege-escalation-and-credential-disclosure-in-the-linux-kernel-ptrace-path&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Qualys：CVE-2026-46333 Linux kernel ptrace path advisory&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ubuntu.com/blog/ssh-keysign-pwn-linux-vulnerability-fixes-available&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ubuntu：CVE-2026-46333 mitigations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.helpnetsecurity.com/2026/05/08/dirty-frag-linux-vulnerability-cve-2026-43284-cve-2026-43500/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Help Net Security：Dirty Frag Linux vulnerability&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.techradar.com/pro/security/another-major-linux-security-issue-uncovered-new-fragnesia-flaw-allows-attackers-to-run-malicious-code-as-root&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;TechRadar：Fragnesia CVE-2026-46300 報導&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
