Wie es sich zeigt, ist kein System vor Angriffen zu 100% geschützt. In den letzten Tagen wurden vermehrt Websites die WordPress verwenden mittels Brute-Force angegriffen.
Wir geben an dieser Stelle Tipps, wie Sie Ihre WordPress-Installation absichern können. Sollten Ihnen noch weitere Möglichkeiten bekannt sein, so freuen wir uns auf eine spannende Diskussion.
WordPress/Plugins aktuell halten
Jede Software wurde bzw. wird durch Menschen gemacht und Menschen machen Fehler. Deshalb sollten Sie WordPress und auch alle Plugins aktuell halten. Dies geht am einfachsten über den internen Updatemechanismus von WordPress. Sie können aber auch externe Systeme wie InfiniteWP verwenden. Diese eignen sich vor allem dann, wenn Sie mehrere Blogs betreiben.
Standard-Administrator löschen
Bitte löschen Sie, nachdem Sie sich einen persönlichen Administrator angelegt haben, alle Standard-Administratoren.
Tabellen-Präfix ändern
Wenn möglich, geben Sie schon bei der Installation von WordPress ein anderes Tabellen-Präfix an.
Sicherheitsschlüssel aktualisieren
Es gibt in der wp-config.php den Abschnitt der Sicherheitsschlüssel. Diesen können Sie über den Link https://api.wordpress.org/secret-key/1.1/salt/ neu erstellen lassen.
/**#@+ * Sicherheitsschlüssel * * Ändere jeden KEY in eine beliebige, möglichst einzigartige Phrase. * Auf der Seite {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} kannst du dir alle KEYS generieren lassen. * Bitte trage für jeden KEY eine eigene Phrase ein. Du kannst die Schlüssel jederzeit wieder ändern, alle angemeldeten Benutzer müssen sich danach erneut anmelden. * * @seit 2.6.0 */ define('AUTH_KEY', 'kL@;4/k*Cl$+g-v#z.e)|~CK$N3d8v8I|y.DZZn*:_ r&?NU<ovCk_D/JPo-r7^]'); define('SECURE_AUTH_KEY', 'D~kOIOse;1P?0v+72U7$w|l*6-9o8uXT{7@2|hzrzE~~SpuCh$3;Q(+!bC.oSa6C'); define('LOGGED_IN_KEY', '7>4#xok74b)I;4vc,n~UKnk(O&hvGKD9A{RG0L[#-[I7kY$&jey6qOH.b7d=r9(['); define('NONCE_KEY', 'p,6>pCv<Jd(#R3@/)z`9<:p$v< 9[eBKt:W>J):1LSENrEHNPo/eUboL&:,S|s}x'); define('AUTH_SALT', '+RYs^zSQ?&H%2qM.-+*GF3>d3`Wa=Q@Y;:6In)FO0M24!~<rn6:pCL,*.C=5TW|J'); define('SECURE_AUTH_SALT', 'E<37X7oEuzX&<jn?[@K:|UW_S+>l83|HHlTCXU!bCd.`dq99KkyG Oso<2]].H|)'); define('LOGGED_IN_SALT', '^~L@/bF:F|*kYP?NwFn=oqL/|[7Bkl4pRK80kR:zI}%SV>BH4vC}/4OX5vB_wjs@'); define('NONCE_SALT', 'JIQd$,;a1=qT<FF#h!>Jg_GXhQy7Odb=o.pnxbBGC@)}l6m`*qaID)ZsZ]LVgXR#');
Backend per .htaccess schützen
Das Backend ist ein beliebtes Ziel für Angriffe. Deshalb schützen wir es besser doppelt ab.
<files wp-login.php> Order deny,allow deny from all AuthType Basic AuthName "Passwortabfrage" AuthUserFile /<<absoluter Pfad>>/.htpasswd Require valid-user Satisfy Any </files>
Damit es auch einen Benutzer gibt, benötigen wir noch die .htpasswd Datei. Diese können Sie sich über einen Generator wie z.B. von AskApache erstellen lassen.
wp-config.php und mehr per .htaccess schützen
Ein kleiner Eintrag mit großer Wirkung!
<FilesMatch "(.htaccess|.htpasswd|wp-config.php)"> order deny,allow deny from all </FilesMatch>
Sicherheitsplugins
Es gibt natürlich zahlreiche Sicherheitsplugins für WordPress. Deshalb hier nur ein kleiner Auszug:
- AskApache Password Protect – This plugin Adds Crazy Additional Password Protection and Security to your blog.
- Limit Login Attempts – Limit rate of login attempts, including by way of cookies, for each IP.
- Secure WordPress – Secure WordPress beefs up the security of your WordPress installation by removing error information on login pages, adds index.html to plugin directories, hides the WordPress version and much more.
- Snitch – Network monitor for WordPress. Connecting overview for monitoring and controlling of outbound blog traffic.
Backup/Restore
Auch das Thema Backup darf hier nicht unerwähnt bleiben. Machen Sie regelmäßig ein Backup und kontrollieren Sie dieses. Es ist auch ratsam, einen Restore aus dem Backup zu testen.
Hinweis
Bitte beachten Sie, dass alle genannten Punkte ohne Gewährleistung sind.