Skip to content
Testing Spy
Team von michael wessel06.20161 min read

Entschlüsselung SSL / HTTPS mit Wireshark

Heute möchte ich kurz auf ein wichtiges Tool beim Troubleshooting für HTTPS-Anwendungen eingehen. Ich habe mit vielen Kunden gesprochen, die nicht die gesamte Kommunikationskette verschlüsseln, um im Fehlerfall weiter per Wireshark mitlesen zu können. Mit der richtigen Anleitung ist es aber gar nicht so kompliziert auch SSL / HTTPS gesicherten Verkehr zu entschlüsseln.

Wichtige Anmerkungen:

  • Natürlich brauchen wir die jeweiligen privaten Schlüssel um die Verbindung zu entschlüsseln.
  • Darüber hinaus sollte das Vorgehen vorab mit den Kollegen der IT-Security abgestimmt werden.
  • Wenn die SSL / HTTPS Verbindung mit forward secrecy ciphers verschlüsselt wurde, bleibt Sie auch verschlüsselt.
  • Citrix NetScaler Systeme können ab der Firmware 11.0 Inhalte aus SSL-Verbindungen tracen und unverschlüsselte wegschreiben.
    • Das gilt natürlich nur für Traffic, den wir innerhalb der NetScaler Appliance unverschlüsselt bearbeiten (nicht SSL_BRIDGE).
    • CLI Command: start nstrace -mode SSLPLAIN

Entschlüsslung von SSL / HTTPS Verbindungen

Zuerst müssen wir uns um den privaten Schlüssel kümmern. Diesen benötigen wir ohne schützende Passphrase. Idealerweise öffnen wir den Schlüssel einmal im Texteditor und schauen uns den Schlüssel einmal an.

Im aktuellen Beispiel habe ich einen verschlüsselten privaten Schlüssel gewählt. Erkennen kann man es direkt an der zweiten Zeile… Und ja, ich habe den Inhalt des Schlüssels durch wahllose manuelle Zeichen ersetzt. 😉

Diesen verschlüsselten Schlüssel müssen wir nun erst einmal entschlüsseln. Der entsprechende OpenSSL Befehl lautet:

  • openssl rsa -in privatekey.withpassphrase.openssl -out

Das Ergebnis sehen wir hier:

Im weiteren Verlauf müssen wir jetzt nur noch Wireshark überzeugen, den entschlüsselten privaten Schlüssel für die Entschlüsselung des Datenverkehrs zu nutzen.

Auf meinem Mac OS finde ich die nötigen Einstellungen unter dem Programmmenü Wireshark / Preferences

 

Wir müssen nun nur das Protokoll „SSL“ auswählen und die RSA Keys Liste pflegen.

 

 

Der private Schlüssel wird nun eingesetzt, um die beschriebene Verbindung zur Darstellung zu entschlüsseln.

KOMMENTARE

VERWANDTE ARTIKEL