Hacker verwenden die seit über zehn Jahren bekannte OpenPGP-Protokollfunktion.
Wir sagen Ihnen, was die Essenz ist und warum sie sie nicht schließen können.
/ Unsplash / Chunlea JuNetzwerkprobleme
Mitte Juni
griffen unbekannte
Personen ein Netzwerk von kryptografischen Schlüsselservern von
SKS Keyserver an , die auf der Grundlage des OpenPGP-Protokolls erstellt wurden. Dies ist der IETF-Standard (
RFC 4880 ), mit dem E-Mails und andere Nachrichten verschlüsselt werden. Das SKS-Netzwerk wurde vor 30 Jahren gegründet, um öffentliche Zertifikate zu vertreiben. Tools wie
GnuPG zum Verschlüsseln von Daten und zum Erstellen elektronischer digitaler Signaturen sind damit verbunden.
Hacker haben die Zertifikate von zwei GnuPG-Projektbetreuern - Robert Hansen und Daniel Gillmor - kompromittiert. Das Herunterladen eines beschädigten Zertifikats vom Server führt zum Absturz von GnuPG - das System friert nur ein. Es besteht Grund zu der Annahme, dass Angreifer hier nicht aufhören und die Anzahl der gefährdeten Zertifikate nur zunehmen wird. Derzeit ist das Ausmaß des Problems unbekannt.
Essenz des Angriffs
Hacker haben eine Sicherheitslücke im OpenPGP-Protokoll ausgenutzt. Es ist der Gemeinde seit Jahrzehnten bekannt. Auch auf GitHub
finden Sie die entsprechenden Exploits. Bisher hat jedoch niemand die Verantwortung übernommen, das "Loch" zu schließen (wir werden weiter unten auf die Gründe eingehen).
Ein paar Auswahlen aus unserem Blog über Habré:
Gemäß der OpenPGP-Spezifikation kann jeder Zertifikaten digitale Signaturen hinzufügen, um seinen Besitz zu bestätigen. Darüber hinaus ist die maximale Anzahl von Signaturen in keiner Weise geregelt. Und hier tritt ein Problem auf: Im SKS-Netzwerk können Sie bis zu 150.000 Signaturen für ein Zertifikat platzieren, GnuPG unterstützt eine solche Nummer jedoch nicht. Beim Laden eines Zertifikats bleibt GnuPG (wie übrigens auch andere OpenPGP-Implementierungen) hängen.
Einer der Benutzer
führte ein Experiment durch - der Import eines Zertifikats dauerte ungefähr 10 Minuten. Das Zertifikat hatte mehr als 54.000 Unterschriften und ein Gewicht von 17 MB:
$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6 gpg: key F20691179038E5C6: 4 duplicate signatures removed gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys gpg: key F20691179038E5C6: 4 signatures reordered gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <dkg@fifthhorseman.net>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 gpg: imported: 1 $ ls -lh pubring.gpg -rw-r--r-- 1 filippo staff 17M 2 Jul 16:30 pubring.gpg
Die Situation wird durch die Tatsache verschärft, dass Schlüsselserver mit OpenPGP keine Zertifikatinformationen löschen. Dies geschieht, damit Sie die Kette aller Aktionen mit Zertifikaten verfolgen und deren Ersetzung verhindern können. Daher ist es unmöglich, gefährdete Elemente zu beseitigen.
Tatsächlich ist das SKS-Netzwerk ein großer „Dateiserver“, auf den jeder Daten schreiben kann. Um das Problem zu veranschaulichen, hat ein GitHub-Bewohner
im vergangenen Jahr ein
Dateisystem erstellt , in dem Dokumente in einem Netzwerk von Servern mit kryptografischen Schlüsseln
gespeichert werden.
Warum ist die Sicherheitsanfälligkeit nicht geschlossen?
Es gab keinen Grund, die Sicherheitsanfälligkeit zu schließen. Bisher wurde es nicht zur Durchführung von Hackerangriffen verwendet. Obwohl die IT-Community SKS- und OpenPGP-Entwickler
seit langem gebeten hat , auf das Problem zu achten.
Fairerweise ist anzumerken, dass sie im Juni noch
den experimentellen Schlüsselserver
keys.openpgp.org gestartet haben . Es implementiert Schutz vor diesen Arten von Angriffen. Die Datenbank wird jedoch von Grund auf neu gefüllt, und der Server selbst ist nicht Teil von SKS. Daher wird es einige Zeit dauern, bis es verwendet werden kann.
/ Unsplash / Rubén BagüésDer komplizierte Synchronisationsmechanismus verhindert, dass der Fehler im ursprünglichen System behoben wird. Das Schlüsselservernetzwerk wurde ursprünglich als Proof of Concept zur Verteidigung einer Dissertation von Yaron Minsky geschrieben. Darüber hinaus wurde für die Arbeit eine eher spezifische OCaml-Sprache gewählt. Laut Betreuer Robert Hansen ist das Verständnis des Codes schwierig, so dass nur geringfügige Korrekturen daran vorgenommen werden. Um die SKS-Architektur zu ändern, müssen Sie sie von Grund auf neu schreiben.
In jedem Fall glaubt GnuPG nicht, dass das Netzwerk jemals repariert wird. In einem Beitrag auf GitHub haben die Entwickler sogar geschrieben, dass sie die Arbeit mit SKS Keyserver nicht empfehlen. Dies ist einer der Hauptgründe, warum der Übergang zum neuen Dienst keys.openpgp.org eingeleitet wurde. Wir können nur die weitere Entwicklung der Ereignisse beobachten.
Ein paar Materialien aus unserem Unternehmensblog: