標籤:
1 Adb工具簡介
adb是一個用戶端-伺服器端程式, 其中用戶端是你用來操作的電腦, 伺服器端是android裝置。安裝方法:電腦上需要安裝用戶端,用戶端包含在sdk裡(android sdk的tools目錄中內建),或單獨安裝adb,裝置上不需要安裝,只需要在手機上開啟選項settings-applications-development-USBdebugging(USB偵錯模式)。常用adb命令:
1)查看裝置
adb devices 查看當前串連的裝置, 串連到電腦的android裝置或者模擬器將會列出顯示
2)安裝軟體
adb install 將指定的apk檔案安裝到裝置上
3)卸載軟體
adb uninstall <軟體名>
adb uninstall -k <軟體名> 如果加-k參數,為卸載軟體但是保留配置和快取檔案
4)登入裝置shell
adb shell 將登入裝置的shell,後面將是直接運行裝置命令, 相當於執行遠程命令
5)從電腦上傳送檔案到裝置
adb push <本地路徑> <遠程路徑> 用push命令可以把本機電腦上的檔案或者檔案夾複製到裝置
6)從裝置上下載檔案到電腦
adb pull <遠程路徑> <本地路徑> 用pull命令可以把裝置(手機)上的檔案或者檔案夾複製到本機
7)啟動和終止adb服務
adb start-server 啟動adb服務進程
adb kill-server 終止adb服務進程
8)顯示協助資訊,查看adb所支援的所有命令
adb help
2 Android抓包方法
工具包內容如下:
adb ——Google提供的安卓遠端偵錯工具 。(用於PC串連手機並輸入命令)
tcpdump——Linux系統中普遍使用的一款開源網路通訊協定分析工具。(放在手機內部進行抓包)
wireshark——window 系統下的抓包工具。(查看分析抓取的資料包)
抓包條件:手機需要取得 root許可權
使用方法:
1、 把adb工具放到PC任一目錄,然後進入cmd切換到工具目錄,如:
2、 通過USB線把手機和PC串連,並開啟手機的USB偵錯模式
3、 cmd 輸入:adb devices 這個命令是查看當前串連的裝置,如
4、 把tcpdump 工具拷貝到手機,cmd輸入: adb push <本地路徑> <遠程路徑> ,如:
5、 給tcpdump 執行許可權,分別輸入adb shell -> su ->chmod 6755 /data/local/tcpdump
6、 開始抓包,輸入:/data/local/tcpdump –p –s 0 –w /sdcard/test.pcap
crtl+c 結束抓包,這樣在手機/sdcard目錄裡面就會儲存一個test.pcap的檔案.
7、 把抓取的報文從手機上拷貝回電腦,輸入:adb pull <遠程路徑> <本地路徑> ,如:
然後就可以用 wireshark開啟查看報文內容了。
可以看到向10.0.0.172發送的報文,即是移動網路發送的報文。
中國移動 網關:10.0.0.172 HTTP連接埠: 80和8080 WAP連接埠:9201
中國聯通 網關:10.0.0.172 HTTP連接埠: 80和8080 WAP連接埠:9201
中國電信 網關:10.0.0.200 HTTP連接埠: 80
3 使用Fiddler工具進行抓包3.1 Fiddler工具簡介
Fiddler是強大且好用的Web調試工具之一,它能記錄用戶端和伺服器的http和https請求,允許你監視,設定斷點,甚至修改輸入輸出資料,Fiddler包含了一個強大的基於事件指令碼的子系統,並且能使用.net語言進行擴充,在web開發和調優中經常配合firebug使用。
Fiddler的運行機制其實就是本機上監聽8888(預設)連接埠的HTTP代理。 對於PC端Fiddler啟動的時候預設IE的代理設為了127.0.0.1:8888,而其他瀏覽器是需要手動設定,所以如果需要監聽PC端Chrome或其他應用的網路資料包,將其代理改為127.0.0.1:8888就可以監聽資料了,手機端按照下面的設定即可完成整個系統的http代理。
相對於通過adb使用tcpdump+wireshark抓包的優勢在於:
1) 無需取得手機root許可權
2) 對Android和Iphone同樣適用
3) 操作更簡單方便(第一次安裝配置,第二次只需設定代理即可)
4) 可以利用Fiddler的強大功能對資料包進行各種操作
5) 可以查看https請求(Fiddler提供解密)
注意:只能是手機已經串連上網,且與Fiddler所在的PC在同一區域網路內,手機能通過fiddler代理上網才能使用該方法進行抓包。
3.2 通過Fiddler進行手機抓包方法
1、 PC端安裝Fiddler,Fiddler作為Proxy 伺服器模式
2、 配置Fiddler允許監聽https
開啟Fiddler功能表項目Tools->Fiddler Options,選中decrypt https traffic和ignore server certificate errors兩項,如:
第一次會提示是否信任fiddler認證及安全提醒,選擇yes,之後也可以在系統的認證管理中進行管理。
3、 配置Fiddler允許遠端連線
如的菜單中點擊connections,選中allow remote computers to connect,預設監聽連接埠為8888,若被佔用也可以設定,配置好後需要重啟Fiddler以使配置生效,如:
4、 配置手機端
開啟手機串連到同一區域網路的wifi,並修改該wifi網路詳情(長按wifi選擇->修改網路)->顯示進階選項,選擇手動代理設定,主機名稱填寫Fiddler所在機器ip(與手機同一區域網路的IP),連接埠填寫Fiddler連接埠,預設8888,如:
這時,手機上的網路訪問在Fiddler就可以查看了:
手機抓包方法