mitmproxy

本文提供了在Ubuntu和Mac系统上安装mitmproxy的详细步骤。包括安装所需的依赖库,使用pip进行安装,并介绍如何启动mitmproxy指定IP及端口。适合希望拦截并调试HTTP/HTTPS流量的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mitmproxy 安装使用

>

Ubuntu

sudo apt-get install python-setuptools build-essential python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev
wget https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz
sudo tar -zxvf pip-1.4.1.tar.gz    
sudo python setup.py install
sudo pip install mitmproxy

使用自己的主机IP+自定义PORT启动 mitmproxy -b 192.168.1.100 -p 9527

参考
http://greenrobot.me/devpost/how-to-debug-http-and-https-traffic-on-android/
http://greenrobot.me/devpost/how-to-debug-android-http-get-started/

Mac
http://www.cnblogs.com/balaamwe/p/4185628.html

### mitmproxy 拦截 HTTP/HTTPS 流量的使用教程 #### 工具概述 mitmproxy 是一款功能强大的抓包工具,能够拦截、查看以及修改 HTTP 和 HTTPS 的流量。其核心原理在于通过中间人攻击的方式,在用户的设备上安装自签名证书来解密 HTTPS 数据流[^1]。 #### 基础环境准备 为了成功运行 mitmproxy 并拦截网络流量,需完成以下准备工作: - **安装 mitmproxy**: 可以通过 `pip install mitmproxy` 或者下载官方二进制文件进行模块安装[^3]。 - **配置 SSL/TLS 解密**: - 需要将 mitmproxy 自动生成的 CA 根证书导入目标设备的信任存储中。这一步对于 HTTPS 抓包至关重要,因为只有信任该证书才能正常解密并显示加密流量的内容。 #### 启动与基本命令 启动 mitmproxy 主要有三种方式,分别对应不同的交互需求: 1. **Console UI (mitmproxy)** 运行如下命令即可进入基于终端界面的操作模式: ```bash mitmproxy ``` 此种方式适合希望手动处理每一个请求和响应的情况。 2. **Command-line Interface (mitmdump)** 如果倾向于脚本化批量操作,则推荐使用 mitmdump: ```bash mitmdump -s your_script.py ``` 上述例子展示了如何加载 Python 脚本来自动化修改或过滤特定条件下的流量。 3. **Web-based Interface (mitmweb)** 对于偏好图形化管理的人来说,开启 web 版本会更加直观方便: ```bash mitmweb --listen-port 8080 ``` 默认情况下会在本地主机开放端口 8080 提供服务访问地址 http://localhost:8080[^2]。 #### 实际应用案例 假设现在需要捕获某个 Android 手机的应用程序发出的所有 HTTPS 请求: 1. 将手机连接至同一 Wi-Fi 网络下; 2. 设置路由器或者电脑作为网关,并启用透明代理指向 mitmproxy 监听的 IP 地址及端口号(比如 192.168.x.x:8080); 3. 下载由 mitmproxy 创建好的 ca-cert.pem 文件传输给移动装置然后按照提示步骤添加到系统受信认证机构列表里去验证身份合法性; 4. 开始监控后就能看到所有的明文形式展示出来的原始数据包详情了! ```python from mitmproxy import http def request(flow: http.HTTPFlow) -> None: if "example.com" in flow.request.pretty_url: print(f"Intercepted Request to example.com: {flow.request.method} {flow.request.path}") ``` 上述代码片段演示了一个简单的场景——每当有发往 example.com 的请求经过时都会打印相关信息出来。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值