移動應用滲透測試中的敏感信息安全風險檢測需要對應用日志進行分析。 如果日志內容包含敏感信息,可能會造成數據泄露的風險。
當應用程序出現異常、Crash崩潰或者ANR阻塞時,通常表明應用程序存在某些問題。 這時就需要收集應用日志來定位錯誤位置,以幫助開發和調試修復程序。
2.收集app日志相關工具配置
日志系統提供記錄和查看系統調試信息的功能。 日志都是各種軟件和一些系統的緩沖區記錄的,可以通過命令查看和使用緩沖區。 它是 shell 本身的命令。 可以通過adb shell進入shell并執行命令,也可以直接通過adb運行。
2.1 ADB安裝及基本使用
adb 的全稱是 Debug。 它是一個命令行工具,您可以通過它與設備交互,并執行安裝/卸載應用程序、打開應用程序和查看應用程序日志等常見操作。
下面簡單列出了我們測試中常用的幾個 ADB 命令:
#?1.查看
adb?--help?#查看幫助手冊
adb?devices?#檢查連接到電腦的安卓設備,常用的檢查命令
adb?shell?dumpsys?activity?|?find?"mFocusedActivity"?#Android?7.0及以下查看前臺應用包名
adb?shell?dumpsys?activity?|?find?"mResumedActivity"?#Android?8.0及以上用此命令查看包名
adb?logcat?#打印log信息
adb?logcat?-v?time?#log信息顯示時間戳
adb?logcat?-v?time?>?d:\logcat.txt?#把日志信息重定向至d:/logcat.txt
#?2.連接與交互
adb?connect?ip:port?#通過WiFi進行遠程連接手機進行調試,手機和電腦需在同一個局域網上,計算機內部通信地址127.0.0.1,夜神模擬器默認的端口號是62001
adb?disconnect?ip:port?#斷開一個(ip:port)連接
adb?shell?#登錄設備shell(安卓的底層是Linux)
#?3.文件傳輸
adb?pull?<手機文件路徑>?<本機路徑>?#從手機拉取文件到本地電腦
adb?push?<本地電腦路徑>?<手機路徑>?#從本地推送文件到手機
#?4.安裝與卸載
adb?install?*.apk?#為了快速獲取apk的安裝包路徑,可以直接把apk直接拖到cmd的窗口,安裝成功會返回success
adb?uninstall??#卸載需要輸入應用包名
亞行安裝:
其實adb是一個免安裝工具。 使用adb時,只需從命令行調用adb工具即可。
1.首先根據系統版本下載adb??并獲取連接
2. 解壓下載的-tools zip包,并將-tools路徑添加到系統環境變量中。 然后在命令行執行adb查看adb版本,安裝配置成功,沒有報錯。
3. Mac os下可以直接使用Brew安裝
brew?install?android-platform-tools
安裝完成后,在根目錄添加環境變量,使用open打開編輯器,在下面插入以下代碼
export?ANDROID_HOME=/Users/用戶名/Library/Android/sdk
export?PATH=$PATH:$ANDROID_HOME/tools
export?PATH=$PATH:$ANDROID_HOME/platform-tools
保存后。 更新變量,檢查 adb
2. 語法命令
語法格式:
[adb]?logcat?[
2. 緩沖器
日志輸出量巨大,尤其是通信系統的日志。 因此,日志會輸出到不同的緩沖區。 目前,定義了四個日志緩沖區:
1)Radio:輸出通信系統的日志
2): 輸出系統組件的日志
3)Event:輸出事件模塊的日志
4)Main:所有java層的日志,遺跡不屬于上3層的日志
該緩沖區主要供系統組件使用,一般應用程序不需要關心它,應用程序的日志都輸出到主緩沖區中。 默認日志輸出(未指定緩沖區時)是輸出和主緩沖區的日志。
例子:
adb?logcat?–b?radio
adb?logcat?–b?system
adb?logcat?–b?events
adb?logcat?–b?main
//將緩沖區的log打印到屏幕并退出
adb?logcat?-d?
//清除緩沖區log(testCase運行前可以先清除一下)
adb?logcat?-c
//打印緩沖區大小并退出
adb?logcat?-g
//輸出log
adb?logcat?-f?/data/local/tmp/log.txt?-n?10?-r?1
3、日志采集過程中連接設備
首先通過usb數據線將設備連接至電腦,并開啟設備的USB調試。
使用adb命令檢查是否連接成功:
molengsu@mlsdeMacBook-Pro?/?%?adb?devices
List?of?devices?attached
FJH5T19114009780?device
查看設備日志輸出
我們直接通過adb查看的輸出是針對所有應用程序的
adb?logcat?-d??##所有應用logcat輸出
為了準確分析,我們可以通過應用程序pid查看我們想要分析的應用程序日志。首先列出設備上已安裝的應用程序查看應用程序包名稱
adb?shell?pm?list?package
然后獲取應用程序的pid,獲取的時候在手機上打開要獲取的應用程序,因為pid是分配給進程的,只有應用程序運行時才會分配pid。 需要注意的是pid是分配給進程的。 如果應用程序關閉并重新打開,則會分配一個新的進程,并且相同包名對應的pid將發生變化。
adb?shell?dumpsys?meminfo?com.xxxx.xxxx??##com.xxxx.xxxx是包名
獲取到pid后,就可以輸出應用日志了
adb?logcat?-d?--pid=30923
為了方便查找,還可以將日志導出到文件中。 導出的時候注意新建一個文本,并在里面寫入文本,設置可寫權限。
adb?logcat?-d?--pid=30923?>?logcat_test.txt
過去的推薦
知識星球產品和服務
團隊內部平臺:潮汐在線指紋識別平臺| 聽潮漏洞情報平臺| Tide 資產管理和威脅監控平臺 | 潮汐網絡空間資產圖譜| 潮音漏洞檢測平臺| 平臺| SRC資產監控平臺| ……
星球共享方向:網絡安全|紅藍對抗|移動安全|應急響應|工控安全|物聯網安全|密碼學|人工智能|CTF等。
星球知識維基:紅藍對抗|漏洞武器|遙控免殺|移動安全| ..
星球網盤資訊:安全法律法規| 安全認證信息| 代碼審計| 滲透安全工具| 工控安全工具| 移動安全工具|
掃碼加入,一起學習~