Zwei-Faktor-Authentifizierung (2FA) nicht mehr sicher

Zwei-Faktor-Authentifizierung (2FA) nicht mehr sicher

Penetrationstester und Angreifer haben ein neues Tool in ihrem Arsenal, mit dem Phishing-Angriffe auf eine Weise automatisiert werden können, die die Zwei-Faktor-Authentifizierung (2FA) beseitigt und nicht einfach zu erkennen und zu blockieren ist. Das Tool vereinfacht die Bereitstellung solcher Angriffe erheblich. Daher sollten Unternehmen ihr Anti-Phishing-Training entsprechend anpassen.

Reverse-Proxy Muraena

Das neue Toolkit wurde letzten Monat auf der Hack in the Box-Konferenz in Amsterdam vorgestellt und nach einigen Tagen auf GitHub veröffentlicht. Es besteht aus zwei Komponenten: Einem transparenten Reverse-Proxy namens Muraena und einem Docker-Container zur Automatisierung kopfloser Chromium-Instanzen namens NecroBrowser.

Ein Man-in-the-Middle-Angriff

Herkömmliche Phishing-Angriffe, mit denen die meisten Menschen vertraut sind, bestehen aus gefälschten Anmeldeseiten, die auf von Angreifern kontrollierten Webservern gehostet werden und von benutzerdefinierten Domänen stammen, deren Namen denen der Zielwebsites ähneln. Solche statischen Angriffe sind jedoch bei Onlinediensten, die eine Zwei-Faktor-Authentifizierung verwenden, nicht wirksam, da keine Interaktion mit den legitimen Websites stattfindet, um die Erzeugung von Codes für die einmalige Verwendung auszulösen. Ohne diese Codes können sich Angreifer nicht mit den gefälschten Anmeldeinformationen anmelden.

Um 2FA zu überwinden, müssen Angreifer ihre Phishing-Websites als Proxyservices einrichten, Anfragen im Namen der Opfer an die legitimen Websites weiterleiten und Antworten in Echtzeit zurücksenden. Das Endziel besteht nicht darin, nur Benutzernamen und Kennwörter abzurufen, sondern aktive Sitzungstoken, sogenannte Sitzungscookies, die die realen Websites mit angemeldeten Konten verknüpfen. Diese Sitzungscookies können in einem Browser abgelegt werden, um auf die Konten zuzugreifen, mit denen sie direkt verknüpft sind, ohne dass eine Authentifizierung erforderlich ist.

Diese proxybasierte Technik ist nicht neu und seit langer Zeit bekannt. Die Einrichtung eines solchen Angriffs erforderte jedoch technisches Wissen und die Konfiguration mehrerer unabhängiger Tools, z. B. des NGINX-Webservers, um als Reverse-Proxy ausgeführt zu werden. Dann musste der Angreifer die gestohlenen Sitzungscookies manuell missbrauchen, bevor sie verfallen. Darüber hinaus verwenden einige Websites Technologien wie Subresource Integrity (SRI) und Content Security Policy (CSP), um das Proxying zu verhindern, und einige blockieren sogar automatisierte Browser, die auf Headern basieren.

Muraena und NecroBrowser wurden entwickelt, um diese Schutzmechanismen zu umgehen und den größten Teil des Prozesses zu automatisieren. Das bedeutet, dass Phishing-Angriffe, die 2FA besiegen können, jetzt von einer größeren Anzahl von Angreifern ausgeführt werden können. Die Tools wurden von den Forschern Michele Orru, einem früheren Kernentwickler des Browser Exploitation Framework Project (BeEF), und Giuseppe Trotta, einem Mitglied des Bettercap-Projekts, entwickelt.

Wie funktionieren Muraena und NecroBrowser?

Muraena ist in der Programmiersprache Go geschrieben, was bedeutet, dass es auf jeder Plattform kompiliert und ausgeführt werden kann, auf der Go verfügbar ist. Nach der Bereitstellung kann der Angreifer seine Phishingdomäne konfigurieren und ein legitimes Zertifikat dafür anfordern, z. B. mithilfe der gemeinnützigen Zertifizierungsstelle Let’s Encrypt.

Das Tool enthält einen minimalen Webserver, der als Reverse-Proxy fungiert, und einen Crawler, der automatisch ermittelt, welche Ressourcen von der legitimen Website als Proxy verwendet werden sollen. Der Proxy schreibt vom Opfer empfangene Anfragen transparent um, bevor er sie weiterleitet.

Der Crawler generiert automatisch eine JSON-Konfigurationsdatei, die manuell angepasst werden kann, um verschiedene Abwehrmaßnahmen auf komplexeren Websites zu umgehen. Das Paket enthält Beispielkonfigurationsdateien für Google, GitHub und Dropbox.

Sobald ein Opfer auf einer von Muraena betriebenen Phishing-Website landet, funktioniert der Anmeldevorgang genauso wie auf der realen Website. Der Benutzer wird nach seinem 2FA-Code gefragt. Nachdem sie es bereitgestellt haben und die Authentifizierung abgeschlossen ist, stiehlt der Proxy das Sitzungscookie.

Das Sitzungstoken wird normalerweise vom Browser in einer Datei gespeichert und bei nachfolgenden Anforderungen bereitgestellt. Auf diese Weise kann die Website dem Browser für eine bestimmte Zeitspanne (Sitzungsdauer) automatisch Zugriff auf ein Konto gewähren, ohne erneut nach dem Anmeldekennwort zu fragen. Muraena kann die gesammelten Sitzungs-Cookies automatisch an seine zweite Komponente, den NecroBrowser, weiterleiten, der sie sofort missbrauchen kann.

NecroBrowser ist ein Mikrodienst, der über eine API gesteuert und so konfiguriert werden kann, dass er Aktionen über headerlose Chromium-Instanzen ausführt, die in Docker-Containern ausgeführt werden. Abhängig von den verfügbaren Serverressourcen kann ein Angreifer gleichzeitig Dutzende oder Hunderte solcher Container erzeugen, wobei jeweils ein Sitzungscookie einem Opfer gestohlen wird.

Die von den Zombie-Browser-Instanzen ausgeführten Aktionen können vollständig automatisiert werden. Abhängig von der Art des Kontos kann dies beispielsweise bedeuten, dass Screenshots von E-Mails erstellt, ein Zurücksetzen des Kennworts eingeleitet, unerwünschte Schlüssel zu GitHub hochgeladen oder unerwünschte Weiterleitungsadressen zu Postfächern hinzugefügt werden. Die Browser-Instanzen könnten auch verwendet werden, um Informationen über Kontakte und Freunde in sozialen Netzwerken zu sammeln und sogar um bei einem wurmartigen Angriff Phishing-Nachrichten an diese Freunde zu senden.

So schützen Sie sich vor automatisierten Phishing-Angriffen

Leider blockieren nur wenige technische Lösungen solche Phishing-Angriffe auf der Serverseite vollständig. Muraena wurde entwickelt, um zu zeigen, dass Techniken wie SRI und CSP nur eine begrenzte Wirkung haben und automatisiert umgangen werden können. Darüber hinaus zeigt das Tool, dass 2FA keine kugelsichere Lösung ist.

Proxy-basiertes Phishing kann jedoch einige 2FA-Implementierungen nicht verhindern – diejenigen, die USB-Hardware-Token verwenden, die den Universal 2nd Factor (U2F) -Standard unterstützen. Dies liegt daran, dass diese USB-Token über den Browser eine kryptografisch überprüfte Verbindung zur legitimen Website herstellen, die nicht über den Reverse-Proxy des Angreifers erfolgt. In der Zwischenzeit sind Lösungen, die auf Codes basieren, die über SMS empfangen oder von mobilen Authentifizierungs-Apps generiert wurden, anfällig, da die Opfer diese manuell eingeben müssen und dies möglicherweise auf den Phishing-Websites tun.

Eine andere technische Lösung kann eine Browsererweiterung sein, die überprüft, ob der Benutzer seine Anmeldeinformationen auf der richtigen Website eingibt. Google hat für Chrome eine solche Erweiterung namens Password Alert entwickelt, die Benutzer warnt, wenn sie versuchen, ihre Google-Anmeldeinformationen auf einer Website einzugeben, die nicht zu Google gehört.

Es bleibt sehr wichtig, die Benutzer zu schulen, wachsam zu sein und sicherzustellen, dass sie sich auf der richtigen Website mit dem richtigen Domainnamen authentifizieren. Das Vorhandensein eines TLS / SSL-Indikators und eines gültigen Zertifikats reicht nicht aus, um eine Website als legitim zu betrachten, da Zertifikate jetzt einfach kostenlos bezogen werden können. Die meisten Phishing-Sites sind daher HTTPS-fähig.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert