Sicherheitslücke: Kaspersky schlampt bei TLS-Zertifikatsprüfung
Die Antivirensoftware von Kaspersky liest bei TLS-Verbindungen mit und sorgt nebenbei dafür, dass die Zertifikatsprüfung ausgehebelt wird. Wieder einmal konnte Tavis Ormandy von Google damit zeigen, wie löchrig sogenannte Sicherheitssoftware ist.

Tavis Ormandy dürfte inzwischen in der Antivirenbranche gefürchtet sein. Der Mitarbeiter von Googles Project Zero findet regelmäßig gravierende Sicherheitslücken in Antivirensoftware und anderen IT-Sicherheitsprodukten. Ormandys Arbeit hat zuletzt auch dazu geführt, dass der Nutzen von Antivirensoftware zunehmend infrage gestellt wird.
Kaspersky bricht verschlüsselte Verbindungen auf
Nun hat es erneut Kaspersky getroffen. Die in Russland entwickelte Software schlampt bei der Zertifikatsprüfung - und wirft dabei ein Schlaglicht auf eine besondere Problematik: Antivirensoftware nutzt oft Man-in-the-Middle-Angriffe, um verschlüsselte Verbindungen mitlesen zu können.
Die Kaspersky-Software installiert dabei ein Zertifikat im Webbrowser des Nutzers, um den verschlüsselten Datenverkehr mitlesen zu können. Für jede besuchte HTTPS-Webseite wird dann automatisch ein temporäres Zertifikat generiert, damit der Browser weiterhin eine verschlüsselte Verbindung sieht. Im Hintergrund verbindet sich die Kaspersky-Software dann mit der eigentlichen Webseite.
Kaspersky nutzt dabei einen Cache, in dem bereits bekannte und geprüfte Zertifikate abgelegt werden. Das Problem dabei: Um zu prüfen, ob ein Zertifikat im Cache vorhanden ist, nutzt die Kaspersky-Software einen 32-Bit-Hash. Es ist damit trivial möglich, mittels eines Brute-Force-Angriffs ein anderes Zertifikat zu erzeugen, das denselben Hash wie ein bestehendes Zertifikat hat.
Ein Angreifer könnte nun für eine bekannte Domain, die bereits im Cache vorhanden ist, ein selbst signiertes Zertifikat erstellen, das lediglich denselben Hostnamen haben muss wie eine angegriffene Webseite.
Doch dieser Bug führt nicht nur dazu, dass ein Angreifer Verbindungen mitlesen kann. Er kann auch schlicht dazu führen, dass Verbindungen fehlschlagen, da bei einem 32-Bit-Hash Kollisionen so häufig sind, dass sie auch zufällig auftreten können. Beispielsweise kollidieren die Hashes einer Webseite der Stadt Manchester in Conneticut und von Hacker News. Wer beide Webseiten hintereinander besucht, erhält einen Zertifikatsfehler, da der Hostname nicht passt.
Einen Tipp für Webmaster, die nicht wollen, dass die Kaspersky-Software ihren Datenverkehr inspiziert, hat Ormandy auch noch: Verbindungen mit dem von Google entwickelten QUIC-Protokoll werden ignoriert. Daher sehen Nutzer im Chrome-Browser auf vielen Google-Webseiten auch ein korrektes Zertifikat.
Erinnerung an Superfish und Co.
Dass Software, die TLS-Verbindungen mittels Man-in-the-Middle-Angriffen aufbricht, problematisch ist, ist eigentlich bekannt. Im Frühjahr 2015 sorgte die Adware Superfish dafür, dass die TLS-Verbindungen von Lenovo-Laptops angegriffen werden konnten. Infolgedessen wurden zahlreiche weitere, ähnliche Programme mit vergleichbaren Sicherheitslücken gefunden. Auch in der Kaspersky-Software selbst wurde vom Autor dieses Artikels kurz darauf eine Sicherheitslücke gefunden.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
"Einen Tipp für Webmaster [...]"
PS: Und natürlich scannt ein Virenscanner auch den Arbeitsspeicher. Der ist ja nicht nur...