news 2026/7/15 3:44:01

在 macOS 下用 mitmproxy 做 HTTP/HTTPS 抓包

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在 macOS 下用 mitmproxy 做 HTTP/HTTPS 抓包

大家好,我是jobleap.cn的小九。
在 macOS 下用 mitmproxy 做 HTTP/HTTPS 抓包,可以分成四步:安装、启动代理、配置系统/浏览器代理、安装并信任证书(HTTPS 必须)。 下面用最常用的 mitmweb 图形界面举例,顺带给出终端版 mitmproxy 的用法。[1][2][3]

安装 mitmproxy(macOS)

  • 使用 Homebrew(推荐):在终端执行
    brewinstall--cask mitmproxy
    安装完成后会有mitmproxy / mitmweb / mitmdump三个命令可用。
  • 如果不想用 Homebrew,也可以到官网下载独立二进制包,解压后直接运行对应可执行文件即可。

启动 HTTP/HTTPS 代理

mitmproxy 默认监听 8080 端口,对 HTTP/HTTPS 都生效(代理层面不区分协议)。

  • 启动浏览器 GUI:
    mitmweb -p8080
    启动后会监听127.0.0.1:8080,并在浏览器打开一个控制台,所有经过的 HTTP/HTTPS 请求都会在这里显示,可点选查看请求头、响应体等。
  • 启动终端交互界面:
    mitmproxy -p8080
    这是 TUI 版本,通过键盘操作进行流量查看和拦截修改,适合习惯键盘流的场景。

只抓 HTTP 的话,到这一步 + 配好代理已经够用,因为 HTTP 无须证书。HTTPS 再看后两节。

配置 macOS / 浏览器代理(HTTP + HTTPS)

目标是让要抓的流量都走到127.0.0.1:8080。下面以抓桌面浏览器为例。

  • 在 macOS 系统层配置(影响所有走系统代理的应用):

    1. 打开「系统设置」→「网络」。
    2. 选择当前使用的网络(如 Wi‑Fi),点「详情」或「高级」。
    3. 找到「代理」页签,勾选:
      • HTTP 代理
      • HTTPS 代理
    4. 服务器填127.0.0.1,端口填8080(需与 mitmweb/mitmproxy 实际监听端口一致)。
  • 单独在浏览器里配置(只影响该浏览器):

    • Chrome/Edge:通常跟随系统代理;如用了 SwitchyOmega 之类插件,就在插件里将 HTTP/HTTPS 代理都设为127.0.0.1:8080
    • Firefox:可在「设置 → 网络设置 → 手动代理配置」里单独指定 HTTP / HTTPS 代理为127.0.0.1:8080

此时访问纯 HTTP 网站(如http://example.com),mitmweb/mitmproxy 中已经可以看到完整请求/响应,无须额外配置,这就是完整的 HTTP 抓包流程。

HTTPS 抓包:安装并信任 mitmproxy 证书

要解密 HTTPS,关键是让系统/浏览器信任 mitmproxy 的根证书。流程概括为:通过代理访问http://mitm.it→ 下载证书 → 导入钥匙串并设为「始终信任」。

  1. 确认代理已生效:
    • 确保 mitmweb/mitmproxy 正在运行,且 macOS/浏览器代理已指向127.0.0.1:8080
  2. 在要抓包的浏览器中访问:
    • 打开http://mitm.it(注意是 http,不是 https)。
    • 页面会出现各平台的证书下载按钮,选择「macOS」或「Other」并下载证书文件(一般是.pem.crt)。
  3. 导入到 macOS 钥匙串:
    • 双击下载的证书,会自动打开「钥匙串访问」。
    • 建议导入到「系统」或「登录」钥匙串。导入后在证书列表中找到它(一般名字包含mitmproxy)。
  4. 设置为信任:
    • 在「钥匙串访问」中双击该证书,展开「信任」设置。
    • 将「使用此证书时」改为「始终信任」,关闭窗口时会要求输入密码确认。
    • 设置完成后,浏览器/系统会信任 mitmproxy 作为根 CA,从而允许它解密 HTTPS。

完成以上步骤后,再访问 HTTPS 网站(如https://www.baidu.com),mitmweb/mitmproxy 中就能看到解密后的请求和响应内容,包括 URL、头、Body 等,这就是完整的 HTTPS 抓包流程。

常用操作与脚本扩展

  • 在 mitmweb 中可以对流量做:
    • 按域名/路径过滤,只看特定服务。
    • 点选某条流量查看详细请求/响应头与 Body。
    • 拦截请求或响应,修改参数后重放,用来模拟各种场景。
  • 命令行脚本扩展:
    • mitmproxy 支持用 Python 写插件,对请求/响应做自动处理,例如自动加头、记录日志、Mock 返回等。
    • 插件通过-s your_script.py挂载,适合自动化测试或爬虫场景。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 16:15:47

_基于springboot的智能家居系统(11675)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

作者头像 李华
网站建设 2026/7/1 16:08:16

【完全免费】小丸工具箱超详细的视频体积压缩教程,从1G视频压缩到100M,几乎不损画质,完全免费,而且可以批量处理视频文件

——软件使用教程—— 小丸工具箱超详细的视频体积压缩教程,从1G视频压缩到100M——下载地址(防止被拦截,请用浏览器打开)—— 夸克地址: https://pan.dxlszyk.com/s/1jeou2e1k 多盘地址: https://www.…

作者头像 李华
网站建设 2026/7/1 16:08:13

【完全免费】黑白照片变彩色照片,一键处理百张黑白老照片,AI上色效果比手工精细10倍,效果太惊艳了,老照片AI修复上色全流程演示,支持离线使用!

——软件使用教程—— 黑白照片变彩色照片,一键处理百张黑白老照片,支持离线使用!——下载地址(防止被拦截,请用浏览器打开)—— 夸克地址: https://pan.dxlszyk.com/s/1jemfj9sk 多盘地址&a…

作者头像 李华
网站建设 2026/7/13 14:40:40

程序员必备的语义检索工具:基于GTE模型的高效相似度计算实践

程序员必备的语义检索工具:基于GTE模型的高效相似度计算实践 在现代信息处理系统中,语义理解能力已成为提升搜索、推荐和问答系统智能化水平的核心要素。传统的关键词匹配方式已难以满足复杂场景下的精准需求,而语义检索技术正逐步成为构建智…

作者头像 李华
网站建设 2026/7/11 15:01:48

一键智能抠图实践|基于CV-UNet大模型镜像快速部署批量处理方案

一键智能抠图实践|基于CV-UNet大模型镜像快速部署批量处理方案 在电商产品图处理、AI图像生成、数字内容创作等场景中,高质量的图像抠图能力已成为基础刚需。传统手动抠图效率低,而市面上多数在线工具存在隐私泄露、成本高、无法批量处理等问…

作者头像 李华
网站建设 2026/7/1 8:17:48

一键批量抠图实践|基于CV-UNet大模型镜像高效实现

一键批量抠图实践|基于CV-UNet大模型镜像高效实现 1. 引言:智能抠图的工程化落地需求 在电商、广告设计、影视后期等场景中,图像背景移除(即“抠图”)是一项高频且关键的任务。传统手动抠图效率低、成本高&#xff0…

作者头像 李华