[討論] ROOT & Play Integrity 解決方案

作者: 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錢包嗎?
作者: JustinYeh88 (JustinYeh1999)   2024-09-07 15:21:00
google錢包只看play integrity有沒有達到device以上
作者: KyA   2024-09-07 15:22:00
應該不只 我現在Strong還是會出現
作者: dinasore (楊胖龍)   2024-09-07 15:24:00
感謝大神分享詳盡攻略,請問上述的module在magisk 一樣適用嗎?
作者: snowcreeper (神隱者)   2024-09-07 15:53:00
推用心整理
作者: JustinYeh88 (JustinYeh1999)   2024-09-07 16:04: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
作者: haveastar (有星)   2024-09-07 17:37:00
作者: mars3712   2024-09-07 17:59:00
magisk 可以使用 alpha fork 搭配 shamikohttps://t.me/s/magiskalpha
作者: clse0190 (shadow)   2024-09-07 22:19:00
keybox有版權問題,不能公開分享,會有問題。然後trickystore本身就會做bootloader spoof用到pifork的理由是因為你是oneplus 解鎖死TEE如果用的是KSU,除了pixel應該是不需要用pifork的小米系的用ksu不需要pif,只要trickystore就會正常如果真的要分享,最好是用2b0a這個被使用比較廣的然後有一個很重要的你忘了說 trickstore只支援framework沒有被改過的 xiaomieu之類的不能支援framework.jar有調過的很多,原生系統通常能用
作者: mars3712   2024-09-07 23:15:00
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:00
pifork script only做了甚麼可以看CODEhttps://reurl.cc/g663dRPIFORK其實在說明就寫過了,需要動的就兩個spoofProvider spoofProps 設成0就好除非完全不碰lsposed相關的東西,不然ZA 或是 shamiko你兩個總是要用到一個 把PIF相關的東西刪光對某些設備就是不會通過然後2b0a就是因為最常用 到現在都沒出事 當然是優先用keybox現在常見的也就那26個 等2b0a死了再換新的 比較能持續久一點 KEYBOX始終是消耗品 而且比起PIF還要少ts不處理ro沒錯 但是小米系的設備在hyperos下KSU+TS就能正常通過strong
作者: mars3712   2024-09-07 23:56:00
會需要用到 zygisk+pifork+custom.pif.json 的情況就是原生手機的指紋不在google認證設備裡面對 OnePlus Ace 3(12R) 國際版的系統來說就只是很單純的修復 BL 解鎖後的 ro. props 再模擬 keybox 而已所以 pifork 模組只需要 script only mode當然各家手機有不同的玩法 怎麼方便怎麼來囉
作者: baby0803 (小邱)   2024-09-08 00:27:00
可以請問這是什麼狀況嗎?https://i.imgur.com/ivvB2Vm.jpeg
作者: mars3712   2024-09-08 00:33:00
沒安裝 trickystore 模組,或是ts模組無效
作者: baby0803 (小邱)   2024-09-08 00:42:00
不知什麼原因,只要A11的rom root後就不行,但刷A12的rom就不會出現這個問題只要用magisk做root後,用key這個apk檢測就會出現這問題,裝了tricky store也是一樣
作者: clse0190 (shadow)   2024-09-08 00:47:00
TS只支援12以上 11以下的支援是"開發中"
作者: baby0803 (小邱)   2024-09-08 00:48:00
作者: clse0190 (shadow)   2024-09-08 00:50:00
pre-release的RC1理論上支援到10,但是"可能不穩定"https://reurl.cc/2jjOWa
作者: baby0803 (小邱)   2024-09-08 00:51:00
已經有其他分叉出了支援10跟11的TC
作者: mars3712   2024-09-08 00:52:00
可以試試 trickystore 1.2.0-RC1https://reurl.cc/2jjOWa
作者: baby0803 (小邱)   2024-09-08 00:53:00
怪的是出現這個畫面時是還未安裝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了 面具到後期搞得很躁
作者: xxx5566xxx (禍國殃民馬英九)   2024-09-11 13:29:00
筆記
作者: xylophone135 (赤い三月花雪夢)   2024-09-11 14:21:00
話說最近richart跟健保又壞了 有人有想法嗎以前Richart改用alpha就好了最近不曉得裝了什麼又偵測到了我看我也跳apatch好了
作者: cooladam ( )   2024-09-11 17:43:00
richart,richart life,健保都正常啊,alpha+shamiko+lsposed mod+hma
作者: sebastian777 (sebastian)   2024-09-11 21:25:00
借串問一下,lsposed mod有開富邦會閃退,把lsposed mod關閉後重開機就能開富邦,有解嗎?同樓上該裝的都有裝
作者: JKGOOD   2024-09-11 22:38:00
作者: jamt   2024-09-11 23:37:00
今天在pixel watch 3(Wear OS 5, Android 14)上試裝apatch,從安裝apk就有問題了,還是回去magiskhttp://i.imgur.com/qSVdtHh.jpg
作者: piggy51350 (sor)   2024-09-12 11:46:00
作者: sam613 (Hikaru)   2024-09-12 22:15:00
現在能用不表示永遠都能用
作者: JKGOOD   2024-09-15 03:56:00
不知道哪個步驟做錯,現在連Device 都過不了
作者: mars3712   2024-09-15 19:20:00
to JKGOOD: 手機只安裝tricky store並不會修復系統prop請看教學安裝 playintegrityfork 模組
作者: JKGOOD   2024-09-15 20:38:00
https://i.imgur.com/9wRncND.jpegStrong 過了,國泰跟Gpay也過了,但是健保不給XD目前尚不清楚健保快易通偵測的原因,RE瀏覽器、幸運破解器那類的也都移除了
作者: glen246 (-CaT-)   2024-09-15 22:23:00
健保、郵局APP最近更新後就出現ROOT偵測訊息了
作者: mars3712   2024-09-15 22:26:00
apatch 隱藏能力比 kernelsu 還弱,如果手機符合ksu使用條件,建議轉換成ksu+shamiko測試看看
作者: KyA   2024-09-15 22:48:00
健保有加HMA 郵局沒加HMA 這樣都有過
作者: JKGOOD   2024-09-16 01:32:00
APatch有可能像Magisk改名安裝嗎在Apatch環境下安裝ZygiskNext+Shamiko 健保一樣沒辦法過
作者: NonsenseKing (經驗使人成長)   2024-09-18 10:18:00
這篇文,版主不 m 嗎?香透了~~~
作者: linkt0 (linkt0)   2024-09-19 15:28:00
推 keybox.xml 這裡找到的 謝謝
作者: eric525498 (艾瑞克 我肆酒吧)   2024-09-22 16:01:00
好久沒玩 root,想知道還有什麼好玩 XD
作者: KyA   2024-10-23 08:41:00
PIF GG
作者: jamt   2024-10-23 17:10:00
新的一輪大屠殺PIF更新了

Links booklink

Contact Us: admin [ a t ] ucptt.com