0
点赞
收藏
分享

微信扫一扫

mitmproxy抓包


0.mitmproxy功能简介

  1. 实时拦截、修改 HTTP/HTTPS 请求和响应
  2. 可保存完整的 http 会话,方便后续分析和重放
  3. 支持反向代理模式将流量转发到指定服务器
  4. 支持 macOS 和 Linux上的透明代理模式
  5. 支持用 Python 脚本对 HTTP 通信进行修改

1. 安装mitmproxy

pip3 install mitmproxy

➜  mitmproxy pip3 show mitmproxy
Name: mitmproxy
Version: 9.0.1
Summary: An interactive, SSL/TLS-capable intercepting proxy for HTTP/1, HTTP/2, and WebSockets.
Home-page: http://mitmproxy.org
Author: Aldo Cortesi
Author-email: aldo@corte.si
License: MIT
Location: /Users/apus/Library/Python/3.9/lib/python/site-packages
Requires: certifi, pyOpenSSL, protobuf, mitmproxy-wireguard, hyperframe, publicsuffix2, wsproto, urwid, h2, h11, asgiref, msgpack, kaitaistruct, pyparsing, typing-extensions, tornado, cryptography, Brotli, pyperclip, flask, sortedcontainers, ldap3, ruamel.yaml, zstandard, passlib
Required-by: 

brew install mitmproxy

2.核心组件简介

mitmproxy抓包_后端

  1. mitmproxy
  2. mitmproxy抓包_.net_02

  3. mitmproxy 是一个控制台工具,允许交互式检查和修改 HTTP 流量。它与 mitmdump 的不同之处在于所有流都保存在内存中,这意味着它旨在获取和处理小样本。使用 ? 问号键查看上下文相关使用文档。
  4. mitmweb
  5. mitmproxy抓包_flask_03

  6. mitmweb 是 mitmproxy 的基于 Web 的用户界面,允许交互式检查和修改 HTTP 流量。与 mitmproxy 一样,所有流都保存在内存
  7. mitmdump

1. 保存流量包
# 开启代理监听模式(默认8080端口),并将抓到的所有包保存到 outfile
mitmdump -w outfile

2. 过滤并保存流量
mitmdump -nr infile -w outfile "~m post"
启动 mitmdump 在不绑定代理端口(-n)的情况下,从 infile 读取所有流,并按指定的表达式(仅匹配 POST)过滤后,写入 outfile。

3. 客户端重放
mitmdump -nC outfile
启动 mitmdump 在不绑定到代理端口 (-n)的情况下,然后重放来自 outfile (-C 文件名) 的所有请求。
显然,你也可以重放一个文件(srcfile),并将其写入另一个文件(dstfile):
mitmdump -nC srcfile -w dstfile
https://docs.mitmproxy.org/stable/overview-features/#client-side-replay

4. 执行脚本
mitmdump -s examples/simple/add_header.py
运行 add_header.py 官方示例脚本,该脚本是为所有 response 添加一个新标头。

5. 数据转换
mitmdump -ns examples/simple/add_header.py -r srcfile -w dstfile
此命令从 srcfile 加载流,根据指定的脚本对其进行转换,然后将其写回 dstfile。

3. 安装SSL证书

mitmproxy 作为一个常规的http代理服务器使用时,默认监听 http://localhost:8080

手机浏览器输入网址http://mitm.it下载证书

mitmproxy抓包_.net_04


如果显示如下,则说明代理没有成功

If you can see this, traffic is not passing through mitmproxy.

使用 mitmproxy 抓包时,发现很多请求会返回 413 错误,找到解决方案是抓包时候,添加 --set http2=false 参数,比如:

mitmweb.exe -s .\gid.py --set http2=false

android12 安装https抓包证书

使用magisk+lsposed+MagiskTrustUserCerts 下面资料有安装magisk的方法
安装完成后,直接按照普通的安装即可
步骤: 设置->安全->加密与凭据->安装证书->CA证书 找到抓包证书后即可安装

举报

相关推荐

0 条评论