Android應用反編譯詳細流程(Mac系統)
阿新 • • 發佈:2018-11-28
新版Android應用反編譯詳細流程(Mac系統)
以前一直都是用win來反編譯,後來換了Mac就一直沒弄過了,今天剛好有需要,正好也做個筆記,留著以後備用。
其實現在大多數應用都會做一些防護,下面這種方式,只適用於一般的沒做加固處理的apk。
現在開始吧,首先你需要準備好必備的軟體
其實反編譯並沒有過多的內容,主要的時間都是花在環境的搭建上。如果你只是用一次的話,其實也不用過於花費時間去配置。(不知道為啥大家的文章基本都寫了配置到環境變數中,應該是為了一勞永逸。)
如果你需要檢視資原始檔的話就需要配置apktool的環境,如果你只是要檢視應用的程式碼直接逆向classes.dex檔案就可以了,按自己的需要去配置相關工具。
配置apktool的步驟:
在使用apktool之前,你需要有jdk環境,這個很重要
1.將apktool檔案的路徑配置到環境變數中,為了更方便的使用apktool來進行逆向操作。如果你懶得配置,你也可以直接進入到apktool.jar所在的的目錄下執行命令:
bogon:apktool dongfang$ apktool d /Users/dongfang/Downloads/com.xxxx.apk
這樣就會對應生成一個和包名近似一致資料夾,裡面有資原始檔,如:xml、AndroidManifest.xml等檔案。
以上就是逆向完成了,對生成的資料夾還可以在重新打包成apk,但是不建議這樣做。
使用dex2jar步驟:
1.首先你需要先把apk中dex檔案提取出來,放到dex2jar資料夾內。(如果不放到根目錄的話,就要寫全路徑)
2.執行一個命令就可以了。
sh d2j-dex2jar.sh classes.dex
然後就會生成一個jar檔案了,檔名是classes-dex2jar.jar
使用jd-gui來檢視jar的步驟:
1.直接將上面生成的jar檔案拖進來就可以了啊。