android測試環境搭建

wyzsk發表於2020-08-19
作者: 瘦蛟舞 · 2014/07/24 14:22

0x01 測試機選擇:真機or模擬器


1.1 三大主流模擬器對比

Android Emulator Android-x86 GenyMotion
價格 free free Free: Non-commercial Paid: Freelance, Business
速度 Slow for ARM – Faster for x86 Fast Very fast
支援版本 Android Virtual Devices (All android versions) Only certain preconfigured devices, mostly tablet (Android 2.2-4.4) Pre-configured images for many tablet & phone devices of Google, HTC, LG, Motorola, Samsung, Sony (Android 2.3, 4.x)
HTTP代理 Yes (command-line option) Yes, via GUI Yes, via GUI
Transparent Man-in-the-middle Yes – via DNS server Yes, via Virtualbox Yes, via Virtualbox
Pre-rooted Yes Yes Yes
虛擬機器安全裝時間 5 minutes 15 minutes 5 minutes
相機支援 Since Android 4.0 Very limited Yes
GPS支援 Yes No Yes
Spoof IDs No No Paid version
Drag&Drop Support No No Yes
谷歌商店 No, but can be installed Yes No, but can be installed
開發者工具支援 Yes Yes Yes, via plugins
映象支援 One Offline, via Virtualbox Offline, via Virtualbox

1.2 總結

真機快功能全,模擬器成本低 有條件的話建議真機模擬器混合使用 如果用模擬器的話建議GenyMotion

0x02 探測修改流量


2.1 http代理設定

電腦代理:Fiddler、burp suite等

enter image description here

手機代理:proxydroid等

enter image description here

Proxydorid執行機制

enter image description here

預設設定只能代理80和443的http流量,如果是其他埠的http流量就需要配置iptables轉發埠到手機的8123或者8124埠上。

2.2 Ad-hoc無線網路

簡單說就是用自己電腦開個wifi熱點,這樣做比直接在同LAN中設定代理的好處是,android上的代理軟體不一定會把所有流量轉發到pc上,如果自己pc開的熱點就不會存在該問題,這樣就可以用wireshark抓取這些不能代理的流量了。 設定方法如下: Dos下執行,設定熱點

netsh wlan set hostednetwork mode=allow ssid=test key=test1234

控制皮膚裡共享網路

enter image description here

Dos下執行開啟熱點

netsh wlan start hostednetwork

2.3 ssl證照

從fiddler中匯出證照

enter image description here

手機中安裝fiddler證照

enter image description here

有些app自帶證照,可以解包檢視

enter image description here

然後合併匯入手機中

0x03 探測修改本地儲存


3.1 Root裝置

Root後才能進入應用資料目錄

3.2 本地儲存檢索

檔案種類: databases - SQLite 資料 shared_prefs – 程式私有檔案 cache – 快取資料 lib – 本地庫 files – 其他檔案 少數應用在sd卡中也儲存資料

3.3 檔案管理器應用

ES檔案瀏覽器(不能開啟sqlite)

enter image description here

RE(root explorer 能直接開啟sqlite,要好用一些)

enter image description here

3.4 ADB pull

如果用的es沒辦法開啟sqlite所以才有這步,用re的話就不需要這步可以在手機上直接檢視。不過pull到pc上看起來更直觀點。 Root許可權才能對應用程式目錄進行操作。

enter image description here

Chmod把許可權改為777就可以pull到pc上檢視了。

enter image description here

3.5 SSH root server

安裝SSHdroid,設定好引數即可遠端ssh上android裝置。

enter image description here

enter image description here

enter image description here

3.6 快照分析

透過快照進行差異對比能夠快速發現一些本地儲存的敏感資訊。

在進行操作如輸入使用者資訊前拍下應用目錄快照,就是複製一下。

enter image description here

enter image description here

然後進行進行登陸操作拍下再拍下快照

enter image description here

最後用diff比較兩次快照

enter image description here

總結:這種方法適合檔案較多的應用,檔案少的應用直接觀察檔案修改時間,然後進行檢視。

3.7 常見漏洞

不必要的敏感資訊儲存 敏感資訊明文儲存在外接裝置如sd卡中 敏感資訊明文儲存在私有目錄下 用弱加密演算法加密敏感資料 加密敏感資料用程式的硬編碼的靜態金鑰 加密敏感資料的動態金鑰儲存在全域性可讀或者私有目錄下

0x04 案例


Logcat資訊洩漏

WooYun: 光大銀行Android手機客戶端密碼明文洩漏

shared_prefs資訊洩漏

WooYun: 蘇寧易購使用者敏感資訊洩露

WooYun: 百度安卓設計不當重要資訊洩漏

明文傳輸

WooYun: 微付通Android客戶端敏感資訊明文儲存

ssl證照失效

WooYun: 中信銀行"動卡空間“Android客戶端缺陷導致使用者名稱密碼等資訊被劫持

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章