作者:
unknown (ya)
2024-09-07 09:20:23目前 ROOT 方案大眾所知的大多是 Magisk
這篇文章介紹 Apatch 順便提一下 KernelSU
KernelSU 提供兩種補丁方式
GKI mode (Generic Kernel Image)
LKM mode (Loadable Kernel Module)
前者為替換 kernel image 達到載入 ROOT 權限
後者為植入 module 到 first stage 的 ramdisk
運作原理大概與 Magisk 稍微相似
# KernelSU 支援清單
android12 kernel 5.10.x
android13 kernel 5.10.x
android13 kernel 5.15.x
android14 kernel 5.15.x
android14 kernel 6.1.x
這部分就不著墨太多,有興趣請到 github 查看
https://github.com/tiann/KernelSU
開始進入正文,以下教學使用 Apatch 為範例
https://github.com/bmax121/APatch
Apatch 僅支援 ARM64 系統
Kernel 核心支援 3.18 - 6.1
示範手機 OnePlus Ace 3 (12R)
kernel-5.15.123-android13
https://i.imgur.com/8VnObhO.png
#1 安裝 Apatch manager
commit f6feb6a build (需登入github)
https://reurl.cc/kyypQ3
或是我提供的 mirror
https://www.mediafire.com/file/8qm202ebbc8ngy1
#2 Patch boot.img
https://imgur.com/a/kFVL6MG
#3 刷入 patched boot.img
這部分還要教學嗎 ╮(′~‵〞)╭
#4 輸入 master key 後取得 ROOT 權限
https://i.imgur.com/eXUyfN5.png
至此順利的話就完成 ROOT 部分
這邊稍微提一下 Play Integrity 的淵源
大約是 Android 5 ~ 7 時代引入了 SafetyNet 驗證
這時候還只是單純的驗證系統 properties
屬於基礎性的驗證,而且大多數 APP 不會驗證 SafetyNet
Android 8 之後強化了 bootloader
BL 解鎖後會讓 keymaster 拒絕硬體金鑰驗證
SafetyNet 也就過不了硬體層級的驗證
這部分可以騙過 SafetyNet 讓它以為手機是早期機型
不會強制採用硬體層級驗證,歷史的眼淚如下
https://github.com/Displax/safetynet-fix
好了這兩年 Google 開始放大招了 (╥﹏╥)
Play Integrity 只信任 TEE 環境提供的簽章驗證
並且將 Integrity API 導入到 APP 開發環境
讓開發者於上架 APP 時可以選擇不同等級的驗證
BL 解鎖後的手機只會擁有 Basic Integrity
https://imgur.com/a/FX2lGqt
中國開發者 5ec1cff 提供了一套 ROOT 模組
透過攔截 keystore 交互過程並插入自訂金鑰串
目前只支援 Android 11+
https://github.com/5ec1cff/TrickyStore
手機解鎖狀態將透過 PlayIntegrityFork 修復
https://github.com/osm0sis/PlayIntegrityFork
此篇教學僅基於 TrickyStore / PlayIntegrityFork
相互配合來達成 Strong Integrity
使用下方兩個 APP 進行測試
# chiteroman/KeyAttestation
https://reurl.cc/YqqDax
# Simple Play Integrity Checker
https://reurl.cc/myypOA
#1 安裝 TrickyStore 1.1.3 模組
https://reurl.cc/eyyp4x
#2 安裝 PlayIntegrityFork v10 模組
https://reurl.cc/Ree2lr
#3 進行一次重新開機後,模組頁面如下
https://i.imgur.com/UkSyMvl.png
#4 由於只需要修復系統 props 環境
採用 Scripts-only 模式再次安裝 PlayIntegrityFork
#4-1 移動至目錄 /data/adb/modules/playintegrityfix
並新增 scripts-only-mode 檔案
https://i.imgur.com/PoGxHnD.png
#4-2 重新安裝 PlayIntegrityFork 並重新開機
https://i.imgur.com/iZMihIc.png
https://i.imgur.com/ePlMglA.png
#5 TrickyStore 內建 AOSP keybox
無法完成硬體級別認證 (Key Attestation)
https://i.imgur.com/43MvOHE.png
#5-1 下載有效的 keybox.xml
https://www.mediafire.com/file/kp3ineqxuruungs
#5-2 移動 keybox.xml 至 /data/adb/tricky_store
https://i.imgur.com/JG4ytod.png
#5-3 再次驗證 Key Attestation
https://i.imgur.com/IBQ4B7j.png
#6 驗證 Play Integrity / SafetyNet
https://imgur.com/a/281HKyO
至此大功告成
如果有其他疑問歡迎一起討論
作者:
KyA 2024-09-07 10:42:00有試過這樣就可以正常使用Google錢包嗎?
google錢包只看play integrity有沒有達到device以上
作者:
KyA 2024-09-07 15:22:00應該不只 我現在Strong還是會出現
感謝大神分享詳盡攻略,請問上述的module在magisk 一樣適用嗎?
作者: snowcreeper (神隱者) 2024-09-07 15:53:00
推用心整理
google play現在有辦法偵測到magisk修補過的boot映像檔,所以用magisk是不可能達到strong的,頂多到device想要有root同時擁有strong認證,請改用kernelSU或apatch
作者:
KyA 2024-09-07 16:21:00意思是檢測工具當參考不準?
作者: jamt 2024-09-07 16:29:00
我裝了lsposed又從strong被打回basic...用chiteroman原版的PIF就可以strong
作者:
clse0190 (shadow)
2024-09-07 22:19:00keybox有版權問題,不能公開分享,會有問題。然後trickystore本身就會做bootloader spoof用到pifork的理由是因為你是oneplus 解鎖死TEE如果用的是KSU,除了pixel應該是不需要用pifork的小米系的用ksu不需要pif,只要trickystore就會正常如果真的要分享,最好是用2b0a這個被使用比較廣的然後有一個很重要的你忘了說 trickstore只支援framework沒有被改過的 xiaomieu之類的不能支援framework.jar有調過的很多,原生系統通常能用
to clse0190: 看來你不清楚pifork script only做了甚麼事情,也許在你的手機環境third-party rom 或 kernel自動避掉了解鎖相關 props/cmdline 才讓你覺得 trickystore 會處理 ro. properties至於我提供的 keybox 也是在tg群組拿過來用的使用人數不多也不容易被察覺 revoke 掉playintegrityfix 最新版的直接包入 2b0a keybox這個取得難度直接為零 甚麼時候被ban都不意外再者是xiaomi.eu 三方 rom 要怎麼魔改keystore impl 就是它們社群的事情了 祝各位 happy rooting
作者:
clse0190 (shadow)
2024-09-07 23:27:00pifork script only做了甚麼可以看CODE
https://reurl.cc/g663dRPIFORK其實在說明就寫過了,需要動的就兩個spoofProvider spoofProps 設成0就好除非完全不碰lsposed相關的東西,不然ZA 或是 shamiko你兩個總是要用到一個 把PIF相關的東西刪光對某些設備就是不會通過然後2b0a就是因為最常用 到現在都沒出事 當然是優先用keybox現在常見的也就那26個 等2b0a死了再換新的 比較能持續久一點 KEYBOX始終是消耗品 而且比起PIF還要少ts不處理ro沒錯 但是小米系的設備在hyperos下KSU+TS就能正常通過strong
會需要用到 zygisk+pifork+custom.pif.json 的情況就是原生手機的指紋不在google認證設備裡面對 OnePlus Ace 3(12R) 國際版的系統來說就只是很單純的修復 BL 解鎖後的 ro. props 再模擬 keybox 而已所以 pifork 模組只需要 script only mode當然各家手機有不同的玩法 怎麼方便怎麼來囉
沒安裝 trickystore 模組,或是ts模組無效
不知什麼原因,只要A11的rom root後就不行,但刷A12的rom就不會出現這個問題只要用magisk做root後,用key這個apk檢測就會出現這問題,裝了tricky store也是一樣
作者:
clse0190 (shadow)
2024-09-08 00:47:00TS只支援12以上 11以下的支援是"開發中"
怪的是出現這個畫面時是還未安裝TC單純用key.apk去看就有這問題我有另一隻其他型號手機也是A11卻沒這問題
作者:
Arbin (路人_Lv菜逼八)
2024-09-08 10:05:00比較好奇keybox這種東西可以用自己手機的嗎?不然用別人的都有遲早被註銷的問題還是用自己的也會因為Google偵測手段強化被註銷
作者:
KyA 2024-09-08 15:30:00我把Google錢包問題解決了 果然不只看Device而已
作者:
ec97 (Evan)
2024-09-10 13:01:00手邊10幾台都改用ap了 面具到後期搞得很躁
話說最近richart跟健保又壞了 有人有想法嗎以前Richart改用alpha就好了最近不曉得裝了什麼又偵測到了我看我也跳apatch好了
richart,richart life,健保都正常啊,alpha+shamiko+lsposed mod+hma
借串問一下,lsposed mod有開富邦會閃退,把lsposed mod關閉後重開機就能開富邦,有解嗎?同樓上該裝的都有裝
作者:
JKGOOD 2024-09-11 22:38:00推
作者:
sam613 (Hikaru)
2024-09-12 22:15:00現在能用不表示永遠都能用
作者:
JKGOOD 2024-09-15 03:56:00不知道哪個步驟做錯,現在連Device 都過不了
to JKGOOD: 手機只安裝tricky store並不會修復系統prop請看教學安裝 playintegrityfork 模組
作者:
glen246 (-CaT-)
2024-09-15 22:23:00健保、郵局APP最近更新後就出現ROOT偵測訊息了
apatch 隱藏能力比 kernelsu 還弱,如果手機符合ksu使用條件,建議轉換成ksu+shamiko測試看看
作者:
KyA 2024-09-15 22:48:00健保有加HMA 郵局沒加HMA 這樣都有過
作者:
JKGOOD 2024-09-16 01:32:00APatch有可能像Magisk改名安裝嗎在Apatch環境下安裝ZygiskNext+Shamiko 健保一樣沒辦法過
作者:
linkt0 (linkt0)
2024-09-19 15:28:00推 keybox.xml 這裡找到的 謝謝
作者:
KyA 2024-10-23 08:41:00PIF GG
作者: jamt 2024-10-23 17:10:00
新的一輪大屠殺PIF更新了