python使用mitmproxy代理工具对APP/web的Http/Https接口抓包

Song • 6229 次浏览 • 0 个回复 • 2021年04月12日

mitmproxy是一组工具,为HTTP/1、HTTP/2和WebSockets提供一个交互式的、支持SSL/TLS的拦截代理。官网地址

一、安装mitmproxy

使用pip3安装mitmproxy

pip3 install mitmproxy

Mac系统可以使用brew安装:

brew install mitmproxy

二、启动mitmproxy工具

您可以从命令行/终端启动我们的三个工具中的任何一个。

  • mitmproxy会给你一个互动的TUI
  • mitmweb提供了一个基于浏览器的GUI
  • mitmdump提供简单明了的终端输出

如果您使用基于控制台的mitmproxy版本,我们强烈建议您开始学习教程。

三、mitmproxy使用教程

1、mitmweb教程

我们可以使用mitmweb启动一个Web浏览器控制台;

mitmweb -p 8880

使用手机配置好代理即可抓包:

mitmweb

2、mitmproxy教程

3、mitmdump教程

mitmdumpmitmproxy的命令行伴侣。它提供了类似tcpdump的功能,可让您查看,记录和以编程方式转换HTTP流量。请参阅--help标志输出以获取完整的文档。

a、示例:保存访问记录
mitmdump -w outfile

以代理模式启动mitmdump,并将所有访问记录写入outfile文件。

b、过滤访问记录
mitmdump -nr infile -w outfile "~m post"

在不绑定代理端口(-n)的情况下启动mitmdump ,从infile中读取所有流,应用指定的过滤器表达式(仅匹配POST),然后写入outfile文件。

c、客户端重播
mitmdump -nC outfile

启动mitmdump而不绑定到代理端口(-n),然后重播outfile(-C filename)中的所有请求。标志以明显的方式组合,因此您可以重播来自一个文件的请求,并将结果流写入另一个文件:

mitmdump -nC srcfile -w dstfile
d、运行脚本
mitmdump -s examples/simple/add_header.py

这将运行add_header.py示例脚本,该脚本仅向所有响应添加新的header。

e、脚本化数据转换
mitmdump -ns examples/simple/add_header.py -r srcfile -w dstfile

此命令从srcfile加载流,根据指定的脚本对其进行转换,然后将其写回到dstfile

f、静默执行

静默模式,降低内存使用!

mitmdump  -q examples/simple/add_header.py

原创文章,转载请注明 :python使用mitmproxy代理工具对APP/web的Http/Https接口抓包 - pytorch中文网
原文出处: https://ptorch.com/news/268.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
Pytorch是什么?关于Pytorch! Mitmproxy/mitmdump中文文档以及配置教程