WLAN-Sicherheitslücke im Speedport W 921V, W 504V und W 723V

Telekom-Kunden, die den WLAN-Router W 921V nutzen, können sich über ein schickes Hintertürchen freuen, welches das WLAN für jeden potentiellen Interessenten zugänglich macht. Mit anderen Worten: die Geräte sind sperrangelweit offen. (hier der Link zur Diskussion im Telekom-Forum, der dort veröffentlichte Standard-PIN wurde mittlerweile aus dem Beitrag gelöscht)

Ausgeliefert werden die Geräte mit einem vorkonfigurierten WPA2-Schlüssel, soweit nichts ungewöhnliches. WPS per PIN ist in der Grundkonfiguration abgeschaltet, aktiv ist lediglich die Push-Button-Methode (man betätigt einen kleinen Schalter auf der Rückseite des Geräts und WPS wird kurzzeitig aktiviert). Zumindest wird dem Benutzer das so in den Einstellungen angezeigt. Scheinbar sicher also.

In Wahrheit jedoch ist WPS via PIN immer aktiv, unabhängig von den Einstellungen, selbst wenn WPS komplett abgeschaltet wurde. Zudem funktioniert auf allen Geräten ein einheitlicher Standard-PIN, vollkommen egal, welcher PIN konfiguriert wurde. Und dieser Standard-Pin für die W921v lässt sich ziemlich easy per Google herausfinden. Jetzt wird nur noch ein WPS-fähiges WLAN-Gerät benötigt welches ein Tool für die WPS-PIN-Methode mitliefert, beim Verbindungsaufbau die Standard-PIN eingeben und binnen weniger Sekunden ist die schöne WPA2-Verschlüsselung hinfällig, man ist im WLAN. Und dafür wird nicht einmal Know How benötigt. Ein Firmware-Update ist noch nicht verfügbar, einzige Lösung bisher: WLAN deaktivieren.

Laut Golem sind die Speedports W 504V und W 723V von einem ähnlichen Problem betroffen, hier soll allerdings das Deaktivieren von WPS ausreichen. Prüft das aber besser selbst noch einmal, wenn Ihr eins dieser Geräte einsetzt.

Update: Die Telekom hat inzwischen die Beta eines Firmware-Updates für den Speedport W 921v bereit gestellt. Damit soll die beschriebene Lücke beseitigt werden.

Tags: , , , , , , ,

Backdoor in WordPress ganz easy

WordPress ist bei den meisten Nutzern gerade aufgrund seiner Flexibilität und einfachen Erweiterbarkeit sehr beliebt. Gerade letzteres bietet jedoch eine Vielzahl von Möglichkeiten, Backdoors einzuschleusen, die unerwünschten „Besuchern“ eine Menge Möglichkeiten für Unsinn verschaffen können.

Wie einfach es beispielsweise ist, eine Backdoor in ein Template zu integrieren, welche einen Benutzer in WordPress anlegt und diesem Administrator-Rechte zuweist, zeigt der Beitrag „How-To: Create Backdoor Admin Access in WordPress„. Der Code sitzt in der functions.php des Templates und wird durch einen speziellen Aufruf der Zielseite aktiviert. Mittels der Funktion wp_create_user aus wp-includes/registration.php wird nun ein neuer Benutzer in der Datenbank angelegt und zum Administrator gemacht. Fertig, die Tür ist offen. Egal, ob die Registrierung von neuen Benutzern erlaubt ist oder nicht.

Um solch eine Backdoor nachträglich in eine WordPress-Installation zu integrieren, benötigt ein Angreifer natürlich Zugriff auf die Daten, beispielsweise via FTP. Allerdings ist man darauf nicht zwingend angewiesen, was hindert einen potentiellen Angreifer daran, eine Seite aufzusetzen, von der man Unmengen an WordPress-Templates herunter laden kann, die durch die Bank mit einer solchen Funktion präpariert sind? Oder warum sollte ein Entwickler nicht ein solches Hintertürchen in sein wunderbares WordPress-Plugin integrieren? Hand aufs Herz: Wie groß wird der Anteil an WordPress-Nutzern wohl sein, die PHP beherrschen und ein solches Hintertürchen erkennen könnten? 10%? Und wie viele prüfen denn tatsächlich jedes Plugin oder Template auf potentiellen Schadcode? 1%? Weniger?

Aktuell überwiegt einfach das Vertrauen. Vertrauen in die Redlichkeit der Entwickler und Vertrauen in die Ehrlichkeit der Betreiber von Template-Portalen. Sicherlich löblich, offenbar ist noch nicht zu viel passiert in der Vergangenheit. Aber ein wenig Vorsicht sollte dennoch angebracht sein und somit sind vorbeugende Maßnahmen sicherlich nicht falsch.

Den oben beschriebenen „Exploit“ (um einen „echten“ Exploit handelt es sich meiner Meinung nach nicht wirklich) kann man auf verschiedene Weisen aushebeln.

Variante 1: Wir benennen die Datei wp-includes/registration.php einfach um. Damit hebeln wir allerdings automatisch sämtliche Funktionen zur Bearbeitung bereits existierender Benutzer aus. Also nicht so schick. Zudem ist das nach jedem WordPress-Update zu wiederholen.

Variante 2: Wir kommentieren die Funktion wp_create_user in der Datei wp-includes/registration.php aus. Das Gleiche müssten wir mit der Funktion wp_insert_user in der gleichen Datei tun. Auch hier sind verschiedene Funktionen in der Admin-Oberfläche anschließend defekt und auch dieses Procedere müsste nach jedem Update wiederholt werden. Also auch nicht wirklich schön…

Variante 3 (empfohlen): Wir legen einen zusätzlichen Verzeichnisschutz für das Verzeichnis /wp-admin/ an. Die meisten Provider bieten diese Funktion in der Admin-Oberfläche an, wer diese Funktion bei seinem Provider nicht findet, dem empfehle ich Punkt 8 dieses Artikels. Hier wird die Vorgehensweise recht gut erläutert, auch die anderen Tipps sind prinzipiell sehr zu empfehlen.
Dieser zusätzliche Verzeichnisschutz sorgt nun dafür, dass für den Zugriff auf /wp-admin/ eine zusätzliche Anmeldung erforderlich ist. Bevor also ein Angreifer, der bspw. die oben beschriebene Backdoor ausführen konnte, sich mit seinem neuen Benutzer an Eurem Blog anmelden könnte, müsste er eine weitere, von WordPress unabhängige Authentifizierung erfolgreich vollziehen. Wenn Ihr hier mit einem ausreichend starken Passwort arbeitet, wird das (relativ) schwierig.

Wie weiter oben bereits geschrieben, sehe ich die im verlinkten Beitrag aufgezeigte Möglichkeit zum Anlegen eines administrativen Benutzers nicht als „echten“ Exploit an sondern sehe die Problematik allgemein in der Möglichkeit der Erweiterbarkeit. Und sicherlich beschränkt sich das Problem somit nicht allein auf WordPress. Allerdings ist es natürlich durch die von WordPress zur Verfügung gestellten Funktionen wesentlich einfacher, erfolgreich eine Hintertür einzurichten. Möglicherweise sollten gerade die Funktionen zur Erstellung und Änderung von Benutzern gekapselt werden und eben nicht von jedem xbeliebigen Addon genutzt werden können. Aktuell ist es aber möglich, daher sollten WordPress-Nutzer sich nicht allein auf die mitgelieferten Sicherheitsfunktionen verlassen, sondern selbst Hand anlegen. Und sicherlich auch hin und wieder mal nachschauen, ob plötzlich neue Benutzer in der Datenbank auftauchen, obwohl die Registrierung nicht erlaubt ist.

Tags: , , ,