Aus gegebenem Anlass kommt heute mal ein Artikel zu einem sehr heiklen Thema: Plugins und Sicherheit. Ein mir bekannter Blog wurde letzte Woche gehackt. Anschließend konnte man auf diesem nur noch Space Invaders spielen. Glücklicherweise war es ein sehr netter Hacker, der seine Tat zugab und auch gleich erklärte, was falsch gemacht wurde und wie er damit ohne Probleme den Blog hacken konnte.
Funktion des Plugins
Die Sicherheitslücke steckte in dem Plugin Filedownload. Dieses Plugin wird eingesetzt um eine in WordPress hochgeladene Datei direkt zum Download anzubieten. In der Regel öffnet ein Browser ja eine Datei, die er direkt anzeigen kann, wie z.B. ein Bild oder eine PDF-Datei. Dieses Plugin gibt aber nun die angeforderte Datei so an den Browser zurück, dass dieser das Download-Dialogfenster öffnet und den Benutzer zum Download der Datei auffordert.
Die Sicherheitslücke
Die Sicherheitslücke bestand darin, dass das Plugin auch relative Verzeichnispfade akzeptierte. So konnte ohne weiteres die „wp-config.php“ Datei angefordert werden. Da hier alle Zugangsdaten in Klartext gespeichert sind und der Blog zusätzlich auch noch für den FTP-Account die gleichen Zugangsdaten nutzte, konnte der Angreifer ohne Probleme eigene Dateien hochladen. Ein böser Hacker hätte das ausnutzen und beliebigen Schadcode ausführen können (allerdings wohl nicht mit Administrationsrechten).
Der Autor des Plugins hat den Fehler mittlerweile behoben. Es gibt aber leider noch sehr viele Blog, die noch die unsichere Version verwenden. Diejenigen von euch, die auch dieses Plugin einsetzen, sollten also sofort auf die neueste Version updaten.
Weitere Beispiele für bekannte Sicherheitslücken
Im August wurde ein Sicherheitsproblem in der Funktion timthumb bekannt. Dabei war es einem Angreifer möglich eine beliebige Datei in ein System einzuschleusen. Damit konnte der Angreifer dann beliebigen Schadcode auf dem infizierten System ausführen. Da die timthumb Funktion von sehr vielen Themes verwendet wird, waren sehr viele Blogs angreifbar. Hier kommt erschwerend hinzu, dass für jedes Theme ein eigenes Sicherheitsupdate notwendig war, da fast alle Themes die Funktion direkt in das Theme integriert haben und somit auch die Sicherheitslücke nicht zentral für alle Themes geschlossen werden konnte. Im WordPress Repository findet man daher das Plugin Timthumb Vulnerability Scanner, mit dem man seinem Blog auf die noch offene Sicherheitslücke hin untersuchen kann. Damals wurde glücklicherweise von WordPress Deutschland Team und auch bei heise.de davon berichtet, so dass viele auf die Sicherheitslücke aufmerksam wurden.
Fazit
Es ist durch Plugins sehr einfach möglich die Funktionalität seines Blogs zu erweitern. Aber es ist leider auch sehr einfach möglich, seinen Blog dadurch einem erhöhten Sicherheitsrisiko auszusetzen. Es sollte nun niemand in Panik verfallen und alle Plugins deinstallieren. Es soll nur ein Appell sein die Updates, die für die diversen Plugins ständig im Backend angeboten werden auch zu installieren. Die meisten Plugin-Autoren pflegen auch ein Changelog, in dem man nachlesen kann, welche Änderungen die neue Version enthält. Aber in der Regel werden dadurch Fehler oder eben Sicherheitslücken geschlossen. Als zusätzliche Maßnahme sollte man eine regelmäßige Sicherung seines Blogs durchführen. Dazu teste ich seit ein paar Wochen BackWPup. Ich werde euch demnächst ausführlich darüber berichten.