Anatomie eines Phishing-Kits: was hinter der gefälschten Seite passiert
Eine Phishing-Seite wird fast nie von Hand geschrieben. In den allermeisten Fällen stammt sie aus einem fertigen Archiv, einem Phishing-Kit: einer .zip-Datei, die heruntergeladen, auf einem gemieteten oder gehackten Server abgelegt wird und innerhalb von Minuten einsatzbereit ist. Hier ist, was sich unter der Motorhaube verbirgt – von der Fassade bis zu den gestohlenen Daten.
Ein Werkzeugkasten, der in fünf Minuten aufgesetzt ist
Das erste Element des Kits ist die Fassade: eine Kopie des HTML-, CSS- und JavaScript-Codes einer echten Website (einer Bank, eines Messaging-Dienstes, der Steuerverwaltung …). Diesen Code zu holen ist einfach, jeder Browser erlaubt das Speichern. Die Aufgabe des Kits besteht darin, ihn funktionsfähig zu machen: Die Eingabefelder werden an ein Skript angebunden, das alles Eingetippte abfängt, statt ein Passwort beim echten Dienst zu prüfen.
Um länger zu überleben, verbirgt das Kit oft seine eigene Funktionsweise. Das Skript, das die Daten abfängt, ist häufig kodiert (zum Beispiel in Base64), was es auf den ersten Blick unleserlich und für einen Crawler oder einen automatisierten Sicherheitsscanner, der den Code nach bekannten Schlüsselwörtern durchsucht, schwerer erkennbar macht. Das ist keine starke Verschlüsselung: Ein Mensch, der sich die Zeit nimmt, das Skript zu dekodieren, schafft das ohne Schwierigkeiten. Es ist vor allem ein Weg, ein paar Stunden oder Tage zu gewinnen, bevor das Kit entdeckt wird.
Was die Seite prüft, während das Opfer tippt
Ein gut gebautes Kit zeichnet nicht einfach irgendetwas auf. Es validiert die Eingaben live, genau wie es die echte Website tun würde – aus zwei Gründen: um die Illusion eines seriösen Formulars zu erzeugen und vor allem, um den Angreifer nicht mit unbrauchbaren Daten zu belasten.
- Das E-Mail-Format wird zeichengenau geprüft (Vorhandensein eines „@“, einer gültigen Domain …).
- Die Kartennummer durchläuft den Luhn-Algorithmus: eine einfache mathematische Formel, die prüft, ob eine Folge von sechzehn Ziffern einer echten Karte entsprechen könnte, ohne irgendetwas über die Karte selbst zu wissen. Eine zufällig erfundene Nummer scheitert fast immer an diesem Test; das Kit weist die Eingabe zurück und fragt erneut nach der Karte – und vermittelt dabei den Eindruck einer seriösen Website.
Der wirksamste und diskreteste Teil betrifft die Zwei-Faktor-Authentifizierung (MFA / 2FA). Viele aktuelle Kits zeigen direkt nach der Passworteingabe einen Ladebildschirm à la „Wird überprüft …“. Währenddessen meldet sich der Angreifer im Hintergrund live mit den gerade gestohlenen Zugangsdaten bei der echten Website an. Die echte Website sendet daraufhin einen echten Code per SMS an das Opfer, das ihn ahnungslos auf der gefälschten Seite eingibt: Das Kit leitet ihn sofort an den Angreifer weiter, der ihn seinerseits auf der echten Website eingibt. Das Opfer sieht nur einen Bildschirm, der etwas zu lange lädt; der Angreifer hat gerade vollen Zugriff erlangt, Einmalcode inklusive.
Dieser Mechanismus bleibt ein manueller Aufbau, den der Angreifer von Hand bestätigen muss. Es gibt weitaus automatisiertere Varianten, bei denen ein Server die gefälschte Seite ohne jedes menschliche Zutun zwischen Opfer und echter Website schaltet: Das ist Thema des Leitfadens AiTM: wenn Phishing nicht nur Ihr Passwort, sondern Ihre Sitzung stiehlt.
Wohin die Daten wirklich gehen: drei Ausgänge
Nach der Validierung müssen die Daten den Server verlassen, um zum Angreifer zu gelangen. Drei Kanäle tauchen in aktuellen Kits immer wieder auf:
- Telegram- oder Discord-Webhooks: die heute am häufigsten genutzte Methode. Das Kit sendet eine einfache Anfrage an einen privaten Telegram- oder Discord-Kanal, und jede gestohlene Zugangsinformation erscheint sofort in einer Konversation, auf dem Telefon des Angreifers. Schnell, kostenlos und schwer zu erkennen, ohne den Quellcode der Seite anzusehen.
- Der Versand von E-Mails: Das Kit nutzt die PHP-Funktion
mail(), um jede Eingabe als kurzen Textbericht an eine vom Angreifer gewählte Adresse zu übermitteln. - Lokale Protokolldateien: rudimentärer – das Kit schreibt jede gestohlene Angabe in eine versteckte Datei (
.txtoder.csv) direkt auf dem Server, die der Angreifer später abholt.
Diese drei Kanäle schließen sich nicht gegenseitig aus: Viele Kits kombinieren einen sofortigen Webhook zur unmittelbaren Benachrichtigung mit einer Sicherungsdatei für den Fall, dass der Webhook ausfällt.
Der Vorhang fällt: Weiterleitung und Aufräumen
Sobald die Daten weg sind, bleibt die gefälschte Seite nicht einfach stehen: Sie leitet das Opfer zur echten Anmeldeseite des nachgeahmten Dienstes weiter (zum Beispiel login.live.com), oft mit einer dezenten Fehlermeldung. Der beabsichtigte Effekt ist präzise: Das Opfer denkt, es habe sich beim Passwort vertippt, gibt seine Zugangsdaten erneut auf der echten Website ein, meldet sich normal an … und schöpft keinen Verdacht.
Manche Kits gehen weiter und schützen sich nach einem erfolgreichen ersten Durchlauf selbst: Löschen von Protokollen, die ihre Funktionsweise verraten könnten, oder Sperren der IP-Adresse des Opfers, damit ein zweiter Besuch (etwa der eines Forschers, der die Seite erneut untersuchen möchte) auf eine leere Seite oder einen Fehler trifft statt auf die vollständige Falle.
Wie ein so gut eingefädelter Aufbau am Ende auffliegt
Trotz all dieser Sorgfalt hinterlassen Kits verwertbare Spuren. Die häufigste ist ein Fehler in der Serverkonfiguration: ein offenes Verzeichnis (directory listing), das es jedem erlaubt, den Ordner der Website zu durchstöbern und damit das .zip-Archiv des Kits genau so herunterzuladen, wie es abgelegt wurde. Ist dieses Archiv erst einmal in der Hand, findet ein Ermittler darin oft im Klartext oder kaum kodiert die wirklich entscheidenden Zugangsdaten: das Token des Telegram-Bots, die Discord-Kanal-ID oder die Empfänger-E-Mail-Adresse.
Diese Zugangsdaten betreffen nicht nur eine einzige Seite: Dasselbe Bot-Token wird oft über mehrere Kampagnen desselben Angreifers hinweg wiederverwendet. Es Telegram oder Discord zu melden, kann daher eine ganze Reihe von Websites auf einen Schlag lahmlegen, weit über die gefundene hinaus. Es gilt dasselbe Prinzip wie bei der E-Mail-Versandinfrastruktur, ausführlich beschrieben im Leitfaden Phishing analysieren: von der Nachricht zur Infrastruktur: Jedes gefundene Element ist auch ein Hebel, und der Server, der das Kit hostet, bleibt seinem Hoster gegenüber meldbar wie jede andere Phishing-Seite (siehe die richtige Abuse-Adresse bei einem Hoster finden).
Bevor es so weit kommt, bleibt der erste Reflex, den Link zu prüfen, der zur Seite geführt hat. Fügt man die verdächtige E-Mail in Baitback ein, verfolgt das Tool die Weiterleitungen, identifiziert den versendenden Server und dessen Hoster und bereitet direkt die Meldetexte vor, ohne dass man selbst im Code des Kits herumsuchen muss.
- Eine Phishing-Seite stammt fast immer aus einem fertigen Kit, das geklont und dann verschleiert wurde, um die Entdeckung zu verzögern.
- Die Live-Verifizierung (Luhn, E-Mail-Format, in Echtzeit weitergeleitete MFA) dient dazu, unbrauchbare Daten herauszufiltern und Einmalcodes zu stehlen.
- Gestohlene Daten verlassen das System meist über einen Telegram- oder Discord-Webhook, eine PHP-E-Mail oder eine lokale Protokolldatei.
- Die abschließende Weiterleitung zur echten Website soll den Verdacht des Opfers zerstreuen.
- Ein offenes Verzeichnis kann das komplette Archiv des Kits preisgeben – und damit die Zugangsdaten, mit denen sich die gesamte Infrastruktur des Angreifers auf einen Schlag lahmlegen lässt.