iOS抓包-charles和Stream

简单介绍几种抓包工具

1、Charles

Charles是一款流行的跨平台HTTP代理软件,常用于Web调试,它可以帮助你在开发过程中检查、修改或模拟HTTP/HTTPS请求和响应。以下是如何在iOS设备上使用Charles进行抓包的基本步骤:

第一步:安装Charles

  1. 下载并安装Charles。你可以从官网下载适合你操作系统的版本(Windows, macOS, Linux)。
  2. 安装完成后,启动Charles。

第二步:配置iOS设备

  1. 将你的iOS设备与电脑连接在同一Wi-Fi网络下。
  2. 在iOS设备上,打开"设置" -> "无线局域网"。
  3. 查找你当前连接的Wi-Fi网络详情,注意右侧的"i"图标,点击进入网络详细设置。
  4. 滚动到底部,选择"HTTP代理"选项,切换到"手动"。
  5. 输入代理服务器的IP地址和端口号。IP地址通常是你的电脑的局域网IP地址,端口号默认为8888(Charles的默认端口)。你可以在Charles的菜单栏中找到关于IP地址的信息。
  6. 保存设置。

第三步:信任Charles SSL Certificate

为了抓取HTTPS加密流量,你需要在iOS设备上安装Charles的SSL证书。

  1. 使用Safari浏览器在iOS设备上访问Charles的SSL证书下载页面,这将引导你下载并安装Charles的SSL证书。
  2. 安装证书后,进入"设置" -> "通用" -> "描述文件与设备管理",找到刚刚安装的证书并信任它。

第四步:开始抓包

现在,你已经在iOS设备上配置好了Charles代理,接下来就可以开始抓包了。

  1. 在Charles中,确保"Proxy"->"Enable Proxy"已经被勾选。
  2. 如果你想抓取HTTPS流量,请确保"Proxy"->"SSL Proxy Settings..."中包含了你想要抓包的域名或者通配符。
  3. 在你的iOS设备上进行你想要抓包的操作,这时所有的HTTP/HTTPS请求和响应都会被Charles捕捉并显示在其界面中。

第五步:分析抓包结果

在Charles的界面中,你可以看到所有被捕捉的请求和响应,包括URL、请求头、响应头、请求体、响应体等内容。双击任一行可以查看详细信息,这对于调试API接口非常有用。

2、Sniff Master

Sniff Master是一款专业级的网络分析工具,特别适合需要深度分析网络流量的开发者和安全研究人员。与Charles等工具相比,Sniff Master提供了更全面的协议支持和更强大的数据分析功能。

Sniff Master核心功能

  1. 全协议支持:支持HTTP/HTTPS、TCP/UDP、WebSocket等多种协议
  2. 实时分析:提供实时流量监控和统计图表
  3. 深度解析:能够解析加密流量,支持自定义解密规则
  4. 智能过滤:基于AI的智能过滤系统,可自动识别异常流量

使用场景

  • 移动应用开发调试
  • API接口测试
  • 网络安全分析
  • 性能优化

优势对比

功能 Charles Sniff Master
协议支持 HTTP/HTTPS 全协议支持
实时分析 基础 专业级
解密能力 有限 强大
学习曲线 简单 中等

3、Stream

Stream是一款iOS平台上的抓包工具,特别适合移动端开发者。

一、安装 Stream

  1. 越狱设备:Stream 要求设备已越狱。如果你的 iOS 设备未越狱,首先需要通过如 unc0ver、checkra1n 等工具进行越狱。

  2. Cydia 或 Sileo 应用商店:越狱后,你的设备上应有 Cydia 或 Sileo 这类第三方应用商店。打开它们并搜索 Stream。

  3. 下载与安装:找到 Stream 后,点击安装按钮。等待安装过程完成。

  4. 信任证书:首次使用 Stream 时可能需要信任其证书。进入设备的「设置」 > 「通用」 > 「描述文件与设备管理」,找到 Stream 的证书并信任之。

二、使用 Stream

  1. 启动 Stream:从主屏幕打开 Stream 应用。
  2. 配置代理服务器:Stream 默认作为 HTTP(S) 代理工作。确保你的设备 Wi-Fi 设置中的 HTTP 代理模式设置为手动,并且代理服务器地址和端口正确填写 Stream 提供的信息。
  3. 开始抓包:回到 Stream 应用内,点击开始监听网络流量。此时,所有通过代理的网络请求都会被捕获并显示在列表中。
  4. 过滤与查看数据包:Stream 支持按 URL、HTTP 方法等多种条件过滤数据包。点击具体的数据包可以查看详细的请求和响应头及内容。

4、Proxyman

Proxyman是一款现代化的HTTP调试代理工具,专为macOS设计,提供了直观的用户界面和强大的功能。

主要特点:

  • 原生支持Apple Silicon
  • 直观的UI设计
  • 支持HTTP/HTTPS流量拦截
  • 提供请求重放功能

5、Whistle

Whistle是基于Node.js开发的跨平台web调试代理工具,具有以下特点:

  • 支持HTTP/HTTPS/WebSocket
  • 支持通过规则过滤请求
  • 可扩展性强
  • 支持多设备同时调试

工具选择建议

对于大多数开发者来说,Charles和Sniff Master是最推荐的两种选择:

  • 初级用户:建议从Charles开始,它的界面友好,学习曲线平缓
  • 专业开发者:Sniff Master提供了更全面的功能,适合需要深度分析网络流量的场景
  • 移动端开发者:可以结合使用Stream或Proxyman进行移动端调试

无论选择哪种工具,都要注意合法合规使用,尊重用户隐私和数据安全。

相关推荐
米羊1214 小时前
fastjson (3修复)
网络·网络协议·安全
深念Y7 小时前
proxypin抓包工具获得nb实验室VIP(已失效)
游戏·网络安全·抓包·逆向工程·软件逆向·nb实验室·教育软件
Neolnfra8 小时前
攻防实战:数据窃取技术详解
web安全·网络安全·数据安全
小李独爱秋9 小时前
计算机网络经典问题透视:常规密钥体制与公钥体制最主要的区别是什么?—— 一文带你从“钥匙”看懂现代密码学核心
服务器·网络·tcp/ip·计算机网络·密码学
XLYcmy10 小时前
TarGuessIRefined密码生成器详细分析
开发语言·数据结构·python·网络安全·数据安全·源代码·口令安全
m0_4772031010 小时前
Hercules-HTB-writeUp
web安全·网络安全
几道之旅10 小时前
websocket.WebSocketApp是全双工的吗?
网络·websocket·网络协议
春蕾夏荷_72829772512 小时前
Sockets-2.3.9.9 UDP使用实例
c++·udp
西幻凌云12 小时前
TCP 解析:头部格式、三次握手与四次挥手
网络协议·tcp/ip·udp·tcp·三次握手·四次挥手·传输层
7ACE15 小时前
Wireshark TS | 超时重传时间不翻倍
网络协议·tcp/ip·wireshark