手机是人们必备的电子设备,手机上的各种应用程序可以帮助人们更好地生活和工作。其中,大部分应用程序都是通过网络传输各种数据,以实现各种功能。为了了解这些应用程序的工作状态,需要抓取传输的网络数据,然后通过分析数据,了解应用程序的工作模式,防范恶意程序,保护用户信息。本书共7章,主要内容包括抓包基础知识、手机直接抓包、模拟器抓包、外部抓包、基础数据分析、HTTP/HTTPS数据抓包和分析、数据快速分析。本书适合手机应用开发人员、渗透测试人员、网络维护人员和信息安全爱好者阅读。通过本书的学习,可以帮助读者了解和掌握手机数据抓包的各种方式,熟悉手机应用常用的网络协议,并掌握对应数据的分析方式,从而保障手机信息安全。
前言
第1章 基础知识1
1.1 手机抓包概述1
1.1.1 目的和意义1
1.1.2 法律边界2
1.2 网络基础2
1.2.1 网络连接方式2
1.2.2 协议基础7
1.2.3 数据传输方式7
1.2.4 数据捕获方式8
1.3 联网管理9
1.3.1 设置联网模式9
1.3.2 限制其他程序12
1.3.3 获取网络信息18
第2章 手机直接抓包21
2.1 使用Packet Capture抓包21
2.1.1 安装Packet Capture21
2.1.2 捕获数据包24
2.1.3 保存数据包28
2.2 使用bitShark抓包29
2.2.1 安装bitShark29
2.2.2 捕获数据包30
2.2.3 分析数据包34
2.2.4 过滤数据包40
2.2.5 导出数据包43
2.2.6 导出图片47
2.2.7 数据包统计分析53
2.3 使用Xcode抓包61
2.3.1 下载并安装Xcode61
2.3.2 获取苹果设备的UUID69
2.3.3 捕获数据包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环境变量93
3.1.5 创建模拟器95
3.1.6 启动模拟器102
3.2 配置模拟器环境104
3.2.1 安装App104
3.2.2 捕获数据包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 捕获数据包126
4.2 蓝牙热点抓包128
4.2.1 启动蓝牙功能128
4.2.2 蓝牙配对129
4.2.3 开启蓝牙移动热点133
4.2.4 连接蓝牙网络134
4.2.5 捕获数据包137
4.3 USB网络抓包138
4.3.1 USB共享网络138
4.3.2 USB互连网143
4.3.3 捕获USB接口数据包148
4.4 Wi-Fi网络监听抓包149
4.4.1 设置监听149
4.4.2 设置监听信道154
4.4.3 捕获数据包158
4.4.4 过滤设备159
4.4.5 捕获握手包162
4.5 解密数据包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 捕获数据包175
第5章 基础数据分析177
5.1 DNS数据分析177
5.1.1 DNS协议工作流程177
5.1.2 DNS查询178
5.1.3 DNS响应179
5.2 TCP数据分析181
5.2.1 TCP工作流程182
5.2.2 分析服务端口183
5.2.3 分析传输的数据187
5.3 UDP数据分析196
5.3.1 获取IP信息196
5.3.2 分析服务端口198
5.3.3 分析传输的数据199
第6章 HTTP/HTTPS数据抓包和分析201
6.1 数据分析概述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 请求数据218
6.5.1 请求数据结构218
6.5.2 请求的网址218
6.5.3 通过网址传输的数据219
6.5.4 表单内容223
6.5.5 提交Cookie数据224
6.6 响应数据225
6.6.1 响应数据结构225
6.6.2 Set-Cookie设置数据226
6.6.3 网页数据228
6.6.4 图片数据229
6.6.5 音乐数据231
6.7 修改数据232
6.7.1 修改客户端提交的数据232
6.7.2 修改服务器返回的数据235
第7章 快速分析数据238
7.1 配置Xplico工具环境238
7.1.1 下载Xplico工具238
7.1.2 下载并安装VirtualBox240
7.1.3 运行Xplico工具243
7.1.4 使用Xplico工具251
7.2 分析数据包255
7.2.1 获取网址255
7.2.2 获取图片257
7.2.3 获取视频259