Eines der am weitesten verbreiteten Netzwerkprotokolle ist anfällig für einen neu entdeckten Angriff, der es Angreifern ermöglichen kann, die Kontrolle über eine Reihe von Umgebungen zu erlangen, darunter Industriesteuerungen, Telekommunikationsdienste, ISPs und alle Arten von Unternehmensnetzwerken.
RADIUS ist die Abkürzung für Remote Authentication Dial-In User Service und erinnert an die Tage des Einwahl-Internet- und Netzwerkzugriffs über öffentliche Telefonnetze. Seitdem ist es der De-facto-Standard für die einfache Authentifizierung geblieben und wird in praktisch allen Switches, Routern, Access Points und VPN-Konzentratoren unterstützt, die in den letzten zwei Jahrzehnten auf den Markt kamen. Trotz seiner frühen Ursprünge bleibt RADIUS ein wesentlicher Bestandteil für die Verwaltung von Client-Server-Interaktionen für:
- VPN-Zugang
- DSL- und Fiber-to-the-Home-Verbindungen, die von ISPs angeboten werden,
- Wi-Fi und 802.1X-Authentifizierung
- 2G- und 3G-Mobilfunk-Roaming
- Authentifizierung des 5G-Datennetzwerknamens
- Mobiles Daten-Offloading
- Authentifizierung über private APNs zur Verbindung mobiler Geräte mit Unternehmensnetzwerken
- Authentifizierung bei kritischen Infrastrukturverwaltungsgeräten
- Eduroam- und OpenRoaming-WLAN
RADIUS ermöglicht eine nahtlose Interaktion zwischen Clients – typischerweise Routern, Switches oder anderen Geräten, die Netzwerkzugriff bereitstellen – und einem zentralen RADIUS-Server, der als Gatekeeper für Benutzerauthentifizierung und Zugriffsrichtlinien fungiert. Der Zweck von RADIUS besteht darin, eine zentralisierte Authentifizierung, Autorisierung und Abrechnungsverwaltung für Remote-Anmeldungen bereitzustellen.
Das Protokoll wurde 1991 von einem Unternehmen namens Livingston Enterprises entwickelt. 1997 machte die Internet Engineering Task Force daraus einen offiziellen Standard, der drei Jahre später aktualisiert wurde. Obwohl es einen Vorschlagsentwurf zum Senden von RADIUS-Verkehr innerhalb einer TLS-verschlüsselten Sitzung gibt, der von einigen Anbietern unterstützt wird, senden viele Geräte, die das Protokoll verwenden, Pakete nur im Klartext über UDP (User Datagram Protocol).
Roll-your-own-Authentifizierung mit MD5? Wirklich?
Seit 1994 setzt RADIUS auf eine improvisierte, selbst entwickelte Verwendung der MD5-Hash-Funktion. MD5 wurde 1991 erstmals erstellt und 1992 von der IETF übernommen. MD5 war damals eine beliebte Hash-Funktion zum Erstellen sogenannter „Message Digests“, die eine beliebige Eingabe wie eine Zahl, einen Text oder eine Binärdatei einer festen Länge zuordnen 16-Byte-Ausgabe.
Bei einer kryptografischen Hash-Funktion sollte es für einen Angreifer rechnerisch unmöglich sein, zwei Eingaben zu finden, die derselben Ausgabe zugeordnet sind. Bedauerlicherweise basierte MD5 auf einem schwachen Design: Innerhalb weniger Jahre gab es Anzeichen dafür, dass die Funktion anfälliger für vom Angreifer verursachte Kollisionen sein könnte als ursprünglich angenommen identische Ausgänge. Diese Vermutungen wurden in einem 2004 von den Forschern Xiaoyun Wang und Hongbo Yu veröffentlichten Artikel offiziell bestätigt und in einem drei Jahre später veröffentlichten Forschungsbericht weiter präzisiert.
In der letztgenannten Arbeit, die 2007 von den Forschern Marc Stevens, Arjen Lenstra und Benne de Weger veröffentlicht wurde, wurde eine sogenannte „Choice-Prefix-Kollision“ beschrieben, eine Kollisionsart, die aus zwei von einem Angreifer ausgewählten Nachrichten resultiert, die mit zwei weiteren Nachrichten kombiniert werden Nachrichten, erstellen Sie den gleichen Hash. Das heißt, der Gegner wählt frei zwei unterschiedliche Eingabepräfixe 𝑃 und 𝑃′ mit beliebigem Inhalt, die in Kombination mit sorgfältig entsprechenden Suffixen 𝑆 und 𝑆′, die zufälligem Kauderwelsch ähneln, denselben Hash erzeugen. In der mathematischen Notation würde eine solche Kollision mit einem gewählten Präfix als 𝐻(𝑃‖𝑆)=𝐻(𝑃′‖𝑆′) geschrieben werden. Diese Art von Kollisionsangriff ist viel wirkungsvoller, da sie dem Angreifer die Freiheit gibt, hochgradig individuelle Fälschungen zu erstellen.
Um die Praktikabilität und die verheerenden Folgen des Angriffs zu veranschaulichen, erstellten Stevens, Lenstra und de Weger damit zwei kryptografische X.509-Zertifikate, die dieselbe MD5-Signatur, aber unterschiedliche öffentliche Schlüssel und unterschiedliche Distinguished Name-Felder generierten. Eine solche Kollision könnte dazu führen, dass eine Zertifizierungsstelle, die ein Zertifikat für eine Domäne signieren möchte, unwissentlich ein Zertifikat für eine völlig andere, bösartige Domäne signiert.
Im Jahr 2008 demonstrierte ein Forscherteam, zu dem Stevens, Lenstra und de Weger gehörten, wie ein ausgewählter Präfixangriff auf MD5 es ihnen ermöglichte, eine betrügerische Zertifizierungsstelle zu erstellen, die TLS-Zertifikate generieren konnte, denen alle gängigen Browser vertrauen würden. Ein zentraler Bestandteil des Angriffs ist die von den Forschern entwickelte Software namens Hashclash. Hashclash wurde inzwischen öffentlich zugänglich gemacht.
Trotz des unbestrittenen Niedergangs von MD5 blieb die Funktion jahrelang weit verbreitet. Die Abschaffung von MD5 begann erst im Jahr 2012, nachdem festgestellt wurde, dass die als Flame bekannte Schadsoftware, die Berichten zufolge gemeinsam von den Regierungen Israels und der USA entwickelt wurde, einen ausgewählten Präfix-Angriff verwendet hatte, um die MD5-basierte Code-Signierung durch den Windows-Update-Mechanismus von Microsoft zu fälschen . Flame nutzte das kollisionsfähige Spoofing, um den Update-Mechanismus zu kapern, sodass sich die Malware innerhalb eines infizierten Netzwerks von Gerät zu Gerät verbreiten konnte.
Mehr als 12 Jahre nach der Entdeckung des verheerenden Schadens von Flame und zwei Jahrzehnte nach der Bestätigung der Kollisionsanfälligkeit hat MD5 eine weitere weit verbreitete Technologie zunichte gemacht, die sich der allgemeinen Meinung widersetzt hat, vom Hashing-Schema abzuweichen – das RADIUS-Protokoll, das in Hardware oder unterstützt wird Software von mindestens 86 verschiedenen Anbietern. Das Ergebnis ist „Blast RADIUS“, ein komplexer Angriff, der es einem Angreifer mit einem aktiven Angreifer in der Mitte ermöglicht, Administratorzugriff auf Geräte zu erhalten, die RADIUS verwenden, um sich bei einem Server zu authentifizieren.
„Überraschenderweise haben Wang et al. „Nachdem 2004 eine MD5-Hash-Kollision nachgewiesen wurde, wurde RADIUS nicht aktualisiert, um MD5 zu entfernen“, schrieb das Forschungsteam hinter Blast RADIUS in einem am Dienstag veröffentlichten Artikel mit dem Titel „RADIUS/UDP als schädlich angesehen“. „Tatsächlich scheint RADIUS angesichts seiner Allgegenwärtigkeit in modernen Netzwerken bemerkenswert wenig Sicherheitsanalyse erhalten zu haben.“
Die Veröffentlichung des Papiers wird mit Sicherheitsbulletins von mindestens 90 Anbietern koordiniert, deren Waren anfällig sind. Viele der Bulletins werden von Patches begleitet, die kurzfristige Korrekturen implementieren, während eine Arbeitsgruppe von Ingenieuren aus der gesamten Branche längerfristige Lösungen entwirft. Jeder, der Hardware oder Software verwendet, die RADIUS integriert, sollte die technischen Details weiter unten in diesem Beitrag lesen und sich beim Hersteller nach Sicherheitshinweisen erkundigen.