Injection error

Hello,
I am trying to test some proof of concept software that utilizes mitmproxy. It is attempting to inject some javascript code into the browser, but is generating the following error;

192.168.9.127:1734: clientconnect
192.168.9.127:1735: clientconnect
http://192.168.9.111:8000/script.js
Script error: Traceback (most recent call last):
File “injector.py”, line 13, in response
print(flow.response.headers[“content-type”])
File “/root/.local/lib/python3.6/site-packages/mitmproxy/types/multidict.py”, line 39, in getitem
raise KeyError(key)
KeyError: ‘content-type’

Thoughts?

Hi @tremmert,

Your response does not have a Content-Type header, so flow.response.headers[“content-type”] fails with a KeyError. That’s similar to x = {}; x["foo"]. You need to either check for existence or use .get. :slight_smile: