
Dies ist ein Gastartikel von Timo Fach, in-security.net.
Am Freitag hat Randy hier in einem Kommentar gefragt, wie man seinen Blog vor Hackerangriffen schützen kann. In diesem Gastbeitrag möchte ich in Grundzügen auf verschiedene Angriffsmöglichkeiten auf einen WordPress-Blog hinweisen und verschiedene Gegenmassnahmen vorstellen.
Das Open Source Problem
WordPress ist ein Open Source Projekt. Auf der einen Seite bringt dies viele Vorteile, da sich viele Entwickler an der Entwicklung beteiligen können und das Blog CMS natürlich kostenlos ist. Bei WordPress kann diese Weiterentwicklung in Form von Themes oder Plugins geschehen, das bedeutet beliebige Entwickler können ihre eigenen Themes oder Plugins erstellen und allen WordPress Benutzern auf der Welt zur Verfügung stellen.
Und genau an diesem Punkt liegt das Problem. Denn jeder, der mal ein Programmiertutorial überflogen oder durch ein Programmierbuch geblättert hat, kann mit seinem Halbwissen seine Plugins oder Templates der Community zur Verfügung stellen, welche dann (ungewollt) Programmierfehler und Sicherheitslücken enthalten können. Bei der Masse an Erweiterungen bei WordPress gibt es auch keine Instanz, die alle Sachen überprüfen kann und somit einen gewissen (Sicherheits-)Standard sicherstellt.
Alleine in diesem Jahr wurden in WordPress Plugins bereits 21 Sicherheitslücken festgestellt, und es lässt sich nur schwer schätzen, wieviele weitere noch im Dunkeln schlummern. Abhilfe gibt es bei dem Open Source Problem leider nur bedingt. Zum einen könnte man auf alle Erweiterungen verzichten, was aber nicht im Sinne des Erfinders ist. Meine Empfehlung ist, möglichst nur Plugins von bekannten Entwicklern zu benutzen und alle Plugins immer aktuell zu halten. Jedes Update könnte kritische Sicherheitslücken beheben!
Ich weiß dein Passwort
Bei dem Thema Passwortschutz kann WordPress leider nicht wirklich mithalten. In der Datenbank werden die Passwörter zwar verschlüsselt gespeichert und bei der Installation automatisch generiert, aber es gibt auch eine Menge Probleme:
Zum einen wird nach der Installation eine Mail an die angegebene Adresse geschickt, in der das generierte Passwort im Klartext steht. Wenn ein Dritter jetzt ungewollt Zugriff auf diese Mailadresse hat oder bekommt, kann er sich in das Adminpanel von WP einloggen. Selbst wenn das Passwort im Nachhinein geändert wurde, verrät diese Email, das auf dem Blog ein Benutzeraccount auf diese Mailadresse läuft. Also kann ein neues Passwort angefordert werden und der Zugriff auf das Adminpanel ist auch vorhanden.
Dies bedeutet, das sowohl das Passwort für den Zugang zu dem Adminpanel des Blogs als auch zu der eigenen Emailadresse geschützt werden muss. Zu dem Thema Passwortsicherheit gibt es schon gute Tippseiten, das wichtigste ist: Bei der Emailadresse und dem Blog zwei verschiedene Passwörter benutzen, diese sollten länger als 8 Zeichen sein und Klein-, Großbuchstaben, Ziffern und möglichst auch Sonderzeichen enthalten. Desweiteren ist es wichtig, das die Passwörter nicht ein zweites Mal verwendet werden. Wird zum Beispiel ein Passwort für eine Emailadresse und ein Forum verwendet, dann erhöht das Forum, wenn es gehackt wird, das Risiko, dass das Passwort bekannt wird.
Ein anderes Problem sind sogenannte Bruteforce-Attacken. Hierbei werden nacheinander verschiedene Passwörter durchprobiert, bis eins passt. Leider ist WordPress bei solchen Attacken sehr hilfreich und kommunikativ. Optimalerweise sollte bei einem fehlgeschlagenen Login nur stehen “Der Login ist fehlgeschlagen!” oder ähnliches. WordPress bietet aber noch genauere Fehlermeldungen und teilt einem potentiellen Angreifer “Fehler: Falscher Benutzername” oder wenn der Benutzername richtig ist, “Fehler: Falsches Passwort.” , mit. Dieses Problem ist als Information leakage bekannt und unterstützt mit den präzisen Fehlermeldungen einen potentiellen Angriff, indem die Anzahl möglicher User-Passwort Kombinationen bei einer Bruteforce-Attacke geschickt minimiert werden kann.
Abhilfe schafft hier das Plugin Secure WordPress, indem es diese Fehlermeldungen abschaltet.

Das Secure WordPress Plugin
Rechteerweiterung durch den Theme Editor oder die Plugin Installation
Ist erst einmal der Zugriff auf das Admin Panel von WordPress vorhanden, dann hat ein Angreifer leichtes Spiel. Über den Theme Editor oder die Plugin Installation kann eine sogenannte Php Shell hochgeladen werden, die den Zugriff auf an den Blog angeschlossene Webseiten (vielleicht ein Shop mit einem Blog oder ein Forum mit einem Blog …) möglich macht.
Die Benutzung des Theme Editors über das Adminpanel kann man ausschalten, indem man den Ordern und Dateien in /wp-content/themes/ die Rechte (Chmod) 644 gibt. Ob sich auch die Plugin-Installation ausstellen lässt, ist mir leider nicht bekannt.
Ich hoffe das verschiedene Themen im Bezug auf die Sicherheit eines WordPress-Systems deutlicher geworden sind. Falls du noch Rückfragen, weiterführende Fragen oder Anregungen hast, schreib einfach einen Kommentar :)
Titelfoto: Nick Benjaminsz
- Blog SEO mit einem Plugin optimieren - so richte ich das Platinum SEO Pack für Wordpress ein
- Wordpress Sicherheit: Versionsnummer aus dem Quellcode entfernen
- Mobil Bloggen mit dem Smartphone - Segen oder Qual?
- Blogs und deren Blogger vorgestellt: WeLoveBarcelona.de von Johannes Breunig









Danke für die Hinweise. Es ist ja immer ein Wechselspiel zwischen Komfort und Sicherheit.
Ich habe übrigens das Plugin Login LockDown installiert für die Abschaltung von Fehlermeldungen und noch ein paar Einstellungen mehr. Soweit ich das sehen kann ähneln sich die Plugins.
Habe gestern auch Lockin Lockdown installiert, und gerade mal schnell `ne neue Emailadresse für administrative Zwecke generiert. An was man nicht alles denken muss…..Danke für den Tipp!
Ciao Uli
Wichtig beim Absichern des Login sind – neben einem einmaligen und möglichst komplexen Password – m.E. drei Sachen:
1. Der Administrator-Account sollte nicht admin heißen. Dies war vor 3.0 standardmäßig eingestellt und mit Bordmitteln nicht abstellbar (außer durch Neuanlage eines weiteren Admins mit anderem Namen und anschließendes Löschen des ursprünglichen). Vorteil für den Angreifer: er muss nur noch das Passwort erraten. Also: Auf alle Fälle ändern.
2. Der Login-Seite die Plapperei abgewöhnen – also keine Auskunft mehr, was genau falsch war – Passwort oder Accountname. Das geht am Einfachsten mit dem im Artikel empfohlenen Plugin “Secure WordPress”
3. Die Login-Seite ist sehr geduldig, ein Angreifer kann es beliebig oft hintereinander versuchen. Dies kann z.B. mit dem Plugin “Limit Login Access” auf eine einstellbare Anzahl von Versuchen begrenzt werden.
Bei einer Neuinstallation von wordpress kann man den “Adminnamen” direkt ändern – jedenfalls bei der neuesten Version…
Hallo Uli,
ja, bei neuen (ab WP 3.0). Aber alle früher angelegten (und das dürften nach wie vor die meisten sein), haben noch den Benutzer mit Namen “admin”.
Ich hatte diese Seite hier zu dem Thema gefunden und einiges davon umgesetzt.
http://wordpress-buch.bueltge.de/wordpress-sicherer-machen/30/
Das bezieht sich noch auf frühere Versionen.
Ciao Uli
htaxx kann auch nicht schaden und kostet nichts, man muss dafür nichtmal ein plugin installieren ;)
dazu wie schon gesagt nicht jede spielerei einbauen, die auf den ersten blick gut aussieht.
gruss
terror
Danke für die guten Hinweise – habe mich mit dem ganzen Thema noch gar nicht so eingehend beschäftigen können. Sehe aber, dass ich das unbedingt mal tun sollte ;)
Viele Grüße
Jasmina
@Terror:
Das mit dem htaccess ist ein guter Hinweis, daran habe ich garnicht gedacht als ich den Artikel geschrieben habe. Damit kann man einen Angreifer schön ärgern und das würde auch das Problem mit dem hochladen einer Shell über den Template Editor oder die Plugin Installation verhindern. Vorausgesetzt natürlich das Passwort ist dem Angreifer nicht bekannt.
vg Timo
Ich denke über das Thema Sicherheit kann man ganze Bücher schreiben, von daher sind die ersten Tipps doch schon recht gut und zeigen, dass ich eigentlich schon recht gut davor bin.
Den Beitrag von Frank Bueltge wird ich mir auch noch mal zu Gemüte führen.
An einer htaccess hatte ich mich auch schon versucht, also ich habe eine, aber sicher, ob da nun alles drin steht, was rein gehört. Bin ich mir nicht. Gibt es da vielleicht ein gutes Muster oder könntest du mal erläutern, was rein gehört und was nicht?
Aber ansonsten schon mal herzlichen Dank für deinen Beitrag Timo.
Mir geht es ähnlich wie Jasmina… Die Sicherheit des WordPress-Blogs sollte wohl verstärkt durchdacht werden. Das hier vorgestellte Plugin wäre sicherlich ein lohnenswerter Anfang.