反編譯常見工具及用法(一)
阿新 • • 發佈:2019-02-13
首先把baksmali-1.4.1.jar和smali-1.4.1.jar檔案放到Android sdk安裝路徑下的tools裡面,把apk用WinRAR解壓並提取classes.dex檔案,也放入tools裡面,然後用命令列,cd tools目錄下,輸入Java命令:
- java -jar baksmali-1.4.1.jar -o classout/ classes.dex
2. 我們還可以配合用apktool+dex2jar+jd_gui反編譯apk檔案,來學習人家的架構及介面等。
apktool: 可以解析資原始檔,比如佈局檔案xml等,方便檢視。
dex2jar:可以將dex檔案轉換成jar檔案,用法: (1)將apk檔案字尾改成rar,然後解壓,取出其中的classes.dex,放到任意位置; (2)進入cmd,cd到dex2jar所在資料夾,輸入命令dex2jar.bat %classes.dex所在目錄%\class.dex (3)命令完成後在%class.dex所在目錄%就會生成jar檔案 3. jd_gui:能夠將jar檔案反編譯成java程式碼,開啟jd_gui,然後將jar包拖放到主介面,就可以看到原始碼了。用jd_gui來看反編譯出的Java程式碼,這樣便於尋找自己想要改的東西,找到後可以到baksmali classout下去修改相應的地方。然後是利用smali編譯回去,命令如下:-
java -jar smali-