使用https的Python mitmproxy

2024-09-24 00:22:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用python创建一个mitmproxy脚本,将请求从一个主机重定向到另一个主机。我已经在http方面取得了一些成功,但无法使用https。 我在文件或任何地方都找不到。我的意思是,我会接受使用其他选项或库来实现这一点,但我不想使用完整的应用程序,比如下载xampp或其他apache服务器

from mitmproxy.options import Options
from mitmproxy.proxy.config import ProxyConfig
from mitmproxy.proxy.server import ProxyServer
from mitmproxy.tools.dump import DumpMaster
import os, sys, re, datetime, json

class Addon(object):
def __init__(self):
    pass

def request(self, flow):
    # examine request here
    if flow.request.host == 'testserver.net':
        flow.request.host = 'mynewserver.com'
        print('New try ---> Bypassing.')

def response(self, flow):
    # examine response here
    pass


if __name__ == "__main__":

options = Options(listen_host='0.0.0.0', listen_port=8080, certs=['*=mitmproxy.pem'])
m = DumpMaster(options, with_termlog=False, with_dumper=False)
config = ProxyConfig(options)

m.server = ProxyServer(config)
m.addons.add(Addon())

try:
    print('Redirection active.')
    m.run()
except KeyboardInterrupt:
    m.shutdown()

Tags: fromimportselfconfighostserverrequestdef