前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mitmproxy -一个交互式HTTPS代理

mitmproxy -一个交互式HTTPS代理

作者头像
huolong
发布2024-05-06 09:33:56
1580
发布2024-05-06 09:33:56
举报
文章被收录于专栏:技术指北技术指北

mitmproxy 是一款开源的网络代理工具,可以用于拦截、查看、修改和重放 HTTP、HTTPS、HTTP2、WebSockets,以及 TCP 数据。它的核心特性包括交互式 UI、CLI 接口,和 Python API。mitmproxy 提供了多种有效的工具,包括 mitmproxy 命令行界面,mitmweb 网络界面,mitmdump 备份工具等。

mitmproxy的github地址如下:https://github.com/mitmproxy/mitmproxy 目前已经拥有34.4k 的star。足以证明这个网络代理神器的欢迎程度

它的官网如下,这里着重说一下mitmproxy的一些主要特性

  1. 交互式控制台界面:mitmproxy 提供了一个实用且功能强大的控制台接口,使用户能够实时查看并操作 HTTP 流量。
  2. 网络界面:mitmweb 是 mitmproxy 的 Web-based UI。你可以在任何地方通过浏览器查看和控制 HTTP 流量。
  3. Python脚本支持:mitmproxy 提供强大的 Python 脚本功能,你可以使用 Python 脚本来修改 HTTP 流量。
  4. SSL (Secure Sockets Layer)证书生成:mitmproxy 能够在飞行模式下动态的为任何领域创建和签署 SSL 证书,使其能够拦截安全的 HTTP 连接。
  5. 保存和加载流:你可以使用 mitmdump 工具保存 HTTP (S)流程到磁盘,然后在之后加载它们回传到 mitmproxy。 模块化:mitmproxy 的模块化架构使其易于扩展和定制。 mitmproxy的使用也很简单,前提是需要在你要使用的机器上安装Python。 安装mitmproxy:打开命令行终端,并输入以下命令来安装mitmproxy即可: pip install mitmproxy

mitmproxy提供了三种主要的工具:mitmproxy,mitmweb和mitmdump。

mitmproxy是一个交互式的命令行界面,请在命令行或者终端中输入mitmproxy来启动它。

mitmweb则是一个基于浏览器的图形界面,你可以通过在命令行或者终端中输入mitmweb来启动它。

mitmdump是非交互式的,提供终端输出。你可以通过在命令行或者终端中输入mitmdump来使用这个工具。

在这里我们一般使用交互式的或者 web的mitmproxy 输入mitmproxy,它会默认监听8080端口,

代码语言:javascript
复制
(venv) E:\demo\>mitmweb
HTTP(S) proxy listening at *:8080.
Web server listening at http://127.0.0.1:8081/

如果端口被占用或者自定义端口,那么在启动时候加-p 参数指定端口即可。例如我们通过web形式启动mitmproxy并且指定端口为8888 mitmweb -p 8888 8081则是我们的浏览器页面。 HTTP(S) proxy listening at *:8888. Web server listening at http://127.0.0.1:8081/

接下来我们要抓包进行分析,大多请求都是HTTPS的。所以需要我们安装对应的证书,这一步其实也很简单,在Android 或者IOS 上我们进行设置网络代理。服务器IP填写启动mitmproxy的机器IP,端口填写指定的端口,比如8888。然后在浏览器中打开http://mitm.it,如果设置正确,它应该会展示一个简易的页面,引导你安装mitmproxy的证书。

根据自己的设备来下载对应的证书,然后进行安装即可。

然后你就会发现所有请求都会在mitmweb 的页面上展示,在这个页面,我们可以看到请求和响应的各种信息,也可以进行请求重发。同时也可以配合mitmproxy对应的API,来通过Python将请求拦截和做处理,实现接口自动化测试方案。非常好用。

创作不易,如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024年05月05日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com