看板 Android 關於我們 聯絡資訊
目前 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 至此大功告成 如果有其他疑問歡迎一起討論 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.173.137.245 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Android/M.1725672033.A.187.html ※ 編輯: mars3712 (1.173.137.245 臺灣), 09/07/2024 09:26:16
KyA: 有試過這樣就可以正常使用Google錢包嗎? 09/07 10:42
JustinYeh88: google錢包只看play integrity有沒有達到device以上 09/07 15:21
KyA: 應該不只 我現在Strong還是會出現 09/07 15:22
dinasore: 感謝大神分享詳盡攻略,請問上述的module在magisk 一樣 09/07 15:24
dinasore: 適用嗎? 09/07 15:24
snowcreeper: 推用心整理 09/07 15:53
JustinYeh88: google play現在有辦法偵測到magisk修補過的boot映像 09/07 16:04
JustinYeh88: 檔,所以用magisk是不可能達到strong的,頂多到devic 09/07 16:04
JustinYeh88: e 09/07 16:04
JustinYeh88: 想要有root同時擁有strong認證,請改用kernelSU或apa 09/07 16:05
JustinYeh88: tch 09/07 16:05
KyA: 意思是檢測工具當參考不準? 09/07 16:21
jamt: 我裝了lsposed又從strong被打回basic... 09/07 16:29
jamt: 用chiteroman原版的PIF就可以strong 09/07 17:18
haveastar: 推 09/07 17:37
mars3712: magisk 可以使用 alpha fork 搭配 shamiko 09/07 17:59
mars3712: https://t.me/s/magiskalpha 09/07 17:59
clse0190: keybox有版權問題,不能公開分享,會有問題。 09/07 22:19
clse0190: 然後trickystore本身就會做bootloader spoof 09/07 22:20
clse0190: 用到pifork的理由是因為你是oneplus 解鎖死TEE 09/07 22:21
clse0190: 如果用的是KSU,除了pixel應該是不需要用pifork的 09/07 22:27
clse0190: 小米系的用ksu不需要pif,只要trickystore就會正常 09/07 22:28
clse0190: 如果真的要分享,最好是用2b0a這個被使用比較廣的 09/07 22:32
clse0190: 然後有一個很重要的你忘了說 trickstore只支援 09/07 22:53
clse0190: framework沒有被改過的 xiaomieu之類的不能支援 09/07 22:54
clse0190: framework.jar有調過的很多,原生系統通常能用 09/07 22:55
mars3712: to clse0190: 看來你不清楚pifork script only做了甚麼 09/07 23:15
mars3712: 事情,也許在你的手機環境third-party rom 或 kernel 09/07 23:15
mars3712: 自動避掉了解鎖相關 props/cmdline 才讓你覺得 trickys 09/07 23:15
mars3712: tore 會處理 ro. properties 09/07 23:15
mars3712: 至於我提供的 keybox 也是在tg群組拿過來用的 09/07 23:15
mars3712: 使用人數不多也不容易被察覺 revoke 掉 09/07 23:15
mars3712: playintegrityfix 最新版的直接包入 2b0a keybox 09/07 23:15
mars3712: 這個取得難度直接為零 甚麼時候被ban都不意外 09/07 23:15
mars3712: 再者是xiaomi.eu 三方 rom 要怎麼魔改keystore impl 就 09/07 23:15
mars3712: 是它們社群的事情了 祝各位 happy rooting 09/07 23:15
clse0190: pifork script only做了甚麼可以看CODE 09/07 23:27
clse0190: https://reurl.cc/g663dR 09/07 23:27
clse0190: PIFORK其實在說明就寫過了,需要動的就兩個 09/07 23:34
clse0190: spoofProvider spoofProps 設成0就好 09/07 23:35
clse0190: 除非完全不碰lsposed相關的東西,不然ZA 或是 shamiko 09/07 23:36
clse0190: 你兩個總是要用到一個 把PIF相關的東西刪光對某些設備 09/07 23:37
clse0190: 就是不會通過 09/07 23:39
clse0190: 然後2b0a就是因為最常用 到現在都沒出事 當然是優先用 09/07 23:40
clse0190: keybox現在常見的也就那26個 等2b0a死了再換新的 比較能 09/07 23:42
clse0190: 持續久一點 KEYBOX始終是消耗品 而且比起PIF還要少 09/07 23:43
clse0190: ts不處理ro沒錯 但是小米系的設備在hyperos下 09/07 23:52
clse0190: KSU+TS就能正常通過strong 09/07 23:54
mars3712: 會需要用到 zygisk+pifork+custom.pif.json 的情況就是 09/07 23:56
mars3712: 原生手機的指紋不在google認證設備裡面 09/07 23:56
mars3712: 對 OnePlus Ace 3(12R) 國際版的系統來說就只是很單純 09/07 23:56
mars3712: 的修復 BL 解鎖後的 ro. props 再模擬 keybox 而已 09/07 23:56
mars3712: 所以 pifork 模組只需要 script only mode 09/07 23:56
mars3712: 當然各家手機有不同的玩法 怎麼方便怎麼來囉 09/07 23:56
baby0803: 可以請問這是什麼狀況嗎?https://i.imgur.com/ivvB2Vm. 09/08 00:27
baby0803: jpeg 09/08 00:27
mars3712: 沒安裝 trickystore 模組,或是ts模組無效 09/08 00:33
baby0803: 不知什麼原因,只要A11的rom root後就不行,但刷A12的ro 09/08 00:42
baby0803: m就不會出現這個問題 09/08 00:42
baby0803: 只要用magisk做root後,用key這個apk檢測就會出現這問題 09/08 00:44
baby0803: ,裝了tricky store也是一樣 09/08 00:44
clse0190: TS只支援12以上 11以下的支援是"開發中" 09/08 00:47
baby0803: https://imgur.com/a/NQP7GZk 09/08 00:48
clse0190: pre-release的RC1理論上支援到10,但是"可能不穩定" 09/08 00:50
clse0190: https://reurl.cc/2jjOWa 09/08 00:50
baby0803: 已經有其他分叉出了支援10跟11的TC 09/08 00:51
mars3712: 可以試試 trickystore 1.2.0-RC1 09/08 00:52
mars3712: https://reurl.cc/2jjOWa 09/08 00:52
baby0803: 怪的是出現這個畫面時是還未安裝TC單純用key.apk去看就 09/08 00:53
baby0803: 有這問題 09/08 00:53
baby0803: 我有另一隻其他型號手機也是A11卻沒這問題 09/08 00:54
Arbin: 比較好奇keybox這種東西可以用自己手機的嗎?不然用別人的 09/08 10:05
Arbin: 都有遲早被註銷的問題 09/08 10:05
Arbin: 還是用自己的也會因為Google偵測手段強化被註銷 09/08 10:06
KyA: 我把Google錢包問題解決了 果然不只看Device而已 09/08 15:30
stephen2232: 09/09 00:46
ec97: 手邊10幾台都改用ap了 面具到後期搞得很躁 09/10 13:01
xxx5566xxx: 筆記 09/11 13:29
xylophone135: 話說最近richart跟健保又壞了 有人有想法嗎 09/11 14:21
xylophone135: 以前Richart改用alpha就好了 09/11 14:29
xylophone135: 最近不曉得裝了什麼又偵測到了 09/11 14:29
xylophone135: 我看我也跳apatch好了 09/11 14:29
cooladam: richart,richart life,健保都正常啊,alpha+shamiko+lsp 09/11 17:43
cooladam: osed mod+hma 09/11 17:43
sebastian777: 借串問一下,lsposed mod有開富邦會閃退,把lspose 09/11 21:25
sebastian777: d mod關閉後重開機就能開富邦,有解嗎?同樓上該裝 09/11 21:25
sebastian777: 的都有裝 09/11 21:25
JKGOOD: 推 09/11 22:38
jamt: 今天在pixel watch 3(Wear OS 5, Android 14)上試裝apatch, 09/11 23:37
jamt: 從安裝apk就有問題了,還是回去magisk 09/11 23:37
jamt: http://i.imgur.com/qSVdtHh.jpg 09/11 23:38
piggy51350: 推 09/12 11:46
sam613: 現在能用不表示永遠都能用 09/12 22:15
JKGOOD: 不知道哪個步驟做錯,現在連Device 都過不了 09/15 03:56
JKGOOD: https://i.imgur.com/vRZ57aj.jpeg 09/15 15:07
JKGOOD: https://i.imgur.com/h9VagT4.jpeg 09/15 15:11
mars3712: to JKGOOD: 手機只安裝tricky store並不會修復系統prop 09/15 19:20
mars3712: 請看教學安裝 playintegrityfork 模組 09/15 19:20
JKGOOD: https://i.imgur.com/9wRncND.jpeg 09/15 20:38
JKGOOD: Strong 過了,國泰跟Gpay也過了,但是健保不給XD 09/15 20:38
JKGOOD: 目前尚不清楚健保快易通偵測的原因,RE瀏覽器、幸運破解 09/15 20:47
JKGOOD: 器那類的也都移除了 09/15 20:47
glen246: 健保、郵局APP最近更新後就出現ROOT偵測訊息了 09/15 22:23
mars3712: apatch 隱藏能力比 kernelsu 還弱,如果手機符合ksu使 09/15 22:26
mars3712: 用條件,建議轉換成ksu+shamiko測試看看 09/15 22:26
KyA: 健保有加HMA 郵局沒加HMA 這樣都有過 09/15 22:48
JKGOOD: APatch有可能像Magisk改名安裝嗎 09/16 01:32
JKGOOD: 在Apatch環境下安裝ZygiskNext+Shamiko 健保一樣沒辦法過 09/16 02:05
NonsenseKing: 這篇文,版主不 m 嗎?香透了~~~ 09/18 10:18
linkt0: 推 keybox.xml 這裡找到的 謝謝 09/19 15:28
eric525498: 好久沒玩 root,想知道還有什麼好玩 XD 09/22 16:01
KyA: PIF GG 10/23 08:41
jamt: 新的一輪大屠殺 10/23 17:10
jamt: PIF更新了 10/23 21:20