aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md23
1 files changed, 23 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2684b09
--- /dev/null
+++ b/README.md
@@ -0,0 +1,23 @@
+This script is ad-hoc solution for inspecting **MQTT over TLS** traffic. As far as I know Wireshark solves this problem but obtaining TLS master keys from IoT device might be a pain.
+
+## Usage
+
+Run mitmproxy as `mitmproxy --mode transparent --tcp '.*' -s mqtt_message.py`. Messages will be displayed at the event log (press `shift + e`).
+
+Of course before that you have to prepare a target device and your host running mitmproxy:
+* Install mitmproxy's root certificate on a target device.
+* Route device's traffic to mitmproxy. See https://docs.mitmproxy.org/stable/ for the details.
+* https://docs.mitmproxy.org/stable/howto-transparent/.
+
+If server requires x509 client authentication `--set client_certs=cert.pem` mitmproxy's option might be useful.
+
+## Roadmap
+
+- [ ] [Add support for non-HTTP flows to the UI](https://github.com/mitmproxy/mitmproxy/issues/1020).
+- [ ] Implement parsing of MQTT packet types other than `CONNECT`, `PUBLISH` and `SUBSCRIBE`.
+- [ ] Add support for MQTT to mitmproxy including interception, modification and replay.
+
+## Credits
+
+* https://github.com/mitmproxy/mitmproxy/blob/master/examples/complex/tcp_message_buffer.py
+* https://github.com/eclipse/paho.mqtt.python/blob/master/src/paho/mqtt/client.py