0x00 前言
之前對於app反編譯的smali匯編語言都是靜態分析為主,加上一點ida6.6的動態調試,但是ida的調試smali真的像雞肋一樣,各種不爽,遇到混淆過的java代碼就欲哭無淚了。後來知道IDEA用一款插件也可以實現smali的動態調試,但是只有14.1之後的版本才支持。idea是一款商業軟件,懶得去找各種破解版,就想著用Android studio來代替idea來達到動態調試的目的。
0x01 工具
①Android Studio 1.5Preview,不清除低版本的是否支持smali的調試
②apktool,盡量使用最新版的。
③ideasmali插件。下載地址
0x02 具體步驟
安裝ideasmali插件,File->Settings->Plugins,安裝之前下載的ideasmali插件。
反編譯apk
以調試狀態啟動app,並轉發8700端口 [app_pid]
記住這時候需要將DDMS關掉,不然會出現錯誤
使用AS導入之前反編譯的目錄,這裡選擇debugsmali文件夾就可以了。
然後選擇Create project from existing sources,之後一直選擇next。
對之前反編譯的debugsmali/src文件夾右鍵-->Make Directory As --->Source Root
配置遠程調試的選項,選擇Run-->Edit Configurations:
增加一個Remote調試的調試選項,端口選擇:8700
之後選擇File-->Project Structure 配置JDK
下好斷點之後Run-->Debug'smali',這裡的smali是我們之前配置好的調試選項。
運行起來之後就可以單步執行,查看寄存器的值,慢慢調試了。
更多Android Studio相關內容可以看看以下的有用鏈接:
在Ubuntu 15.04下安裝Android Studio http://www.linuxidc.com/Linux/2015-06/119318.htm
Android Studio 2.0中的模擬器已提速50倍 http://www.linuxidc.com/Linux/2015-11/125481.htm
Ubuntu 12.04(64位)安裝Android Studio 全過程 http://www.linuxidc.com/Linux/2013-05/84812.htm
Android Studio使用教程 http://www.linuxidc.com/Linux/2013-05/84579.htm
Ubuntu 14.10 環境下安裝使用Android Studio http://www.linuxidc.com/Linux/2016-04/130043.htm
Android Studio開發指南 http://www.linuxidc.com/Linux/2013-05/84543.htm
Android Studio設置主題 和 不支持中文的問題解決方法 http://www.linuxidc.com/Linux/2013-05/84488.htm
Android Studio 下載安裝以及不能打開的解決辦法 http://www.linuxidc.com/Linux/2013-05/84409.htm
Android Studio安裝使用圖文教程 http://www.linuxidc.com/Linux/2014-09/106914.htm
Android Studio 的詳細介紹:請點這裡
Android Studio 的下載地址:請點這裡