It turns a Raspberry Pi into a network access point that forwards HTTP and/or HTTPS traffic to a proxy server on another computer, such as Charles, Burp, Fiddler, mitmproxy etc, allowing said traffic to be inspected and/or manipulated.
It also provides throttling capability, allowing a developer to test their applications under varying network conditions.
The access point’s SSID is pi-mitm and the password is abcd1234. These will be configurable in an upcoming release.
The image can be downloaded from here and the manual is below.
proxyHttp proxy_ip [http_port] Enables http (port 80) forwarding to the proxy PC (Charles, Burp, Fiddler, etc.) residing at the provided IP address. Default port is 8888. proxyHttps proxy_ip [http_port] [https_port] Enables http (port 80) and https (port 443) forwarding to the proxy PC (Charles, Burp, Fiddler, etc.) residing at the provided IP address. Default ports are 8888 for http and 8889 for https. An SSL certificate will need to be installed on the target device. Devices that do not support the installation of such a certificate (such as Roku) are limited to http proxying. unproxy Disables port forwarding. throttle downlink_speed uplink_speed Throttles the network connection to the provided speeds (in kilobytes per second). unthrottle Unthrottles the network connection. lanIp Outputs the Pi MITM's LAN IP address. wifiIp Outputs the Pi MITM's WIFI IP address. updateSystem Updates the OS and its packages to the latest versions. reboot Reboots the Pi MITM device. shutdown Shuts down the Pi MITM device.