Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android常用逆向工具總結(未完待續)

Android常用逆向工具總結(未完待續)

編輯:關於Android編程

寫在前面的話

突然覺得我好無聊,寫這個有種浪費生命的感覺有沒有,不過項目結束的時候這個還是要寫的,以後寫還不如現在趁現在,趁著現在鏈接就在身邊直接寫了。

1.apktool的安裝和使用

1.1 apktool的安裝

apktool 的官網:
https://ibotpeaches.github.io/Apktool/

上面寫的很詳細了,你因為沒有問題的話那就直接看吧。
這裡寫圖片描述

安裝鏈接

首先我們需要下面兩個東西

apktool apktool.jar

首先 我們需要把https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/linux/apktool 這個鏈接保存為一個叫做apktool的文件,注意,這個文件是沒有後綴的。
你就打開安裝的那個鏈接,找到Linux安裝的那個地方,右鍵找到wrapper script這個地方,然後點擊鏈接另存為命名為apktool.


之後我們到https://bitbucket.org/iBotPeaches/apktool/downloads 這個頁面下載好我們的apktool.jar文件,下載最新的版本,然後改名字叫apktool.

將這個兩個文件移動到/usr/local/bin 這個目錄下,移動的時候確保這兩個文件都有運行的權限:

chmod a+x apktool
chmod a+x apktool.jar

這裡寫圖片描述
這裡寫圖片描述

這樣就搞定了,你可以試一試。

1.2 apktool的使用

這裡寫圖片描述

這裡寫圖片描述

下面我們來說一個比較常用的用法,如果我們有一個APK文件,我們還要把這個APK輸入到特定的文件夾中,或者說是目錄中去,那我們就可以用下面這個命令:<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:java;"> apktool d apkfile.apk -o /home/your_name/des_dir

-o 表示輸出到指定的目錄,/home/your_name/des_dir 假設為我們要輸出的目錄

要是這個目錄沒有存在我們使用 -o 會自動創建這個目錄,如果這個目錄已經存在了,那麼我們就用 -f 這個命令強制把這個目錄覆蓋了,裡面的東西都會沒有在的。這個是要注意的。



2.dex2jar的安裝和使用

2.1 dex2jar的安裝

dex2jar工具就是將 classes.dex文件這種二進制的字節碼文件轉換成比較容易閱讀的Java文件

我們可以使用jd-jui來看我們的源碼。

classes.dex文件包含了整個Android 的APK的所有源碼。

dex2jar官網,點擊跳轉

在這個頁面我們可以看見一個下載鏈接

這裡寫圖片描述

點擊Downloads這個按鈕就可以直接跳轉到我們的下載頁面
或者你可以直接點擊這個鏈接進行下載 dex2jar下載 我們一般選擇下載最近的版本。

這裡寫圖片描述

下載好之後我們會看到這樣一個文件夾:

這裡寫圖片描述

解壓:

這裡寫圖片描述

解壓之後我們把文件家重新命名一下,方便使用,直接就叫dex2jar.這個時候我們給這個文件夾,以及裡面的所有文件都賦執行權限

chmod -R 777 dex2jar/

只要把我們的APK文件的後綴改了,變成zip然後把其中的classes.dex文件放在我們的dex2jar文件夾下面然後運行

sh d2j-dex2jar.sh classes.dex

為了在任何地方都可以使用我們把這個路徑添加到我們的環境變量中。我們用下面這個方法將我們的dex2jar文件添加到我們的環境變量中去,當然也可以用其他方法設置環境變量。

這裡寫圖片描述

當然為了方便,我把裡面的d2j-dex2jar.sh直接換成了dex2jar.sh 這樣方便我們使用
這樣我們就可以在任何地方使用我們的dex2jar.sh了。

這裡寫圖片描述

我們可以看見在我們的~/test文件的目錄下面並沒有我們的dex2jar文件

這個時候要運行這個dex2jar 解析classes.dex文件就可以這樣:

dex2jar.sh classes.dex

注意:

運行腳本是有兩種方式的:
這裡寫圖片描述
這裡寫圖片描述

所以我們要在任意目錄下運行只需要將它所處的位置添加到環境變量中去,然後直接

script.sh 

就可以了。
如果你還要運行
sh script.sh 就會報錯,因為它會在當前目錄下找我們的腳本,如果腳本沒有在這個目錄下,那麼顯然是找不到的,就會報錯。

這裡寫圖片描述

注意:我們在哪個目錄下使用我們的dex2jar.sh 命令,那麼生成的 classes-dex2jar.jar 就會出現在那個目錄下

老版的生成的是classes_dex2jar.jar 老版指的是2014年的那個發行版,現在的這個下劃線變了下位置,我勒個去。。。。。
搞事情的趕腳


好的,今天就先分享到這裡,我簡直愛死我自己的電腦了,因為所有的設備到軟件全部是我自己配置的,所有設置,連vim 都被我設置的超級吊,每次寫代碼都停不下來。哈哈哈。工欲善其事必先利其器,biubiu,我愛死我的槍了,biubiu~

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved