安卓逆向環境配置
簡介
在進行安卓逆向的路上踩了一些坑 隨手記錄一下找資料過程嘗試的各種方法 能用虛擬機就用虛擬機 TvT
手機連接 kali adb
Mobile (以三星為例)
手機先進入開發者模式(關於手機/軟體資訊/版本號碼點七下) -> USB選項要選傳輸檔案 看到RSA號碼才算成功
Kali
vbox裡面選啟用USB連線然後選擇裝置

┌──(kali㉿kali)-[/media/sf_SHARED_FILE]└─$ └─$ adb devices* daemon not running; starting now at tcp:5037* daemon started successfullyList of devices attachedR5CX72ENHEN deviceAndoid Studio 虛擬機連線
最簡單拿到一台有ROOT的手機就是用虛擬機
- 這邊要選沒有 Google Play icon的,不然沒辦法root
- 選預設的 Google APIs

安裝好後再NAT模式下的VM應該就可以訪問到了(這邊用Vbox的kali)
ip route確認IPadb connect直接連線上去就可以看到了- 多個裝置用
-s指定
┌──(.venv)─(kali㉿kali)-[~/Downloads/android]└─$ adb -s 10.0.2.2:5555 shellemu64xa:/ $ suemu64xa:/ #ROOT 成功!
ROOT <— 備用機推薦
通常要用Frida的一些方便功能需要將手機進行root,但普通的root方式(稱為刷機)有機率性的會需要把資料抹掉或是把指紋解鎖功能去除,在找資料的時候看到幾種不同的方式供參
開Bootloader+神奇工具解鎖root
- Bootloader解鎖(很危險,後果自負,推薦在模擬機跑就好)
- Samsung —> https://youtu.be/vBvvUFlcVeM
- Redmi —> https://magiskcn.com/mi-unlock.html
- 解鎖ROOT的神奇工具
| 工具 | 安裝教學 | 評價 |
|---|---|---|
| Magisk | https://izaka.tw/magisk-tutorial-and-installation-guide/#google_vignette | 基礎款 |
| APatch | https://ivonblog.com/posts/apatch-android-root/ | KernelPatch, 較隱蔽 |
| KernelSU-Next | https://izaka.tw/kernelsu-next-install-guide/ | 成功率高 |
| 其他都感覺有點危險就先pass了,另外magisk的開發者後來加入了Google,也有在繼續更新 |
Frida + Objection <— 私用機推薦
我俗辣,不敢刷機所以用Objeciton解決,他是一個基於Frida的工具,好用
推薦使用虛擬環境,這邊用uv來示範
python 3.13.9 // >=3.11objeciton 1.12.2 // 只支援python>=3.11,不然會有套件版本衝突frida 16.7.19 // frida 17 更新了很多api calling 有點慘烈frida-server 16.7.19 // 需要同個版本,用來丟到手機裡面的uv python pin 3.13.9uv venv
uv pip install objection "frida==16.7.19" frida-tools && \wget https://github.com/frida/frida/releases/download/16.7.19/frida-server-16.7.19-android-arm64.xzunxz frida-server-16.7.19-android-arm64.xz
adb push frida-server-16.7.19-android-arm64 /data/local/tmp/chmod 755 /data/local/tmp/frida-server-16.7.19-android-arm64./data/local/tmp/frida-server-16.7.19-android-arm64 &最後確認連線 frida-ps -U
frida -U -n com.example.app