調(diào)試步驟
**判斷手機的框架如庭,命令:cat /proc/cpuinfo沫浆,對應(yīng)文件夾
- AArch64 == arm64-v8a
- ARMv7 == armeabi-v7a**
- 首先最好先進行一波靜態(tài)分析鲸沮,分析程序可能存在漏洞的代碼段忍法,然后合理滴設(shè)置斷點疲眷。
- 在AS里打開Android Device Monitor
- 將IDAPro\dbgsrv 目錄下的android_server push 到手機/data/local/tmp/目錄下 給777權(quán)限 并./運行锈候。
- 打開端口轉(zhuǎn)發(fā),打開IDA找到程序的包名進行附加程序。
- 調(diào)試程序仍源,在斷點處修改數(shù)據(jù)心褐,繞過判斷。
- 重復(fù)步驟5,直到程序結(jié)束笼踩。調(diào)試結(jié)束逗爹。
參考鏈接1:Android app中的so庫和CPU架構(gòu)
參考鏈接2
知識點兒
- 打開AndroidManifest.xml查看程序入口 這里 android:debuggable="true"表示此apk可以動態(tài)調(diào)試 如果是false動態(tài)調(diào)試的時候需要改成true,否則不可被動態(tài)調(diào)試嚎于。
- ADB命令:
(1)adb push \ida\dbgsrv\android_server /data/local/tmp
(2)adb shell
(3)su
(4)chmod 777 android_server
(5)adb forward tcp:23946 tcp:23946 - IDA搜索函數(shù)掘而、查看偽代碼(F5)、導(dǎo)入頭文件于购、偽代碼可讀化袍睡、設(shè)置斷點(F2)、修改Hex肋僧、執(zhí)行本條命令(F8)斑胜。
-
動態(tài)調(diào)試窗口
參看