mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-26 18:18:25 +00:00
mitmweb: protect against dns rebinding
This commit is contained in:
parent
9829fe150e
commit
ae91779229
@ -466,31 +466,7 @@ class SaveOptions(RequestHandler):
|
|||||||
class Application(tornado.web.Application):
|
class Application(tornado.web.Application):
|
||||||
def __init__(self, master, debug):
|
def __init__(self, master, debug):
|
||||||
self.master = master
|
self.master = master
|
||||||
handlers = [
|
super().__init__(
|
||||||
(r"/", IndexHandler),
|
|
||||||
(r"/filter-help(?:\.json)?", FilterHelp),
|
|
||||||
(r"/updates", ClientConnection),
|
|
||||||
(r"/events(?:\.json)?", Events),
|
|
||||||
(r"/flows(?:\.json)?", Flows),
|
|
||||||
(r"/flows/dump", DumpFlows),
|
|
||||||
(r"/flows/resume", ResumeFlows),
|
|
||||||
(r"/flows/kill", KillFlows),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)", FlowHandler),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/resume", ResumeFlow),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/kill", KillFlow),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/duplicate", DuplicateFlow),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/replay", ReplayFlow),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/revert", RevertFlow),
|
|
||||||
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/(?P<message>request|response)/content.data", FlowContent),
|
|
||||||
(
|
|
||||||
r"/flows/(?P<flow_id>[0-9a-f\-]+)/(?P<message>request|response)/content/(?P<content_view>[0-9a-zA-Z\-\_]+)(?:\.json)?",
|
|
||||||
FlowContentView),
|
|
||||||
(r"/settings(?:\.json)?", Settings),
|
|
||||||
(r"/clear", ClearAll),
|
|
||||||
(r"/options(?:\.json)?", Options),
|
|
||||||
(r"/options/save", SaveOptions)
|
|
||||||
]
|
|
||||||
settings = dict(
|
|
||||||
template_path=os.path.join(os.path.dirname(__file__), "templates"),
|
template_path=os.path.join(os.path.dirname(__file__), "templates"),
|
||||||
static_path=os.path.join(os.path.dirname(__file__), "static"),
|
static_path=os.path.join(os.path.dirname(__file__), "static"),
|
||||||
xsrf_cookies=True,
|
xsrf_cookies=True,
|
||||||
@ -498,4 +474,32 @@ class Application(tornado.web.Application):
|
|||||||
debug=debug,
|
debug=debug,
|
||||||
autoreload=False,
|
autoreload=False,
|
||||||
)
|
)
|
||||||
super().__init__(handlers, **settings)
|
|
||||||
|
self.add_handlers(
|
||||||
|
# make mitmweb accessible by IP only to prevent DNS rebinding.
|
||||||
|
r'(localhost|\d+\.\d+\.\d+\.\d+)',
|
||||||
|
[
|
||||||
|
(r"/", IndexHandler),
|
||||||
|
(r"/filter-help(?:\.json)?", FilterHelp),
|
||||||
|
(r"/updates", ClientConnection),
|
||||||
|
(r"/events(?:\.json)?", Events),
|
||||||
|
(r"/flows(?:\.json)?", Flows),
|
||||||
|
(r"/flows/dump", DumpFlows),
|
||||||
|
(r"/flows/resume", ResumeFlows),
|
||||||
|
(r"/flows/kill", KillFlows),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)", FlowHandler),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/resume", ResumeFlow),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/kill", KillFlow),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/duplicate", DuplicateFlow),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/replay", ReplayFlow),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/revert", RevertFlow),
|
||||||
|
(r"/flows/(?P<flow_id>[0-9a-f\-]+)/(?P<message>request|response)/content.data", FlowContent),
|
||||||
|
(
|
||||||
|
r"/flows/(?P<flow_id>[0-9a-f\-]+)/(?P<message>request|response)/content/(?P<content_view>[0-9a-zA-Z\-\_]+)(?:\.json)?",
|
||||||
|
FlowContentView),
|
||||||
|
(r"/settings(?:\.json)?", Settings),
|
||||||
|
(r"/clear", ClearAll),
|
||||||
|
(r"/options(?:\.json)?", Options),
|
||||||
|
(r"/options/save", SaveOptions)
|
||||||
|
]
|
||||||
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user