使用mitmproxy进行抓包分析

有时候使用fiddler比较麻烦,可以使用这个组合来自动处理请求分析

1. 安装mitmproxy 

pip install mitmproxy

2. 生成https证书

mitmproxy

执行命令: mitmproxy 会自动生成https证书,证书位置: C:\Users\yourusername\.mitmproxy

双击"mitmproxy-ca-cert.cer"导入到"受信任的证书机构" 即可.

3. 用python脚本来处理mitmproxy请求

在mitmproxy终端中,按:键打开命令提示符,然后输入以下命令:

script.load path/to/your/mitmproxy_script.py

或者退出mitmproxy终端,重新用下面的命令启动

mitmproxy -s path/to/your/mitmproxy_script.py

下面mitmproxy_script.py脚本处理请求的一个示例:

from mitmproxy import http

def request(flow: http.HTTPFlow):
    # 获取请求URL
    url = flow.request.url

    # 如果请求URL符合条件(例如,包含特定的c、d、e、f请求),则打印请求详细信息
    if "c" in url or "d" in url or "e" in url or "f" in url:
        print(f"Request URL: {url}")
        print(f"Request Method: {flow.request.method}")
        print(f"Request Headers: {flow.request.headers}")
        print(f"Request Content: {flow.request.content}")

如果想后台节省资源可以不使用ui交互,使用mitmdump用法同上,同时可以使用 "-q" 参数设置不输出日志.

更进一步如果想抓取某个特定网址,可以使用下面的命令

mitmdump -s index.py --allow-hosts domain.com

你可能感兴趣的:(服务器,运维)