《逆向專題》基本逆向工具篇(java層)

前面已經安裝好了android額開發環境,包括sdk這些。其實sdk中的工具就滿足我們簡單進行android逆向的需求了。當然如果要完成更加複雜的逆向任務,就需要更加方便的工具了。

做android的逆向工作,離不開各種各樣的工具。有比較大的集成逆向平臺,也有各種體量小的插件或者小工具。這裏列舉一些個人覺得好用的。

這裏先介紹java層的一些工具。native層的我們先不介紹。

我們先介紹一些集成工具,這些工具大多貫穿整個逆向流程,用好了能極大加速我們的逆向過程。

使用這些工具的前提是已經搭建好了開發逆向環境。必要的jdk,android sdk等已經安裝完成並且配置好環境變量。

1、android studio。這個不用多說,開發也是需要用到的。以及後面的一些smali代碼的動態調試,也是可以使用android stduio。

2、android killer。這個工具可以說是我的入門神器了,雖然現在沒有人維護它了,但是毫無疑問還是用起來很方便的。首先是界面友好操作簡單,集反編譯回編譯,簽名等整個流程。所以到現在爲止,我拿到一個apk之後都會先用android killer進行一次反編譯,如果不成功再嘗試別的方法或者工具。但是隨着防護技術以及開發者意識的加強,很多apk都會跟這些工具做對抗。尤其是反編譯,越來越發現使用android killer反編譯容易失敗了。但是就個人來說,我喜歡用這款工具是因爲它的搜索功能比較好用,起碼用得比JEB順手多了。

3、JEB。這個也是推薦的神器。也是集編譯,反編譯,調試於一身的集成環境。但是這個工具是需要購買的,反編譯的結果當然相對來說要更加準確,而且對機子的要求也比較高。

4、MobSF。這是個android的動態分析框架。當然也支持靜態分析,web API 測試。下載地址:https://github.com/MobSF/Mobile-Security-Framework-MobSF

 

接下來介紹一些小工具,這些小工具通常是功能單一,體量小。但是好在靈活易用。一般就是一個exe文件,一個jar包之類的。對於這種小工具,我一般是使用一個文件夾做統一分類,然後使用一個bat腳本來調用這些工具。再把這個工具目錄添加到path下。這樣就能更快地使用這些工具,而不用在使用的時候到處去切換目錄。

1、apktool。這個工具用於反編譯和回編譯,而且很多集成環境的反編譯核心,其實就是用的這個工具。如果有的集成環境反編譯功能失效,說不定重新更新這個apktool就可以了。下載地址:https://github.com/iBotPeaches/Apktool

2、jd-gui。這是一個jar 的查看工具。可以將.jar 、.war、.class這些文件翻譯成源碼便於查看。而且這個工具很小,運行速度也快。當然有點麻煩的是我們的android中,java代碼大多是是打包成dex而不是jar,所以更多時候,需要我們做一次轉化,比如說將dex轉爲jar。

這裏說到了就再介紹一個工具吧。這個就是講dex轉化爲jar 的工具。dex2jar。下載地址:https://github.com/pxb1988/dex2jar  這個工具提供了dex 與jar 之間的互相轉化。而且這種轉化是無損的,這意味着轉化後的jar可以作爲sdk文件在其他程序中調用。

類似jd-gui這樣的,但是無需經過轉化直接查看java代碼的工具有沒有?有的。這裏推薦兩個。

一個是jadx,這個工具可以直接打開apk或者dex,然後查看到對應的java僞代碼,個人其實是比較傾向於使用這個工具的,感覺用這個工具翻譯的java代碼可讀性要強一些。

另一個是bytecode-viewer。與jadx類似的,也支持直接打開dex和apk文件查看java的僞代碼。

3、jarsigner.exe

這個工具一看名字就知道,是用於簽名的。而且這個工具是java sdk自帶的。一般在 \Java\jdk1.8.0_181\bin 目錄下。用於給apk簽名。當然外面還有很多簽名工具,但是這個工具可以使用我們自己的簽名證書進行簽名。也是我比較常用的。

4、android monitor 

這個工具大家估計都很熟悉,因爲是android sdk自帶的。 用於查看android設備的當前狀態,非常好用。

此貼用於收集一些用得順手的工具,會不定期更新。但是限於篇幅,工具的用法不會在這說明

5、Android逆向助手

這其實是一款工具集,將逆向過程中經常性使用的一些工具都整合到一起了比如我們上面提到的apktool,dex2jar,jd-gui這些工具,然後提供一個exe進行調用,更加方便我們操作。當我們解壓開這個工具,進入到lib目錄下就能發現它包含的這些小工具了,當然,如果某個功能失效了,我們可以手動去更新下lib下的對應模塊。

 

6、ApkScan-PKID 查殼工具

是一款APK查殼工具PKID,程序是一個jar包,體積很小使用也方便。可以查網上目前流行的安卓apk的加密了什麼殼,同時分享dex節信息和簽名信息等,能夠檢測市面上主流加固。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章