反編譯工具及使用
阿新 • • 發佈:2018-11-01
反編譯工具及使用
反編譯大致流程:
對Dex檔案(Davilk虛擬機器的可執行檔案)進行反編譯成 Smali (Davilk的暫存器語言)
再轉化為 .class檔案
主要工具:
1 apktool
下載使用見 https://ibotpeaches.github.io/Apktool/install/
將apk放在解壓的 apktool目錄
執行:
apktool d xxx.apk
將 apk 轉換成 資原始檔 manifest assets lib
2 dex2jar
下載:https://sourceforge.net/projects/dex2jar/files/
解壓
將 apk 加上 .zip字尾 然後解壓 得到 classes.dex 檔案
放在 dex2jar 解壓的資料夾中
執行:d2j-dex2jar classes.dex
得到 jar檔案
3 jd-gui
將 jar檔案放入 jd-gui中即可
若沒有程式碼混淆 則是可以看得到所有的程式碼的
但是這裡的目錄結構 並不是真正的專案結構
只是他根據名字放在了一起
包名可以去apktool解析得到的 manifest中檢視
對於程式碼混淆的
用 simplify
但是也是需要自己分析
待實踐: