mitmproxy安装与配置

简介: mitmproxy是一个免费的开源交互式的HTTPS代理工具。它类似于其他抓包工具如WireShark和Fiddler,支持抓取HTTP和HTTPS协议的数据包,并可以通过控制台形式进行操作。mitmproxy具有两个非常有用的组件:mitmdump和mitmweb。mitmdump是mitmproxy的命令行接口,可以直接抓取请求数据,而mitmweb是一个web程序,可以清楚地观察mitmproxy抓取的请求数据。

mitmproxy是一个免费的开源交互式的HTTPS代理工具。它类似于其他抓包工具如WireShark和Fiddler,支持抓取HTTP和HTTPS协议的数据包,并可以通过控制台形式进行操作。mitmproxy具有两个非常有用的组件:mitmdump和mitmweb。mitmdump是mitmproxy的命令行接口,可以直接抓取请求数据,而mitmweb是一个web程序,可以清楚地观察mitmproxy抓取的请求数据。

此外,mitmproxy的特点之一是它支持Python自定义脚本,这使得mitmproxy的使用更加灵活和强大。通过安装mitmproxy,用户可以实时查看、记录、修改数据,引发服务端或客户端的特定行为。mitmproxy是一个功能强大的抓包工具,具有广泛的应用场景,如网络调试、安全测试、数据分析等。

本文介绍mitmproxy的安装与配置,通过mitmproxy代理进行抓包。

一、mitmproxy的安装

首先需要安装好python,版本需要不低于3.6,且安装了附带了包管理工具pip
在命令行中输入pip install mitmproxy,等待安装完成。
安装完成后,系统将拥有mitmproxy、mitmdump、mitmweb三个命令,可以通过mitmdump检查一下mitmproxy是否安装成功了。
查看mitmproxy版本

二、运行mitmproxy

要启动 mitmproxy 用 mitmproxy、mitmdump、mitmweb 这三个命令中的任意一个即可,这三个命令功能一致,且都可以加载自定义脚本,唯一的区别是交互界面的不同。

启动mitmproxy后,客户端要配置指定通过mitmproxy代理来访问目标网站的服务资源。
mitmproxy代理工作原理

1、配置客户端代理

运行mitmproxy默认代理的端口是8080,所以要配置浏览器通过mitmproxy代理来访问目标网站。

方式一,设置全局代理

设置全局代理,在window中找到网络和Internet,点击手动设置代理,将使用代理服务器的开关打开,设置代理IP地址为127.0.0.1,端口为8080
设置全局代理

方式二,设置浏览器代理

通过浏览器插件设置浏览器代理,如chrome浏览器可以通过SwitchyOmega插件设置代理
通过SwitchyOmega插件设置代理

通过mitmproxy命令启动mitmproxy后通过设置代理后的浏览器访问http://xiejava.ishareread.com,可以看到通过mitmproxy代理后的访问流量日志。
http抓包日志情况

2、客户端安装mitmproxy提供的CA证书

对于访问https加密的网站需要证书才能解密,所以客户端需要安装mitmproxy提供的CA证书。
通过mitmporxy代理浏览器访问http: //mitm.it/ 将显示mitmproxy证书下载和安装指导页面
![mitmproxy证书下载和安装指导页面]

可以看到mitmproxy提供了各种操作系统的CA证书,点击"Show Instructions",将显示证书的安装指导,可以根据指导一步步安装成功。
证书的安装指导

对于Windows系统:

手工安装步骤:

  1. 双击mitmproxy提供的CA证书文件(通常是mitmproxy-ca.p12)。
  2. 在出现的导入证书引导页中,直接点击“下一步”按钮。
  3. 接下来会出现密码设置提示,这里不需要设置密码,直接点击“下一步”按钮。
  4. 选择证书的存储区域。通常选择“将所有的证书都放入下列存储”,然后点击“浏览”按钮,选择证书存储位置为“受信任的根证书颁发机构”,接着点击“确定”按钮。
  5. 点击“下一步”按钮完成证书的导入。
  6. 如果有安全警告弹出,直接点击“是”按钮即可。

自动安装步骤:

在window中用管理员权限运行PowerShell,在命令行控制台,进去到证书的目录,一般是在c:\Users\yourname.mitmproxy目录下。执行 certutil.exe -addstore root mitmproxy-ca-cert.cer 如下图所示。
自动安装证书步骤

安装好证书后,通过mitmproxy代理,我们来访问https协议的网站https://www.taobao.com。可以在后台看到mitmproxy抓取的https流量日志
mitmproxy抓取的https流量日志

至此,我们成功安装了mitmproxy,并配置了相应的CA证书,通过mitmporxy代理能够获取访问http和https网站的流量数据。后续我们将通过一个实例来进行mitmproxy抓包爬取京东APP的金榜排行的数据信息。


作者博客:http://xiejava.ishareread.com/

目录
相关文章
|
存储 Android开发 Python
使用 MitmProxy 自动抓取微信公众号阅读数、点赞和再看数据(一)
某天接到一个需要抓取某某微信公众的所有历史文章的阅读数、点赞和再看数据的需求。 为了解放双手,就用 Python 代码撸一个,选择 MitmProxy 代理作为抓包工具,因为它可以使用 Python 代码监听抓取到的 url,用于自动获取 cookie 等场景。
2939 0
使用 MitmProxy 自动抓取微信公众号阅读数、点赞和再看数据(一)
|
API
时间操作[取当前北京时间]免费API接口教程
该接口用于获取当前北京时间,支持时间戳等多种格式。请求方式为POST或GET,需提供用户ID、用户KEY及返回格式类型。接口免费,建议使用个人ID与KEY以独享调用频次。返回数据包含状态码和时间信息,支持多种时间格式输出。详情参见:https://www.apihz.cn/api/timeget.html
5787 4
|
人工智能 安全 数据安全/隐私保护
大模型安全撬壳计划(二) 参加大模型安全撬壳计划的一点心得
本文分享了作者在参与LLM及多模模型实践中的经验与心得,涵盖代码编写、多轮对话处理、本地模拟交互、越狱方法等内容,并提供了多个实用代码示例与策略建议。同时总结了对模型评分与文档支持的改进建议,适合对LLM应用与对抗攻击感兴趣的开发者与研究者参考。
1833 0
|
数据采集 存储 安全
python爬虫之app爬取-mitmproxy 的使用
mitmproxy抓包原理,设置代理,MitmDump运用,mitmproxy使用。
1880 0
|
Web App开发 Python
python抓包代理库mitmproxy
python抓包代理库mitmproxy
661 0
python抓包代理库mitmproxy
|
druid Java 数据库连接
SringBoot整合Druid+Mybatisplus实现多数据源
SringBoot整合Druid+Mybatisplus实现多数据源
SringBoot整合Druid+Mybatisplus实现多数据源
|
缓存 网络协议 网络安全
docker中DNS解析问题
【10月更文挑战第6天】
2337 6
一日一技:为mitmproxy设置上游代理
一日一技:为mitmproxy设置上游代理
2140 0
|
网络协议 安全 网络安全
ssrf检测防御与绕过
ssrf检测防御与绕过
|
数据采集 JavaScript 前端开发
JavaScript逆向爬虫——无限debugger的原理与绕过
JavaScript逆向爬虫——无限debugger的原理与绕过
1887 2

热门文章

最新文章