最近要写一款基于被动式的漏洞扫描器,因为被动式是将我们在浏览器浏览的时候所发出的请求进行捕获,然后交给扫描器进行处理,本来打算自己写这个代理的,但是因为考虑到需要抓取https,所以最后找到Mitmproxy这个程序。
安装方法:
pip install mitmproxy
接下来通过一个案例程序来了解它的使用,下面是目录结构
sproxy
|utils
|__init__.py
|parser.py
|sproxy.py
sproxy.py代码
#coding=utf-8
from pprint import pprint
from mitmproxy import flow, proxy, controller, options
from mitmproxy.proxy.server import ProxyServer
from utils.parser import ResponseParser
# http static resource file extension
static_ext = ['js', 'css', 'ico', 'jpg', 'png', 'gif', 'jpeg', 'bmp']
# media resource files type
media_types = ['image', 'video', 'audio']
# url filter
url_filter = ['baidu','360','qq.com']
static_files = [
'text/css',
'image/jpeg',
'image/gif',
'image/png',
]
class WYProxy(flow.FlowMaster):
def __init__(self, opts, server, state):
super(WYProxy, self).__ini