Demo tls inspection
Demo TLS Inspection
Ziel der Übung: Die Teilnehmer erkennen, wie ein Proxy oder eine Firewall TLS-Verbindungen aufbricht, indem eigene Zertifikate eingefügt werden. Es wird gezeigt, wie der Client das manipulierte Zertifikat akzeptiert oder ablehnt und wie man TLS Inspection zuverlässig identifiziert.
Umgebung
| Komponente | Wert |
|---|---|
| Angreifer / Proxy | Linux oder Appliance mit TLS-Inspection (z. B. Squid, OPNsense, pfSense) |
| Client | Windows 10 oder Windows 11 |
| Browser | Edge oder Chrome |
| Zertifikat | eigene Proxy-CA, die auf dem Client importiert wird |
Vorbereitung Proxy
Schritte abhängig von der Plattform, allgemeiner Ablauf:
- Proxy mit aktiviertem HTTPS-Intercept (SSL-Bump / TLS-Inspection)
- eigene Root-CA erstellen oder vorhandene Proxy-CA nutzen
- Proxy so konfigurieren, dass er HTTPS-Verbindungen auf Port 443 aufbricht
- Proxy als Gateway oder expliziter Proxy im Browser gesetzt
Der Proxy präsentiert dem Client später ein eigenes Zertifikat anstelle des Originals.
Vorbereitung Client Windows
- Proxy-CA nach C:\ importieren, z. B. proxyCA.cer
- Zertifikat importieren:
certutil -addstore -f "Root" C:\proxyCA.cer
- Browser neu starten
Nach diesem Import vertraut Windows allen Zertifikaten, die der Proxy ausstellt.
Test ohne TLS Inspection (Vergleichsbasis)
- https://google.com im Browser öffnen
- Zertifikat anzeigen:
Aussteller: Google Trust Services oder eine große CA
- SAN enthält viele google.com-Domains
- Fingerabdruck vergleichen, ist jedes Mal identisch
Ziel: Die Teilnehmer sehen ein unverfälschtes Zertifikat.
Test mit aktiver TLS Inspection
- HTTPS-Verbindung erneut zu https://google.com öffnen
- Zertifikat anzeigen:
Aussteller ist jetzt die Proxy-CA nicht mehr Google
- Fingerabdruck völlig anders
- Laufzeit sehr kurz (oft 1–3 Tage), da dynamisch generiert
- SAN enthält weiterhin google.com (Proxy setzt dies automatisch ein)
Erklärung: Der Proxy bricht die TLS-Verbindung auf, erstellt ein neues Zertifikat „on the fly“ und signiert es mit seiner eigenen CA. Der Client sieht das Zertifikat des Proxys, nicht das echte Zertifikat der Webseite.
Erkennungsmerkmale von TLS Inspection
- Aussteller ist eine interne oder unbekannte CA
- Zertifikatslaufzeit ist extrem kurz (dynamisch)
- Fingerabdrücke ändern sich bei jedem Aufruf
- Proxy-CA taucht in Windows Trusted Root CAs auf
- Zertifikatskette endet NICHT bei einer öffentlichen CA (z. B. DigiCert, GlobalSign usw.)
Erkennung per certutil
- certutil -verify https://google.com
Zeigt:
- die präsentierte Kette (Proxy-CA → dynamische Zertifikate)
- Abweichungen zu echten öffentlichen Zertifikaten
Erkennung im Browser
- Schloss öffnen → Zertifikat anzeigen
- Aussteller prüfen:
sollte eine bekannte CA sein
- wenn Proxy-CA → TLS Inspection aktiv
Auswertung
TLS Inspection bricht die Ende-zu-Ende-Verschlüsselung technisch auf. Der Proxy sieht Verkehr im Klartext. Dies wird in Unternehmensnetzen für Malware-Filter, DLP oder Inhaltsscans genutzt. Für Sicherheitstests muss man wissen:
- ob man ein echtes Zertifikat sieht oder ein generiertes Proxy-Zertifikat
- wie man SAN, Issuer und Gültigkeit korrekt interpretiert
- wie man MITM erkennt, der absichtlich (Proxy) oder bösartig (Angreifer) arbeitet