Android Hook工具之Frida 安裝配置教程

Frida是一款基于Python + JavaScript的Hook調(diào)試框架,可以將自己編寫的JavaScript代碼注入到Windows,MACOS,Linux, iOS,Android和QNX 的應(yīng)用中從而進行Hook,其實Frida功能不僅僅是Hook,還包括以下這些功能:

  • 訪問進程的內(nèi)存
  • 在應(yīng)用程序運行時覆蓋一些功能
  • 從導(dǎo)入的類中調(diào)用函數(shù)
  • 在堆上查找對象實例并使用這些對象實例
  • Hook,跟蹤和攔截函數(shù)等等

Frida官網(wǎng)地址:https://www.frida.re.

Frida可以運行在多個平臺上,這次主要講解使用MacOS當宿主機的使用方式

  • 宿主機系統(tǒng):Mac OS
  • Android手機: 已Root過的Android 手機或使用Android模擬器也可以(PS:我使用的華為榮耀6p的Android 6.0系統(tǒng),模擬器沒用過不知道會不會有坑)
  • Frida: Frida有多重安裝方式,這里主要記錄一下常用的兩種方式。
    方式一: 直接通過Pip安裝Frida,一般Mac系統(tǒng)上都會有Python環(huán)境,如果沒有則需要先安裝python(最好用最新的版本)安裝完P(guān)ython后繼續(xù)安裝pip,打開終端輸入sudo easy_install pip命令進行安裝
sudo easy_install pip
Password:

安裝完pip后就可以安裝Frida了,直接輸入sudo pip install frida即可(安裝時間比較長耐心等待,最好使用VPN)

sudo pip install frida
pip install frida-tools

方式二: 直接下載對應(yīng)平臺的Python版本的安裝包,比如:當前系統(tǒng)是Mac OS-10.12,Python是2.7,那么就應(yīng)該下載:frida-10.6.52-py2.7-macosx-10.12-intel.egg ,下載完成后直接安裝即可
下載地址: https://pypi.python.org/pypi/frida

安裝完成后,直接在終端中輸入frida-ps命令查看,如果能顯示當前系統(tǒng)進程則證明安裝成功

frida-ps
 PID  Name
----  ---------------------------------------------
 416  AirPlayUIAgent
 596  Android Studio
 551  AppleSpell.service
 529  CoreServicesUIAgent
 264  Dock
 266  Finder
 402  FolderActionsDispatcher
 553  Google Chrome
 505  LaterAgent
 517  QQ
 530  QQ jietu plugin
  • Frida-server: 直接去官網(wǎng)下載:https://github.com/frida/frida/releases 對應(yīng)的版本即可,注意:Frida-server的版本必須跟你宿主機的Frida版本一致,比如我宿主機Frida的版本是10.6.52,Android手機是arm64的,那么應(yīng)該下載:rida-server-10.6.52-android-arm64.xz 文件。
    下載后解壓文件,并將文件重命名為: frida-server, 重命名完成后使用adb push命令推送到手機中
adb push frida-server /data/local/tmp/

推送完成后將frida-sever賦予執(zhí)行的權(quán)限,并運行Frida-server,使用以下命令:

adb shell
su
cd /data/local/tmp/
chmod 777 frida-server
./frida-server

注1: 如果frida-server沒有啟動,查看一下你是否使用的是Root用戶來啟動,如果使用Root用戶則應(yīng)該是#
注2: 如果要啟動frida-server作為后臺進程、可以使用這個命令./frida-server &
正常啟動后,另開一個終端,使用frida-ps -U命令檢查Frida是否正常運行,如果正常運行則會列出Android設(shè)備上當前正在運行的進程.

frida-ps -U
  PID  Name
-----  ------------------------------------------
 3835  31:0
 3724  HwCamCfgSvr
 3954  adbd
 5011  android.process.acore
 5029  android.process.media
 3739  bastetd
 3736  check_longpress
 3764  check_longpress
13962  com.UCMobile:channel
14462  com.UCMobile:push

參數(shù)-U 代表USB,意思讓Frida檢查USB設(shè)備,使用frida-ps -R 也可以,但是需要進行轉(zhuǎn)發(fā)。執(zhí)行adb forward tcp:27042 tcp:27042后執(zhí)行frida-ps -R也可以看到手機上的進程.
到此為止,F(xiàn)rida工作環(huán)境已經(jīng)準備好了,下一篇文章介紹一下Android Hook工具之Frida 基礎(chǔ)使用

參考資料:
https://www.frida.re/docs/installation/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容