Inspeckage,安卓動態分析工具

Inspeckage是一個用來動態分析安卓app的xposed模塊。Inspeckage對動態分析很多常用的功能進行了彙總並且內建一個webserver。整個分析操作可以在友好的界面環境中進行。可以參考:Inspeckage - Android Package Inspector

https://github.com/ac-pm/Inspeckage

Inspeckage的安裝就不贅述了,參考xposed框架的安裝以及使用。下面主要介紹一下Inspeckage的功能和使用。

安裝之後,可以在桌面上看到inspeckage的圖標。點開之後主界面如下:

在choose target下拉列表中選擇要分析的app,這裏以烏雲峯會puzzle1中的apk爲例進行介紹。然後在電腦的terminal中執行

adb forward tcp:8008 tcp:8008

轉發手機的8008端口到本地。在電腦上訪問http://127.0.0.1:8008 就可以看到inspeckage的web界面了。

如圖所示,inspeckage提供了對所分析apk的一些基本信息,提供直接下載apk到電腦,截圖手機屏幕等輔助功能,最核心的功能是監控share preferences,加解密函數的使用,http訪問等。下面一一分析。

設置選項中,提供了ssl uncheck,設置代理等。經過測試發現SSL uncheck效果一般。https流量依然很多抓不到。

使用logcat功能需要先轉發端口到本地。adb forward tcp:8887 tcp:8887

點擊start,再點connect就可以在網頁中實時查看該app的logcat輸出。

Tree view按鈕可以實時瀏覽app的數據目錄並直接下載文件到本地。

wooyun這個puzzle的writeup中是使用smali插樁的方式打印出了aes加密的密鑰。

如果採用inspeckage來分析的話,直接在crypto記錄中就可以看到。

由於這個apk採用的md5方法是寫在so中的,所以inspeckage的hash記錄中並沒有相關的記錄。這個可以採用hook自定義函數的方式來解決。
反編譯apk,找到調用so的方法爲getPart2,同理其實也可以手動hookgetPart1。

設置好hook的方法後,重啓app生效。

在hook的記錄中可以看到getPart2的返回值。Inspeckage在動態分析apk的過程可以快速獲得一些信息,節省分析的時間。


1. Inspeckage是一個簡單的應用程序(apk),對動態分析很多常用的功能進行了彙總,並且內建了一個HTTP服務器來提供友好的網頁界面


2. 下載鏈接:http://repo.xposed.info/module/mobi.acpm.inspeckage


### 運行界面 ###    choose target下拉列表中可以選擇要分析的APP




3. Module disabled表明測試環境中沒有安裝Xposed框架,用戶可以在沒有Xposed的情況下運行Inspeckage,但是絕大部分功能都要依賴Xposed框架,所以建議在測試環境中安裝該框架,本文只是簡單介紹工具的功能


4. 終端執行如下命令,轉發手機的8008端口到本地




5. 電腦上訪問 http://127.0.0.1:8008 就可以看到Inspeckage的web界面




6. 功能一:獲取APP基本信息(如上圖所示)


【1】權限:請求權限(Requested Permissions)、自定義權限(APP Permissions)

【2】組件:導出和非導出的組件(Activity、Service、Broadcast Receiver、Content Provider)

【3】共享庫(Shared Libraries)

【4】標誌位:Debuggable,Allow Backup

【5】其他:UID,GIDs,Package等


7. 功能二:實時查看應用程序的行爲(如上圖所示)


【1】Shared Preferences(日誌和文件)

【2】Serialization(序列化)

【3】Crypto(加密)、Hash

【4】SQLite數據庫

【5】HTTP、WebView、IPC等

【6】Hooks(自定義HOOK)


### Note ###

【1】上述功能基本都依賴Xposed框架,所以只是單純對功能進行介紹瞭解

【2】可以在界面上配置需要的功能項



【3】使用Logcat查看日誌的功能,需要先轉發8887端口到本地



點擊Start,再點connect就可以在網頁中實時查看app的logcat輸出



【4】設置自定義Hook






8. 功能三:其他操作


【1】開啓任意Activity組件(導出和非導出)

【2】調用Provider組件(導出和非導出)

【3】開啓、停止、重啓應用程序


9. 參考資料


【1】http://xdxd.love/2016/08/09/安卓分析輔助工具Inspeckage介紹/


【2】http://www.freebuf.com/sectool/98607.html



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