A Go-based tool for detecting HTTPS interception (man-in-the-middle) through TLS and HTTP fingerprint analysis.
MITMEngine is a Go-based tool for detecting HTTPS interception (man-in-the-middle attacks) by analyzing TLS and HTTP fingerprints. It compares observed client request fingerprints against expected browser signatures to identify mismatches that indicate traffic interception. The project was originally developed to power Cloudflare's MALCOLM service for monitoring interception on the web.
Security engineers, network administrators, and researchers focused on TLS security, traffic analysis, and detecting malicious or unwanted HTTPS interception in enterprise or provider environments.
It provides a robust, signature-driven methodology based on academic research, with an extensible architecture for fingerprint management and a reference database built from real-world traffic, offering more accurate detection than generic TLS analysis tools.
A MITM (monster-in-the-middle) detection tool. Used to build MALCOLM:
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Based on the academic paper 'The Security Impact of HTTPS Interception,' ensuring scientifically validated detection principles as used in Cloudflare's MALCOLM service.
Supports pluggable loaders for fingerprint data from local files or S3-compatible sources, allowing flexible integration with various storage systems.
Analyzes TLS Client Hello messages, cipher suites, extensions, and HTTP headers to create detailed client signatures for accurate interception detection.
Includes a fingerprint database built from real-world traffic and pcaps on Cloudflare's network, providing a solid baseline for detection.
The project is explicitly marked as no longer maintained, meaning no updates, bug fixes, or security patches from Cloudflare, risking obsolescence.
Requires Go and Wireshark 3.0.0, with manual steps for generating fingerprints, making initial deployment and testing cumbersome.
Fingerprints quickly become outdated, necessitating regular contributions and updates to the database, which is challenging without active maintenance.