DIREKTKONTAKT

Uncategorized

WordPress sicherer machen – Teil 1

Dreibeinblog Placeholder08

Nachdem meine WordPress-Installationen vor rund einem Monat Ziel einer böswilligen Attacke geworden sind, habe ich mir einige Gedanken gemacht, wie ich WordPress (im Folgenden WP) etwas wirkungsvoller gegen solche Angriffe schützen kann.

Bei der vorgefallenen Attacke hatte der Angreifer sich ganz normal in meine WP-Adminoberfläche einloggen können und eine PHP-Datei von WP durch ein eigenes PHP-Skript ersetzt. Was dieses Skript genau machte, konnte ich nicht exakt nachvollziehen, jedenfalls erzeugte es eine Menge Queries und schien „nach Hause zu telefonieren“.
Die Datei war schnell lokalisiert und eliminiert. Ein sofortiges Verändern von Admin-Name und Passwort schafften erste Abhilfe.


1. Abschnitt: Admin-Account

Damit sind wir aber schon bei der ersten Schwachstelle im System.

Standardmäßig ist WP auf den Usernamen „admin“ voreingestellt und das Login dürfte somit bei einer Vielzahl von WP-Blogs so aussehen:

wpsicher

Wir müssen uns vor Augen halten, daß unliebsame Angreifer zunächst einmal vorne an der Tür rütteln, um zu schauen, ob sie offen steht, bevor sie sich mühsam auf die Suche nach anderen Einstiegsmöglichkeiten machen, um das mal bildlich auszudrücken.
Beliebtestes Angriffsziel ist daher der offizielle dafür vorgesehene Loginbereich des Weblog-Administrators.

Hier sieht WP zwei Hürden vor:

1. den Admin-Namen
2. das Passwort

Übernimmt man nun den voreingestellten Adminnamen „admin“, so lässt man sozusagen die erste Hürde gleich weg und der Angreifer kann sich ganz dem Passwort widmen.
Das bedeutet: Den Namen „admin“ zu verwenden ist letztlich eine Dummheit, die man kinderleicht umgehen kann, indem man einen anderen, am besten kryptischen, Namen wählt und möglichst nicht den eigenen Vornamen aus dem Impressum oder eine andere naheliegende Bezeichnung wählt.
Tabu sind Begriffe wie:

– Admin
– Sysop
– Webmaster
– Blogger
– der eigene Vorname
– der Nachname
– der Blogname
usw.

Am Besten wählt man eine mindestens 8 Zeichen lange Bezeichnung, die neben Buchstaben auch einige Zahlen enthält. Beispiel: TXT981XQ.

Durch diese einfache Maßnahme erschwert man einem unliebsamen Eindringling seine Arbeit schon ein kleines bißchen. Unerfahreneren Eindringlingen legt das schon gehörig Steine in den Weg. Und diese Maßnahme ist ebenso einfach wie wirkungsvoll. Warum also sollte man sie nicht anwenden.

Der erste Rat lautet also:

Wähle einen möglichst nicht zu ergründenden Admin-Namen für das Login!


2. Abschnitt: Adminaccount entfernen

Als nächste Maßnahme vernichten wir den Account des von WP bei der Installation vollautomatisch angelegten Nutzers „admin“.
Unerfahrenen Bloganwendern soll durch diesen automatisch kreierten Account die Arbeit etwas erleichtert werden, aber leider macht es das auch den Ganoven etwas leichter.
Also weg damit!

Deshalb füge man im Admin-Bereich einen neuen Administrator hinzu, dem man natürlich wieder nicht den Namen „admin“ oder „sysop“ gibt, ist ja klar.
Die Zugangsdaten dieses neuen Administrator wählt man möglichst kryptisch und notiert sie sich. Dann loggt man sich aus der Admin-Oberfläche wieder aus und meldet sich frisch bei WP an. Nun aber verwendet man die Zugangsdaten des eben neu angelegten neuen Administrators. Als nächstes entfernen (löschen) wir den automatisch angelegten „admin“.

Diese Maßnahme ist deshalb effizient, weil auch Skripte (Roboter) eingesetzt werden, die nach Weblogs mit Schwachstellen suchen und diese Robots natürlich zu allererst nach diesem voreingestellten „admin“ und der ihm stets zugewiesenen Nutzer-ID #1 suchen.

Der zweite Ratschlag lautet also:

Lege einen neuen Admin-Account an und lösche den admin # 1!


3. Abschnitt: Nutzeraccount erstellen

Ein weiterer Rat: Wir kennen das bereits seit Jahren von den Betriebssystemen unserer Computer. Man legt dort einen Administrator an, der alles darf und noch einen Nutzer, der bestimmte Betriebssystemfunktionen sicherheitshalber nicht oder erst nach Eingabe eines Sicherheitspasswortes ausführen kann. Sinnvollerweise sollte man immer unter dem Account des eingeschränkten Nutzers arbeiten, damit man nicht versehentlich größeren Schaden anrichten kann. Ob man das nun immer so macht, lasse ich mal dahingestellt, sinnvoll wäre das allemal.
Um es aber auf Weblog-Ebene nun eventuellen Angreifern etwas schwerer zu machen, kann man ohne weiteres bei WP einen weiteren Nutzeraccount allein zum Schreiben einrichten. Der Name des Admin taucht dann im Weblog überhaupt nicht mehr auf.
Wir haben dann also einen Admin-Account für die größeren Wartungsarbeiten am Weblog und einen einfachen Schreibaccount ohne weitere Rechte unter dem wir eben genau das tun was wir normalerweise jeden Tag machen wollen: Artikel schreiben.

Dritter Tip also:

Schreibe Deine Artikel nur unter einem Schreibaccount und halte den Admin-Namen aus dem Weblog heraus!


4. Abschnitt: Passwort

Der nächste Tip beschäftigt sich mit einer Binsenwahrheit. Dieser Lösungsansatz liegt so sehr auf der Hand und ist so altbekannt, daß es einem fast davor graut, ihn niederzuschreiben. Da aber die dümmste aller Hotlinemitarbeiter-Fragen: „Haben Sie denn auch den Stecker in die Steckdose gesteckt?“ immer noch den am häufigsten gemachten Fehler eliminiert, scheue ich mich nun auch nicht, diesen Tip niederzuschreiben:

Wähle für das Login bei jedem Deiner Accounts ein möglichst starkes Passwort! Immer noch verwenden zu viele WP-Admins (und nebenbei bemerkt alle die irgendwo Passwörter verwenden) ihren Vornamen, den Namen ihrer Kinder oder Ehepartner oder Passwörter wie „1234567“ und „qwertz“ oder „ABCDEFGH“.
Ein starkes Passwort ist erstens lang, zweitens entspricht es keiner Bezeichnung die irgendwie geraten oder nachgelesen werden kann und drittens enthält es neben Buchstaben auch Ziffern und Sonderzeichen!
Überdies neigen dummerweise viele Internetnutzer dazu, überall das gleiche Passwort zu verwenden. Wer garantiert einem aber, daß nicht auf irgendeiner Seite die man besucht und auf der man E-Mail-Adresse, Webseite und Passwort hinterlassen hat, ausgespäht wird? Schon hat der Angreifer eine lange Liste von funktionierenden Name/Passwort-Kombinationen zur Hand, die dann praktischerweise auch auf alle anderen Türen passen, die der Anwender eigentlich verschlossen wissen will.

Ein sicheres Passwort erfüllt also folgende Bedingungen:

– kein bekannter Name
– mindestens 8 Zeichen lang
– gemischt aus Groß- und Kleinschreibung
– enthält wenigstens 2 Ziffern
– enthält wenigstens zwei Sonderzeichen: wie z.B. ? ! “ $ %
– ist einzigartig und wird nirgendwo sonst verwendet

Ratschlag, um WP sicherer zu machen:

Wähle ein einzigartiges und starkes Passwort!


5. Abschnitt: Fehlermeldungen unterdrücken

Es ist also inzwischen klar: Die Loginseite zum Adminpanel von WP steht fast schon offen wie ein Scheunentor und dabei ist es mit wenigen Maßnahmen möglich, diesem Tor ein paar zusätzliche Riegel zu verpassen. Manchmal sind es aber auch die kleinen komfortablen Hilfen von WP, die uns -aber auch den Angreifern- das Leben erleichtern.
So teilt uns WP immer freudig erregt mit, was wir denn nun falsch eingegeben haben, das Passwort oder den Admin-Namen. Gerade vor dem Hintergrund des nächsten Tips sollten wir aber von vornherein davon ausgehen, daß wir uns die Zugangsdaten sicher notiert haben und keinerlei Hilfen bei der Eingabe benötigen.

Deshalb schalten wir den Hinweis darauf, ob nun Passwort oder Adminname falsch eingegeben wurde, einfach ab! Der Angreifer steht dann wie ein Ochs vor dem Berg und weiß nicht, was von beiden denn nun nicht stimmt. Die Anzahl von Fehlversuchen wird logischerweise ansteigen und es dem Ganoven erschweren, die richtige Kombination herauszufinden.

So kommuniziert WP einen falsch eingegebenen Benutzernamen:

falschuser

Und so teilt es uns -aber auch dem Böswilligen- mit, daß dieses Mal das Passwort falsch war:

falschpw

Eine einzige kleine Zeile hilft enorm weiter. Sie gehört in die Datei functions.php des benutzten Themes.

add_filter('login_errors',create_function('$a', "return null;"));

Hat man diese Datei nicht auf seinem Rechner, lädt man sie mit einem FTP-Programm herunter, editiert sie entsprechend und lädt sie wieder hoch.

Danach sollte es so aussehen:

ohneangabe

Einen möglichen Angreifer fehlen somit wichtige Informationen darüber, welchen Teil seiner Attacke er schon richtig gemacht hat und wie es weitergeht.

Der Rat nun:

Editiere die functions.php mit einer Zeile und schalte die Hinweise ab!


So, wir haben nun 5 wichtige Tips erhalten, wie man seine Login-Seite bei WP sicherer machen kann. Mehr Tips, die zum Teil auch noch mehr „ins Eingemachte gehen“ gibt es im nächsten Teil dieser kleinen Reihe zur Verbesserung der Sicherheit von WordPress.

Die Tips dieser Folge hier noch einmal zusammengefasst:

1. Wähle einen möglichst nicht zu ergründenden Admin-Namen für das Login!
2. Lege einen neuen Admin-Account an und lösche den admin # 1!
3. Schreibe Artikel nur unter einem Schreibaccount und halte den Admin-Namen aus dem Weblog heraus!
4. Wähle ein einzigartiges und starkes Passwort!
5. Editiere die functions.php mit einer Zeile und schalte die Hinweise ab!


Ich habe noch einmal die wichtigsten Schlagwörter (Hashtags) dieses Artikels für Sie zusammengestellt, damit Sie sich besser orientieren können:

keine vorhanden

Uncategorized

Die Artikel in diesem Weblog sind in Rubriken / Kategorien einsortiert, um bestimmte Themenbereiche zusammenzufassen.

Da das Dreibeinblog schon über 20 Jahre existiert, wurde die Blogsoftware zwei-, dreimal gewechselt. Dabei sind oft die bereits vorgenommenen Kategorisierungen meist verlorengegangen.

Deshalb stehen rund 2.000 Artikel in dieser Rubrik hier. Nach und nach, so wie ich die Zeit finde, räume ich hier auf.

Lesezeit ca.: 9 Minuten | Tippfehler melden | © Revision: 26. November 2012 | Peter Wilhelm 26. November 2012

Lesen Sie bitte auch:


Abonnieren
Benachrichtige mich zu:
guest
0 Kommentare
Inline Feedbacks
View all comments



Rechtliches


0
Would love your thoughts, please comment.x
Skip to content