Ein guter Freund hat mich heute auf eine Veröffentlichung der Heise mit dem reißerischen Namen „Todesstoß: Forscher zerschmettern SHA-1“ hingewiesen. Falschmeldungsgeil natürlich gleich gelesen, ein wenig recherchiert und mich mächtig geärgert über den Blödsinn den Heise da wieder postet.
Zuerst mal fachlich zum Thema. Ja, SHA-1 wissen wir seit vielen Jahren entspricht nicht mehr den kryptographischen Anforderungen, da der Algorithmus mit 2^80 Varianzen errechnet wird. Das entspricht 1208925819614629174706176 Versuchen – also rd. 1,2 Quadrillion – um zwei gleiche Dokumente zu errechnen. Vor vielen Jahren wurde dies in einem theoretischen Angriff bereits auf rd. 2^69 Versuche reduziert, das 590 Trillionen entspricht.
Die Forscher…
Ein Team rund um ein holländisches Forschungsinstitut und Google hat die Anzahl der Versuche nun nochmals auf 9,2 Trillionen reduziert, was einem Faktor von ca. 64 entspricht. Nun endlich war die Anzahl so gering, dass man EIN EINZIGES Dokument mit gleichem Hash-Wert errechnen konnte und dazu brauchte man nach Angaben des Forscherteams 6500 CPU-Jahre oder 110 Grafikprozessor-Jahre.
Das Team bestätigt, dass es das erste und einzige Dokument ist, dass so errechnet wurde. Warum wohl? Da die Kosten für EIN DOKUMENT für eine solche Berechnung natürlich erheblich sind.
Die Realität…
Ich überschlage die Kosten, wenn man in einem 1/2 Jahr die Aufgabe bewältigen möchte: 1 schneller Grafikprozessor (GPU) kostet eventuell 200€, davon brauchen wir 220 Stück = € 44.000 Anschaffungskosten. Zusätzlich Stromkosten von 90 Watt pro GPU x 220 CPU x 6 Monate x ca. 0,25€ pro KWh = € 21.681 Stromkosten. Das bedeutet, dass man mit rd. € 65.000 ein Dokument fälschen kann. Noch gefährlicher wird es aber, wenn man die € 65.000 nutzt, um ein SSL-Zertifikat oder CA-Zertifikat zu fälschen und dieses als Man-in-the-Middle Zertifikat nutzt, um Nachrichten auszuspähen oder gefälschte Nachrichten einzuspeisen. Solle man mit den investierten € 65.000 eine Transaktion um mehrere Millionen auslösen können, sehe ich das schon sehr kritisch an.
Aber der von Heise veröffentlichten Satz
Wer es jetzt noch einsetzt, handelt grob fahrlässig.
ist großer Blödsinn!
Denn 98% aller Emails haben gar keine Signatur, die vor Manipulation schützt. Wahrscheinlich 30% aller netzwerkfähigen Webcams werden mit Standard-Zugangspasswort admin/admin und ohne SSL betrieben. Millionen Webserver werden heute noch ganz ohne SSL betrieben. Tausende Server in Österreich haben Telnet in Betrieb, dessen User-Credentials im Netzwerkverkehr im Klartext mitgelesen werden können.
Genauso kritisch Stufe ich meinen Liebling Mikrocontroller den Raspberry Pi ein: „The default user is pi , and the password is raspberry“. Das Linux fordert deren Besitzer nicht auf das Standard Passwort zu ändern. Warum nicht?
Was ist mit den neuen IoT Geräten die jetzt auch mit WLAN Management kommen? Da gibt es oft gar keine Security implementiert außer den Herstelleraussagen, dass der Empfangsbereich aus Sicherheitsgründen auf wenige Meter eingeschränkt wurde. Genau solche Designfehler hat die A1 zuletzt auch beim DDoS Angriff zu spüren bekommen.
Mir ist SHA-1 tausendmal lieber als mein Nachbar der sein WLAN komplett offen betreibt, nur weil der Internet-Radio den er gekauft hat kein WPA2 unterstützt.
Wenn man ein Netzwerk oder einen Server hacken möchte, dann geht das in der Regel viel einfacher als über das SHA-1 SSL-Zertifikat…
Ist jede Verschlüsselung durch SHA-1 in Gefahr?
Zum Teil sind Verschlüsselungen, speziell nämlich Transportverschlüsselungen, in Gefahr. Wenn man die errechneten € 65.000 investiert, kann man beim Verbindungsaufbau ein gefälschtes Zertifikat einschleusen und erhält so Zugriff auf den Session-Schlüssel und kann dann alles mitlesen.
Klassische Daten- oder Platten-Verschlüsselungssysteme wie TrueCrypt/VeraCrypt, BitLocker oder auch die ZIP Verschlüsselung nutzen Hashing fast gar nicht. Der Verschlüsselungsschlüssel ist ein symmetrischer Schlüssel der oft von einem asymmetrischen Schlüssel oder über ein Passwort geschützt ist. Ggfls. kann man solche Systeme indirekt angreifen, indem man dem Nutzer ein gefälschtes X.509 Zertifikat unterschiebt, er damit Daten verschlüsselt und der Angreifer über eine eigene Kopie des gefälschten Zertifikates die Verschlüsselung aushebt.
SHA-1 sofort ablösen?
Meine Empfehlung: Plant neue Systeme mit SHA-256 und nicht mehr mit SHA-1! Die SHA-1 Geräte werden so immer weniger und werden früher oder später natürlich aussterben. Nur bei kritischen Systemen die hohes Schadensrisiko (Banken, Rechenzentren, e-Commerce Server, Cloud-Anwendungen) haben sollte man sich zügig im Alternativen umsehen. Private und Kleinunternehmen sollten ihre Zeit in andere Sicherheitsmaßnahmen stecken.
Ein externes Kommentar, das mich per Email erreicht hat möchte ich gerne hier im Beitrag teilen:
Anmerkung Andreas Schuster @ Verschlüsselt.IT:
Danke für deine Aufklärung. Da ich mich viel mit PKI & Zertifikaten beschäftige freue ich mich, dass ältere Strukturen mit SHA-1 in der Zertifikatskette nun doch nicht sofort gefährdet sind. Auch die Kosten von 500.000 USD beruhigen mich!
Und noch ein externes Kommentar hat mich per Email erreicht, dass ich gerne im Blog teilen möchte:
Vielen Dank für die Ergänzungen. Das PDF zur Flame Collision habe ich gelesen, kannte ich noch nicht. Speziell die Kombination MD5 Übereinstimmung und falscher Verwendungszweck in einer vertrauenswürdigen Zertifikatskette ist schon extrem gefährlich und wird schamlos ausgenutzt. Zum Glück haben wir diese Übereinstimmungen bei SHA-1 Zertifikaten noch nicht dokumentiert.
Danke nochmals!!!
Sichere Grüße, Andreas