手機是人們必備的電子設備,手機上的各種應用程序可以幫助人們更好地生活和工作。其中,大部分應用程序都是通過網(wǎng)絡傳輸各種數(shù)據(jù),以實現(xiàn)各種功能。為了了解這些應用程序的工作狀態(tài),需要抓取傳輸?shù)木W(wǎng)絡數(shù)據(jù),然后通過分析數(shù)據(jù),了解應用程序的工作模式,防范惡意程序,保護用戶信息。本書共7章,主要內(nèi)容包括抓包基礎知識、手機直接抓包、模擬器抓包、外部抓包、基礎數(shù)據(jù)分析、HTTP/HTTPS數(shù)據(jù)抓包和分析、數(shù)據(jù)快速分析。本書適合手機應用開發(fā)人員、滲透測試人員、網(wǎng)絡維護人員和信息安全愛好者閱讀。通過本書的學習,可以幫助讀者了解和掌握手機數(shù)據(jù)抓包的各種方式,熟悉手機應用常用的網(wǎng)絡協(xié)議,并掌握對應數(shù)據(jù)的分析方式,從而保障手機信息安全。
前言
第1章 基礎知識1
1.1 手機抓包概述1
1.1.1 目的和意義1
1.1.2 法律邊界2
1.2 網(wǎng)絡基礎2
1.2.1 網(wǎng)絡連接方式2
1.2.2 協(xié)議基礎7
1.2.3 數(shù)據(jù)傳輸方式7
1.2.4 數(shù)據(jù)捕獲方式8
1.3 聯(lián)網(wǎng)管理9
1.3.1 設置聯(lián)網(wǎng)模式9
1.3.2 限制其他程序12
1.3.3 獲取網(wǎng)絡信息18
第2章 手機直接抓包21
2.1 使用Packet Capture抓包21
2.1.1 安裝Packet Capture21
2.1.2 捕獲數(shù)據(jù)包24
2.1.3 保存數(shù)據(jù)包28
2.2 使用bitShark抓包29
2.2.1 安裝bitShark29
2.2.2 捕獲數(shù)據(jù)包30
2.2.3 分析數(shù)據(jù)包34
2.2.4 過濾數(shù)據(jù)包40
2.2.5 導出數(shù)據(jù)包43
2.2.6 導出圖片47
2.2.7 數(shù)據(jù)包統(tǒng)計分析53
2.3 使用Xcode抓包61
2.3.1 下載并安裝Xcode61
2.3.2 獲取蘋果設備的UUID69
2.3.3 捕獲數(shù)據(jù)包71
第3章 模擬器抓包75
3.1 自建模擬器75
3.1.1 下載并安裝JDK75
3.1.2 下載并安裝Android SDK80
3.1.3 設置Android SDK87
3.1.4 設置Android SDK環(huán)境變量93
3.1.5 創(chuàng)建模擬器95
3.1.6 啟動模擬器102
3.2 配置模擬器環(huán)境104
3.2.1 安裝App104
3.2.2 捕獲數(shù)據(jù)包106
3.3 夜神模擬器109
3.3.1 安裝夜神模擬器109
3.3.2 開始抓包113
3.3.3 復制捕獲文件到本地116
第4章 外部抓包120
4.1 Wi-Fi熱點抓包120
4.1.1 啟動Wi-Fi熱點120
4.1.2 捕獲數(shù)據(jù)包126
4.2 藍牙熱點抓包128
4.2.1 啟動藍牙功能128
4.2.2 藍牙配對129
4.2.3 開啟藍牙移動熱點133
4.2.4 連接藍牙網(wǎng)絡134
4.2.5 捕獲數(shù)據(jù)包137
4.3 USB網(wǎng)絡抓包138
4.3.1 USB共享網(wǎng)絡138
4.3.2 USB互連網(wǎng)143
4.3.3 捕獲USB接口數(shù)據(jù)包148
4.4 Wi-Fi網(wǎng)絡監(jiān)聽抓包149
4.4.1 設置監(jiān)聽149
4.4.2 設置監(jiān)聽信道154
4.4.3 捕獲數(shù)據(jù)包158
4.4.4 過濾設備159
4.4.5 捕獲握手包162
4.5 解密數(shù)據(jù)包164
4.5.1 解密WEP加密包164
4.5.2 解密WPA/WPA2加密包167
4.5.3 永久解密170
4.6 路由器鏡像抓包173
4.6.1 設置鏡像端口173
4.6.2 捕獲數(shù)據(jù)包175
第5章 基礎數(shù)據(jù)分析177
5.1 DNS數(shù)據(jù)分析177
5.1.1 DNS協(xié)議工作流程177
5.1.2 DNS查詢178
5.1.3 DNS響應179
5.2 TCP數(shù)據(jù)分析181
5.2.1 TCP工作流程182
5.2.2 分析服務端口183
5.2.3 分析傳輸?shù)臄?shù)據(jù)187
5.3 UDP數(shù)據(jù)分析196
5.3.1 獲取IP信息196
5.3.2 分析服務端口198
5.3.3 分析傳輸?shù)臄?shù)據(jù)199
第6章 HTTP/HTTPS數(shù)據(jù)抓包和分析201
6.1 數(shù)據(jù)分析概述201
6.1.1 HTTP概述201
6.1.2 下載Fiddler202
6.1.3 安裝Fiddler203
6.1.4 Fiddler主界面介紹204
6.1.5 Fiddler的工作原理205
6.2 配置代理205
6.2.1 配置遠程代理205
6.2.2 配置Android設備代理208
6.2.3 配置蘋果設備代理209
6.3 配置HTTPS證書210
6.3.1 生成證書210
6.3.2 配置Android證書211
6.3.3 配置蘋果設備證書212
6.4 捕獲Web Session214
6.4.1 捕獲HTTP Session214
6.4.2 捕獲HTTPS Session215
6.4.3 Session的構成217
6.5 請求數(shù)據(jù)218
6.5.1 請求數(shù)據(jù)結構218
6.5.2 請求的網(wǎng)址218
6.5.3 通過網(wǎng)址傳輸?shù)臄?shù)據(jù)219
6.5.4 表單內(nèi)容223
6.5.5 提交Cookie數(shù)據(jù)224
6.6 響應數(shù)據(jù)225
6.6.1 響應數(shù)據(jù)結構225
6.6.2 Set-Cookie設置數(shù)據(jù)226
6.6.3 網(wǎng)頁數(shù)據(jù)228
6.6.4 圖片數(shù)據(jù)229
6.6.5 音樂數(shù)據(jù)231
6.7 修改數(shù)據(jù)232
6.7.1 修改客戶端提交的數(shù)據(jù)232
6.7.2 修改服務器返回的數(shù)據(jù)235
第7章 快速分析數(shù)據(jù)238
7.1 配置Xplico工具環(huán)境238
7.1.1 下載Xplico工具238
7.1.2 下載并安裝VirtualBox240
7.1.3 運行Xplico工具243
7.1.4 使用Xplico工具251
7.2 分析數(shù)據(jù)包255
7.2.1 獲取網(wǎng)址255
7.2.2 獲取圖片257
7.2.3 獲取視頻259