HTTPS entschlüsseln

Bei der Auswertung von Netzwerkverkehr muss bei verschlüsselten Verbindungen nicht Schluss sein. Mit Analyse-Tools wie Burp kann man sich in HTTPS-Verbindungen einklinken und kontrollieren, was Anwendungen und Geräte an ihr Mutterschiff senden.

In Pocket speichern vorlesen Druckansicht 5 Kommentare lesen
Lesezeit: 5 Min.
Von
  • Ronald Eikenberg
Inhaltsverzeichnis

Das Pentesting-Tool Burp bietet eine Proxy-Funktion, durch die man auch HTTPS-Traffic mitlesen kann. Burp arbeitet dazu als sogenannter "Man in the Middle", ist also zwischen den beiden Verbindungspartnern positioniert. Der Proxy entschlüsselt den Datenaustausch mit dem Internet, protokolliert ihn und verschlüsselt ihn anschließend mit einem selbst generierten Zertifikat wieder. Damit der Client das Burp-Zertifikat akzeptiert, muss man die Burp-CA dort zur Liste der vertrauenswürdigen Herausgeber hinzufügen

Das funktioniert in aller Regel bei PCs, Smartphones und Tablets, allerdings nicht bei geschlossenen Systemen wie etwa Unterhaltungselektronik. Unter Umständen ist das aber auch gar nicht nötig, da solche Gerätschaften oft nicht überprüfen, ob das eingesetzte Zertifikat überhaupt von einem vertrauenswürdigen Herausgeber signiert wurde. Bei einem Test der c't haben drei von fünf untersuchten Smart-TVs beim Zertifikatscheck gepatzt.

Burp wurde in Java programmiert und läuft daher auf allen gängigen Desktop-Betriebssystemen – vorausgesetzt, es ist eine passende Laufzeitumgebung installiert. Unter Windows starten Sie den Proxy mit einem Doppelklick auf burpsuite_free_v1.5.jar, unter Mac OS X und Linux mit dem Befehl java -jar -Xmx2g burpsuite_free_v1.5.jar.

Die für die Analyse wichtigen Einstellungen finden Sie dann unter dem Reiter "Proxy". Ein Klick auf "Intercept is on" schaltet den interaktiven Modus ab, der bei jeder einzelnen HTTP-Anfrage eine Bestätigung erwartet. Der Proxy läuft jetzt bereits, nimmt aber nur Verbindungen vom lokalen Loopback-Interface des Rechners entgegen.

Damit der Proxy von allen Clients im gleichen Netz genutzt werden kann, aktivieren Sie die rot markierte Option.

Damit ihn auch andere Clients im lokalen Netz erreichen können, klicken Sie auf den Register-Reiter "Options" und markieren dort den einzigen vorhandenen Proxy Listener. Nach einem Klick auf "Edit" ändern Sie die Option "Bind to address" auf "All interfaces". Bei Bedarf können Sie in diesem Dialog auch den Port ändern, auf dem Burp lauscht. Standardmäßig ist Port 8080 eingestellt. Zum Abschluss fragt dann unter Umständen die besorgte Windows-Firewall nochmals, ob Sie dies wirklich gestatten möchten.

Jetzt müssen Sie den Client, dessen Netzwerkverkehr Sie analysieren möchten, dazu bringen, den Proxy für den Zugriff aufs Internet zu benutzen. Oft können Sie den Proxy einfach in die Netzwerkkonfiguration des Clients oder die Einstellungen der Anwendung eintragen. Besteht diese Möglichkeit nicht, müssen Sie zu härten Mitteln greifen, als hier beschrieben. In solchen Fällen können Sie den Datenverkehr etwa per ARP-Spoofing durch ein Analyse-System schleusen, auf dem ein SSL-Entschlüssler wie sslsniff läuft.