Google tötet SHA-1 mit erfolgreichem Kollisionsangriff

Es ist offiziell: Der kryptografische SHA-1-Algorithmus wurde "SHAttered". Google hat SHA-1 erfolgreich gebrochen. Was jetzt?

Nach jahrelanger Warnung, dass Fortschritte im modernen Computing einen erfolgreichen Kollisionsangriff gegen SHA-1 unmittelbar bevorstehen, hat ein Forscherteam von Google und Centrum Wiskunde & Informatica (CWI) in den Niederlanden die erste erfolgreiche SHA-1-Kollision erfolgreich entwickelt. In der Praxis sollte SHA-1 für die praktische Sicherheit nicht verwendet werden.

Moderne kryptografische Hash-Funktionen hängen davon ab, dass der Algorithmus für jede Datei einen anderen kryptografischen Hash generiert. Eine Hash-Kollision bezieht sich auf zwei separate Dateien mit demselben Hash. Die Tatsache, dass kryptografische Schwachstellen in SHA-1 Zertifikate unter Verwendung des SHA-1-Algorithmus potenziell anfällig für Kollisionsangriffe machen, ist allgemein bekannt. Das Nationale Institut für Standards und Technologie hat SHA-1 vor mehr als fünf Jahren abgelehnt, und Experten fordern Unternehmen seit langem auf, auf stärkere Hash-Algorithmen umzusteigen. Bisher war das einzige, was für SHA-1 in Frage kam, die Tatsache, dass Kollisionsangriffe immer noch teuer und theoretisch waren.

Nicht mehr, da das von Google geleitete Forschungsteam eine Methode entwickelt hat, mit der zwei PDF-Dateien mit unterschiedlichem Inhalt generiert werden können, die jedoch denselben SHA-1-Hash generieren. Während der Kollisionsangriff immer noch teuer ist, ist der "SHA-1 Shattered" -Angriff nicht mehr theoretisch, was bedeutet, dass der Angriff für jeden erreichbar ist, der motiviert genug und tief genug ist.

"Wir haben zunächst ein PDF-Präfix erstellt, das speziell für die Erstellung von zwei Dokumenten mit willkürlich unterschiedlichen visuellen Inhalten erstellt wurde. Dies würde jedoch zu demselben SHA-1-Digest führen", schrieb das Team von Google und CWI in einem Blogbeitrag. "Wir konnten diese Kollision finden, indem wir viele spezielle kryptoanalytische Techniken auf komplexe Weise kombinierten und frühere Arbeiten verbesserten."

Es ist jedoch anzumerken, dass das Fälschen digitaler Zertifikate dank der neuen CA / Browser Forum-Regeln, nach denen 20 Bit Zufälligkeit zu Seriennummern digitaler Zertifikate hinzugefügt werden müssen, schwierig bleibt.

SHA-1 ist tot; handle entsprechend

Im November ergab eine Untersuchung von Venafi, dass 35 Prozent der Unternehmen noch SHA-1-Zertifikate verwendeten. "Diese Unternehmen könnten genauso gut ein Willkommensschild für Hacker aufstellen, das besagt:" Wir kümmern uns nicht um die Sicherheit unserer Anwendungen, Daten und Kunden ", sagte Kevin Bocek, Chef-Sicherheitsstratege bei Venafi." Angriffe gegen SHA -1 sind keine Science-Fiction mehr. "

Obwohl viele Unternehmen im vergangenen Jahr an der Migration auf SHA-2 gearbeitet haben, ist die Umstellung nicht zu 100 Prozent abgeschlossen. Dies bedeutet, dass Unternehmen, die ihre Umstellung noch nicht abgeschlossen (oder begonnen!) Haben, jetzt einem Risiko ausgesetzt sind. Angreifer haben jetzt Beweise dafür, dass Kollisionsangriffe möglich sind. Gemäß der Offenlegungsrichtlinie von Google wird der Code, mit dem Angreifer diese PDF-Dokumente erstellen können, in 90 Tagen veröffentlicht. Die Uhr tickt.

Der Chrome-Webbrowser von Google hat begonnen, Websites, die noch digitale Zertifikate verwenden, die mit SHA-1 signiert sind, Anfang 2017 als nicht vertrauenswürdig zu kennzeichnen. Microsoft und Mozilla werden voraussichtlich Edge und Firefox folgen. Nach den neuesten Richtlinien des CA / Browser-Forums ist es der Hauptbehörde, die regelt, wie Zertifizierungsstellen TLS-Zertifikate ausstellen, Browser-Anbietern und Zertifizierungsstellen untersagt, SHA-1-Zertifikate auszustellen.

Das Forschungsteam hat ein Online-Tool erstellt, das in Dokumenten auf der Website shattered.io nach SHA-1-Kollisionen sucht. Google hat bereits Schutzfunktionen in Google Mail und Google Drive integriert.

Während sich eine beträchtliche Anzahl von Organisationen die Warnungen zu Herzen genommen und ihre Websites migriert hat, verwenden viele immer noch SHA-1 zum digitalen Signieren von Software und zum Überprüfen digitaler Signaturen und kryptografischer Schlüssel für nicht mit dem Internet verbundene Infrastrukturen wie Softwareupdates, Sicherungssysteme, und andere Anwendungen. Tools zur Versionskontrolle basieren auch auf SHA-1 - Git beispielsweise "stark" auf SHA-1.

"Es ist im Wesentlichen möglich, zwei GIT-Repositorys mit demselben Head-Commit-Hash und unterschiedlichen Inhalten zu erstellen, beispielsweise einem harmlosen Quellcode und einem Backdoor-Quellcode", schrieben die Forscher auf der Website shattered.io. "Ein Angreifer kann potenziell selektiv eines der beiden Repositorys für Zielbenutzer bereitstellen."

Der Himmel fällt nicht ... noch nicht

Trotzdem ist der Angriff immer noch schwierig, und mit SHAttered bewaffnete Malware wird nicht über Nacht in Netzwerke gelangen. Die Forscher sagten, es sei schwierig, die Kollision zu finden, und sie sahen manchmal "unpraktisch" aus. "Wir haben es endlich gelöst, indem wir dieses Problem als mathematisches Problem beschrieben haben", schrieben die Forscher.

Das Team führte insgesamt mehr als 9 Billionen (9.223.372.036.854.775.808) SHA-1-Berechnungen durch, was ungefähr 6.500 Jahre Einzel-CPU-Berechnungen zum Abschluss der ersten Phase des Angriffs und 110 Jahre Einzel-GPU-Berechnungen zum Abschluss des Angriffs bedeutete zweite Phase. Die Technik ist immer noch mehr als 100.000 Mal schneller als ein Brute-Force-Angriff.

Der in der ersten Phase verwendete heterogene CPU-Cluster wurde von Google gehostet und auf acht physische Standorte verteilt. Der in der zweiten Phase verwendete heterogene Cluster von K20-, K40- und K80-GPUs wurde ebenfalls von Google gehostet.

Während diese Zahlen sehr groß erscheinen, verfügen Nationalstaaten und viele große Unternehmen über das Know-how und die finanziellen Ressourcen für die Kryptoanalyse, um genügend GPUs zu erhalten, um dies in angemessener Zeit zu tun, wenn sie dies wirklich wollten.

Bereits 2015 hatte eine andere Gruppe von Forschern eine Methode vorgestellt, mit der die Kosten für eine erfolgreiche SHA-1-Kollision mit der EC2-Cloud von Amazon zwischen 75.000 und 120.000 US-Dollar liegen würden. Das Google-Team schätzte, dass das Ausführen der zweiten Phase des Angriffs in Amazon EC2 ungefähr 560.000 US-Dollar kosten würde. Wenn der Angreifer jedoch geduldig und bereit ist, langsamer vorzugehen, sinken diese Kosten auf 110.000 US-Dollar und liegen damit innerhalb des bereits 2015 geschätzten Bereichs.

Was kommt als nächstes?

Die Branche weiß seit 2011, dass dieser Tag kommen wird, und die meisten Anbieter haben angekündigt, dass sie ihre Abschreibungspläne und -fristen beschleunigen würden, wenn ein stärkerer Angriff Realität wird. NIST hat jedem empfohlen, von SHA-1 zu SHA-2 zu wechseln, ebenso wie das CA / Browser-Forum. Erwarten Sie in den nächsten Wochen neue Zeitpläne und Zeitpläne von großen Anbietern und integrieren Sie die Änderungen entsprechend in Ihre Infrastruktur.

"Wir wissen, dass SHA-1 seit Jahren auf einer Todeswache steht", sagte Tod Beardsley, Forschungsdirektor bei Rapid7. „Sobald eine Technologie im Internet alltäglich wird, ist es nahezu unmöglich, sie auszumerzen, selbst angesichts der überwältigenden Beweise für ihre Unsicherheit. Ich bin jedoch noch nicht bereit, über diesen Befund in Panik zu geraten. “

SHA-2 weist jedoch dieselben mathematischen Schwächen auf wie SHA-1. Warum also nicht zum stärkeren SHA-3-Algorithmus übergehen, der nicht dieselben Probleme aufweist? Wie Roger Grimes mir sagte, ist dies aus mehreren Gründen keine praktische Idee und würde wahrscheinlich zu weitreichenden Schwierigkeiten und operativen Herausforderungen führen. Obwohl NIST seit August 2015 die Umstellung auf SHA-3 empfiehlt, wird dies standardmäßig von praktisch keinem Betriebssystem oder keiner Software unterstützt. Außerdem wird SHA-2 nicht als betrieblich schwach wie SHA-1 angesehen, da seine Hash-Längen länger sind, sodass es für den Moment gut genug ist, um es zu verwenden. SHA-2-Hash-Längen reichen von 192 Bit bis 512 Bit, obwohl 256 Bit am häufigsten sind. Die meisten Anbieter werden im Laufe der Zeit mehr SHA-3-Unterstützung hinzufügen.Am besten nutzen Sie die Migration zu SHA-2 als Gelegenheit, um zu erfahren, wie Sie mit der unvermeidlichen Migration von SHA-2 zu SHA-3 umgehen können.

Die Warnungen waren die ganze Zeit da und jetzt ist die Zeit für Warnungen vorbei. IT-Teams müssen die Migration von SHA-1 zu SHA-2 abschließen und die Nachricht, dass ein erfolgreicher Kollisionsangriff jetzt in Reichweite ist, als Hammer für das Knüppelmanagement bei der Priorisierung des Projekts verwenden.