mitmproxy/examples/iframe_injector.py

18 lines
615 B
Python
Raw Normal View History

# Usage: mitmdump -s "iframe_injector.py url"
# (this script works best with --anticache)
from libmproxy.protocol.http import decoded
2014-09-08 14:02:31 +00:00
def start(context, argv):
if len(argv) != 2:
raise ValueError('Usage: -s "iframe_injector.py url"')
2014-09-08 14:02:31 +00:00
context.iframe_url = argv[1]
2014-09-08 14:02:31 +00:00
def handle_response(context, flow):
with decoded(flow.response): # Remove content encoding (gzip, ...)
c = flow.response.replace(
'<body>',
2014-09-08 14:02:31 +00:00
'<body><iframe src="%s" frameborder="0" height="0" width="0"></iframe>' % context.iframe_url)
if c > 0:
2014-09-08 14:02:31 +00:00
context.log("Iframe injected!")