抓包工具proxy (https抓包软件教程)

不论是普通的前后端开发人员,还是做爬虫、逆向的爬虫工程师和安全逆向工程,必不可少会使用的一种工具就是HTTP抓包工具。说到抓包工具,脱口而出的肯定是浏览器F12开发者调试界面、Charles(青花瓷)、Fiddler(小提琴)、Wireshark、BurpSuite等,然后在此之后,又一跨平台、功能强大的HTTP调试代理工具横空出世,它就是Proxyman,接下面就详细介绍该工具的功能及使用。

https抓包软件教程,流行的http抓包工具

Proxyman界面说明

1、Proxyman介绍

Proxyman 是一款直观易用的 HTTP 调试工具,拥有出色的 UI 和交互设计, 性能强劲资源占用低。自动生成证书,轻松在 Mac 端启用 SSL 代理抓包,并且集成移动设备的调试。监控应用和 SSL Web 服务器之间所有的 HTTP / HTTPS 流量,方便开发人员进行数据观察及流量分析。

虽然它刚开始上线是以Mac OS端为主要使用对象,但是它不仅支持Mac OS,还支持移动端IOS及Android。当然大家更关心的是不是可以在Windows端使用,Windows体验版现已上线,大家可以通过官网*载下**试用。

Proxyman界面美观且简洁,可以自定义布局,多设备管理,一屏调整预览所需的关键信息。

  • ✅ 100% 由 Apple Swfit NIO 为高性能编写
  • ✅ 拦截 HTTP/HTTPS (SSL) 请求。
  • 支持 iOS 模拟器和 iOS 和 Android 设备。
  • WebSocket网络套接字调试。
  • 现代直观的用户界面。
  • 专为 macOS 打造,现 Windows 体验版`已上线。
  • 基本调试工具:Compose、Repeat、filter……
  • 高级工具:本地映射、远程映射、断点、备份列表、外部代理、无缓存、Protobuf 和清除缓存。
  • 可定制的工作区。
  • 新功能、新改进每两周构建一次。
  • 100% 免费所有基本功能。
  • macOS 10.12+

*载下**地址

官方*载下**地址:https://proxyman.io/

官方文档地址:https://docs.proxyman.io/

https抓包软件教程,流行的http抓包工具

主题有多种选择

2、证书配置

安装步骤在此省略,可自行前往官网*载下**EXE、DMG、IOS安装Proxyman

为了拦截加密的 HTTPS 消息(请求或响应),您必须在当前计算机上安装**Proxyman CA 证书。**此步骤对于 iOS、Android 设备、iOS 模拟器、Java VM 和 Firefox 也是强制性的。

这里只演示电脑端,手机端通过证书菜单->在IOS或Android上安装证书,然后根据提示在所连接的Wi-Fi修改代理IP和端口,访问http://proxy.man/ssl即可*载下**proxyman的证书,安装即可

您可以通过导航到安装 Proxyman CA 证书

  • 证书 菜单 ->在这台 Mac 上安装证书...

https抓包软件教程,流行的http抓包工具

安装证书

  • 安装成功后,可以在设置中查看是否已安装,标号1代表安装成功,标号2或3可查看代理端口号

https抓包软件教程,流行的http抓包工具

证书安装成功及端口查看

证书安装配置完成后,通过浏览器访问相关页面(需开启Proxyman)即可看到抓包信息了

https抓包软件教程,流行的http抓包工具

抓包示例

3、基础功能

1 - 请求/响应预览器

安装 证书 并在域或客户端上启用 HTTP 响应 后,您的网络流量将立即显示在 Proxyman 窗口内,默认分为三个主要区域:

  • 左侧面板上的源列表
  • 中间面板上的流列表
  • 右侧面板上的流内容

https抓包软件教程,流行的http抓包工具

请求响应预览

正文内容预览器

取决于 Request 或 Response 的内容是什么:Proxyman 会自动显示在单独的选项卡中:

  • Header :所有表头(键值表)
  • Cookies :标头中的 Cookie键
  • Auth :标头中的 身份验证 密钥
  • Body : 消息正文:Proxyman 根据 Content-Type 自动格式化和美化正文内容,例如 JSON、PNG、GIF、Raw Data、...
  • Query :如果请求有查询,则显示所有查询。
  • Raw :原始 HTTP 消息。
  • Protobuf 消息
  • 消息包
  • 多部分/表单数据

自定义预览器

  • 将 BODY 格式化为 JSON ,但 Content-Type 不是 application/json
  • 将正文格式化为 Protobuf ,但 Content-Type 不是 application/x-protobuf
  • 在 Web 视图上呈现 HTML 页面
  • 美化 缩小文件(HTML、CSS、JS)
  • 多部分/表单数据
  • 尝试将正文格式化为所选类型,而不管 Content-Type
  • 将消息包 (msgpack) 转换为 JSON
  • 生成器到 Swift、Node、Javascript、cURL……
  • GraphQL 查询更漂亮

如: 美化Javascript文件

https抓包软件教程,流行的http抓包工具

Reponse预览格式化

Body预览器

身体预览器会自动美化内容并提供方便的次要功能:

  • Tree View : 以 Tree View 模式表示 JSON
  • Hex : 以十六进制格式显示正文
  • 仅导出正文:能够将您的正文内容导出到文件。适用于原始数据或二进制数据
  • 打开方式:您可以使用您喜欢的编辑器打开正文内容。 Sublime Text是 mime

https抓包软件教程,流行的http抓包工具

Body预览

JSON 树视图模式

Proxyman 支持原生 JSON 树视图模式,它显示一个 JSON Body。它允许开发人员:

  • 按JSON搜索 JSON
  • 像 Google Developer Tool 一样复制 JSON 节点

https抓包软件教程,流行的http抓包工具

JSON 树视图

2 - SSL 代理

提示:Proxyman默认不解析HTTPS流量,需打开SSL代理配置,并添加过滤规则,只有添加了规则的域名或应用才会自动解析,默认只能添加5条规则,超过5条或无限制需付费。

Proxyman 可以用作中间人,记录您的应用程序和 SSL Web 服务器之间的所有 HTTP/HTTPS 流量。Proxyman 将动态地即时生成证书,这使开发人员能够以 纯文本形式查看 HTTPS

您可以为以下方面定义规则:

  • 包含列表 :拦截来自应用程序/域的流量,如果它在包含列表中
  • 排除列表 :忽略来自排除列表中的应用程序/域的所有流量

https抓包软件教程,流行的http抓包工具

SSL规则

如何在特定域或应用程序上启用 SSL 代理(两种方式)

  • 右键单击左侧面板上的应用程序或域 -> 启用 SSL 代理

https抓包软件教程,流行的http抓包工具

对站点开启SSL

  • 右键单击请求 -> 启用 SSL 代理

https抓包软件教程,流行的http抓包工具

对某请求开启SSL

3、高级功能

1 - 编辑并重发请求

对于需要直接在 Proxyman 应用程序上测试 Endpoint 而无需从浏览器或客户端应用程序发出新请求的开发人员来说,Edit & Repeat 是一个方便的工具。

快速更改所选请求的 Query Header Body 并测试来自服务器的 Response

https抓包软件教程,流行的http抓包工具

编辑请求1

https抓包软件教程,流行的http抓包工具

编辑请求2

2 - 编辑新请求

Proxyman可以同Postman或ApiPost等工具一样新建请求,填写请求头及请求参数进行GET、POST等请求,调试验证接口。

通过主界面工具 -> 撰写,进入接口编辑窗口进行网址、请求方法、参数等信息的填写,并确定发送请求

https抓包软件教程,流行的http抓包工具

新建请求

3 - 代码生成器

该功能可帮助你自动生成针对特定代码语言的 HTTP/HTTPS 请求

https抓包软件教程,流行的http抓包工具

代码生成器

4 - 断点

断点 是一种方便的工具,可帮助开发人员 动态编辑请求和响应 的内容。可以在 请求或响应上设置断点

  • 修改请求 URL,包括 Scheme、Host、Path、Port、HTTP Method(适用于 Proxyman 2.35.4+)
  • 修改请求/响应的 HTTP 标头
  • 修改请求中的查询或表单条目
  • 修改 Authorization/Cookie/Set-Cookie 标头
  • 修改请求/响应的 HTTP 正文
  • 更改响应 HTTP 状态代码

右键单击请求 -> 工具 -> 断点

https抓包软件教程,流行的http抓包工具

断点

5 - 自定义脚本

Proxyman 提供了脚本功能,开发人员可以编写 JS 代码以灵活的方式操作 Request/Response。

  • 通过 JS 代码实现 Map Local / Map Remote / Breakpoint。 快 100 倍
  • 更改 请求内容 ,包括 Domain、Host、Scheme、Port、Path、HTTP Method、HTTP Headers、Query、Body (Encoded-Form、JSON、plain-text)
  • 更改 响应内容 ,包括 HTTP Status Code、HTTP Headers、Body(JSON、Encoded-Form、plain-text、binary...)
  • 为常见任务提供大量内置插件和库,例如散列、编码/解码、JSON-文本转换器、美化……
  • 能够 编写自己的 JS 插件或库
  • 旨在取代 Charles Proxy 的 Rewrite GUI Tool
  • 使用ShareState 或环境在每个脚本或当前会话之间分配和接收共享状态

https抓包软件教程,流行的http抓包工具

自定义脚本

6 - 正则表达式

Proxyman 在为所有可用工具定义匹配规则时支持 Wildcard 和全匹配 Regex(正则表达式)

这是一个方便的工具,可以帮助您准确定义哪些请求应该触发该工具

https抓包软件教程,流行的http抓包工具

正则匹配

Proxyman的一些日常会使用到的功能就罗列到这里了。该工具还有很多强大的功能,如果需要更详尽的了解及使用,请参考官方文档说明进行(文档链接在第一节*载下**地址部分)。如果你是用macOS的,的确会比Charles方便直观许多,Window还在体验中,有需要可*载下**体检。

结语

人生是一条没有回程的单行线,上帝不会给你一张返程的票。