安裝apktool和dex2jar,jd-gui
homebrew安裝:
brew install apktool
brew install dex2jar
JD-GUI去http://jd.benow.ca/下載
dmg可能不支持最新版本的mac用不了,打開(kāi)就報(bào)錯(cuò)
反編譯流程
執(zhí)行腳本apktool d xxx.apk 注:xxx.apk為你要反編譯的apk
在你執(zhí)行命令的目錄下會(huì)生成xxx文件夾 到文件夾中查看res資源文件即可
將apk文件后綴名直接改為.zip并解壓。得到其中的classes.dex文件,它就是java源代碼經(jīng)過(guò)編譯再通過(guò)dx工具打包而成的。
將classes.dex文件復(fù)制到dex2jar所在的文件夾
終端cd到dex2jar目錄,運(yùn)行 sh dex2jar.sh classes.dex
生成 classes_dex2jar.jar
用jd-gui打開(kāi)就可以看到源代碼
自動(dòng)化反編譯
之前想著手動(dòng)敲命令就好了
做題的時(shí)候發(fā)現(xiàn)還是得百度
就準(zhǔn)備用shell腳本一鍵化
shell腳本
apktool d $1 && mv $1 $1.zip && unzip $1.zip "*.dex" -d $1_dex/ && cd $1_dex/ && d2j-dex2jar *.dex
當(dāng)然也可以把這個(gè)放到.bash_profile
可以命令行運(yùn)行
實(shí)戰(zhàn)
超級(jí)簡(jiǎn)單的Android逆向
還是JDCTF的一道題

-w550
先用寫(xiě)好的
1.sh腳本自動(dòng)反編譯了生成的classes-dex2jar.jar放到j(luò)d-gui里面

-w363
所有的東西都在主函數(shù),看主函數(shù)

-w592
所有的程序,輸入的值經(jīng)過(guò)
encode函數(shù)和base64只要等于NGM5OTkzNDIyM2NmMjQwZA==這個(gè)就可以了解出來(lái)是
4c99934223cf240d
-w447
看一下encode函數(shù),沒(méi)什么用
把字符串翻轉(zhuǎn)一下就好了

-w326

-w340