Impact
In mitmweb 11.1.0 and below, a malicious client can use mitmweb's proxy server (bound to *:8080
by default) to access mitmweb's internal API (bound to 127.0.0.1:8081
by default). In other words, while the client cannot access the API directly (good), they can access the API through the proxy (bad). An attacker may be able to escalate this SSRF-style access to remote code execution.
The mitmproxy and mitmdump tools are unaffected. Only mitmweb is affected. The block_global
option, which is enabled by default, blocks connections originating from publicly-routable IP addresses in the proxy. The attacker needs to be in the same local network.
Patches
The vulnerability has been fixed in mitmproxy 11.1.2 and above.
Acknowledgements
We thank Stefan Grönke (@gronke) for reporting this vulnerability as part of a security audit by Radically Open Security. This audit was supported by the NGI0 Entrust fund established by NLnet.
Timeline
- 2025-01-14: Received initial report.
- 2025-01-14: Verified report and confirmed receipt.
- 2025-01-19: Shared patch with researcher.
- 2025-02-04: Received final confirmation that patch is working.
- 2025-02-05: Published patched release and advisory.
References
Impact
In mitmweb 11.1.0 and below, a malicious client can use mitmweb's proxy server (bound to
*:8080
by default) to access mitmweb's internal API (bound to127.0.0.1:8081
by default). In other words, while the client cannot access the API directly (good), they can access the API through the proxy (bad). An attacker may be able to escalate this SSRF-style access to remote code execution.The mitmproxy and mitmdump tools are unaffected. Only mitmweb is affected. The
block_global
option, which is enabled by default, blocks connections originating from publicly-routable IP addresses in the proxy. The attacker needs to be in the same local network.Patches
The vulnerability has been fixed in mitmproxy 11.1.2 and above.
Acknowledgements
We thank Stefan Grönke (@gronke) for reporting this vulnerability as part of a security audit by Radically Open Security. This audit was supported by the NGI0 Entrust fund established by NLnet.
Timeline
References