呢個漏洞係一個喺兩個Kernel Helper Function:xfs_reflink_fill_cow_hole 同 xfs_reflink_fill_delalloc 入面嘅 Race Condition。當呢啲Function循環XFS Inode Lock(ILOCK)嚟獲取Transaction嘅時候,Data Fork同CoW Fork嘅Mapping都會變得太舊。雖然CoW Fork Mapping會用xfs_find_trim_cow_extent嚟更新,但 Data Fork Mapping係唔會更新 嘅,然後就用返呢個舊Mapping嚟做下一次寫入操作。呢個疏忽令到同時進行嘅寫入可以繞過Copy-on-Write程序,直接修改攻擊者本應無權寫入嘅共享Data Blocks。
一個擁有本地普通帳戶嘅攻擊者可以利用呢個漏洞 覆蓋任何佢哋可以讀取嘅檔案,包括受保護嘅系統檔案好似/etc/passwd、/etc/shadow或SSH authorized_keys。就算系統行緊SELinux Enforcing模式都照樣可以攻擊。最紧要嘅係,呢啲磁碟修改 會喺系統重新開機之後依然存在。
呢個漏洞係喺 Linux Kernel Version 4.11(2017年2月)由Commit 3c68d44a2b49 引入,之後嘅每個Mainline同Stable Kernel都有呢個問題。受影響嘅XFS檔案系統必須啟用 reflink 功能,而呢個功能喺2019年已經係mkfs.xfs嘅預設選項,所以大多數現代XFS Volume都受影響。
根據Qualys同CERT-EU,以下發行版已直接確認受影響:
其他使用受影響Kernel範圍嘅發行版都受影響,包括Debian、Arch Linux、Rocky Linux、AlmaLinux同Embedded Linux Builds。
即時更新Kernel Patch係唯一可靠嘅修復方法。 冇任何有用嘅Workaround — 呢個漏洞唔需要非預設配置,SELinux擋唔到,攻擊期間亦唔會產生Kernel Log輸出。唯一嘅部分緩解措施係喺受影響系統完成Patch之前,限制Direct-I/O寫入存取XFS檔案系統。
上游Kernel Patch已經喺 2026年7月16日 合併(Commit 2f4acd0:"xfs: resample the data fork mapping after cycling ILOCK")。呢個Fix會喺Sequence Counter喺ILOCK Cycle期間改變嘅時候重新查詢Data Fork Mapping,確保唔會用太舊嘅Mapping嚟做下一次寫入。
使用受影響Linux系統嘅機構應該立即套用供應商安全更新,並重新開機確保已使用修復嘅Kernel。由於呢個漏洞影響嘅系統數量龐大,而且無需特殊權限即可可靠利用,對任何Multi-Tenant或共享用戶嘅Linux環境嚟講都係一個重大風險。