10. Kapitel - SSL-Verschlüsselung und Zertifikate

10.1. Prinzip und Gefahren der SSL-Verschlüsselung

Durch die Verschlüsselung wird sichergestellt, dass nur Client und Server die übertragenen Daten kennen. Was aber passieren kann ist, dass sich jemand beim Verbindungsaufbau zwischen Client und Server hängt und ab dann alles mitlesen und verändern kann (sog. Man-in-the-middle-Angriff). Um das zu verhindern, authentifiziert sich der Server beim Verbindungsaufbau mit einem Sicherheitszertifikat gegenüber dem Client.

Der Server sendet sein Zertifikat an den Client und dieser überprüft es anhand von 3 Kriterien:

  1. Aussteller des Zertifikats ist eine dem Client bekannte Zertifizierungsstelle.

  2. Genau der Server, den der Client kontaktiert hat, ist im Zertifikat als Eigentümer ausgewiesen. Dafür vergleicht der Client den von ihm kontaktierten Rechnernamen mit dem Feld Rechnername (Common Name, abgekürzt CN) im Zertifikat.

  3. Die aktuelle Uhrzeit liegt innerhalb des Gültigkeitszeitraums des Zertifikats.

Erst, wenn alle 3 Kriterien stimmen, kann sich der Client sicher sein, mit dem richtigen Server zu sprechen und ein Angriff kann ausgeschlossen werden.

Ein in der Praxis tatsächlich beobachteter Angriff sieht wie folgt aus: Ein Hacker sitzt mit einem ganz normalen Notebook z.B. an einem WLAN-Hotspot am Flughafen. Über eine spezielle Software leitet er alle WLAN-Verbindungen über sein Notebook um. Wenn jemand eine verschlüsselte Verbindung aufbauen möchte, präsentiert die Software dem Anwender ein anderes Zertifikat. Dieses Zertifikat ist ganz legal von einer vertrauenswürdigen Zertifizierungsstelle auf eine dem Hacker gehörende Domain ausgestellt worden. Das einzige was bei diesem Angriff den Anwender davor warnen kann, dass die Verbindung vom Hacker abgehört und manipuliert wird, ist der Warnhinweis des Browsers, dass Webseite und Zertifikat nicht zusammenpassen.

Warnungen vor falschen Sicherheitszertifikaten dürfen daher nicht ignoriert werden.