一加內核開源,發現新增「和平精英」專項檢測
567 字
3 分鐘
一加內核開源,發現新增「和平精英」專項檢測
在一加開源的 Ace 6 Ultra(聯發科 MT6993)內核模組原始碼中,出現了一個新的檔案 oplus_kernel_security_check.c。
檔案頭部註釋說明,這是為了「和平精英」的需求進行的內核完整性檢測,作者署名為 cenjun,日期標註為 2025 年 12 月。
它的思路並不複雜:不攔截,只記錄。ko 檔案照常載入,程序不會被終止,也沒有任何封禁動作,異常只會記錄為事件,等待用戶空間讀取。
🔍 檢測了什麼
1. 系統調用表(Syscall Table)
- 開機時,為整個表記錄一份 SHA256 指紋,之後每小時重新計算一次。
- 如果與初始值不符,就會記錄一條帶有時間戳記的事件。
- 限制:只比較表中的函數指標,不檢查函數本體,因此 inline hook 是無法檢測到的。
2. ko 模組載入(Kernel Module Loading)
掛載在內核的 load_module 上,每次載入一個 ko 檔案,就會對其映像計算雜湊值,然後與名單進行比較:
- 不在名單中:記錄為未知模組
- 雜湊值不匹配:記錄為被篡改
- 雜湊值一致:放行
名單由系統程序 oplus_kohashpro 寫入,並且必須等待系統報告開機完成後,檢測才會啟動。每類事件最多保留 10 條,超出部分會丟棄最舊的。
⬆️ 對 root 用戶意味著什麼
判定方式只有一條:是否在名單上。即使是自己編譯、完全無害的 ko 檔案,在它看來也與被篡改的 ko 檔案沒有區別。
- KSU 的模組:不經過
load_module,不在檢測範圍內。 - KernelSU 本體:如果以 LKM 方式載入,它自己的
ko檔案會被記錄為未知模組(此項依程式碼邏輯推斷,尚未經實際設備驗證)。這也代表從理論上使用 GKI 或 Magisk 就能規避該項檢測。
不少 root 玩家表示,他們同樣反感作弊行為,也理解遊戲方維護公平環境的需要,只希望這類訊號僅作為參考,不要直接等同於作弊證據。
Note
以上內容均基於對公開原始碼的解讀。
原始碼來源:OnePlusOSS / android_kernel_modules_and_devicetree_oneplus_mt6993
支持與分享
如果這篇文章對你有幫助,歡迎分享給更多人或打賞支持!
一加內核開源,發現新增「和平精英」專項檢測
https://www.nkbe.top/posts/oplus-kernel-security-check/
