10 Sicherheitshacks für WordPress, um Sie vor Hackern zu schützen

10

WordPress ist eine riesige Erfolgsgeschichte, nicht nur in Bezug auf die globalen Zahlen, sondern auch, was einige überraschen mag, in Bezug auf große Namen, die die Plattform nutzen.

Wenn Sie im Internet sowohl eine beträchtliche installierte Benutzerbasis als auch hochkarätige Benutzer haben, können Sie einfach nicht vermeiden, ein Ziel für Hacker und Spammer zu werden. Vom Verkauf von Pillen über die Förderung verzerrter Ideologien bis hin zum Datendiebstahl und dem Brechen von Websites, nur weil sie es können, kann es für Ihr Unternehmen leicht ein großes Problem sein, gehackt zu werden.

In diesem Artikel werde ich einen Blick auf einige der Tipps, Tricks und Hacks werfen, die Sie anwenden können, um sich selbst besser vor der zwielichtigen Schattenseite des Internets zu schützen.

Machen Sie sich mit den Grundlagen vertraut

Während Sie vielleicht denken, dass einige dieser Elemente selbstverständlich sein sollten, denken Sie nur darüber nach, wie oft Sie nicht nur Kunden, sondern auch andere Entwickler, Designer und Agenturen gesehen haben, die es besser wissen sollten, an einigen davon schuld zu sein?

Beginnen Sie damit, Ihre Passwörter schwer zu erraten zu machen. Wie kannst du es ihnen schwer machen, dir aber leicht? Vielleicht können Sie zwielichtige Buchstabenersetzungen wie „h3ll0″, das Mischen von Groß- und Kleinschreibung und das Einwerfen von Satzzeichen vergessen und stattdessen eine Eselsbrücke verwenden. Indem Sie drei oder vier Wörter zu einem amüsanten Bild verketten, ist Ihr Passwort viel einfacher zu merken als „t3r%?9.Fq!G” und um Größenordnungen schwerer zu knacken. Verwenden Sie einfach nicht ‘CorrectHorseBatteryStaple’. Eine vollständige und lustige Erklärung dieses Prinzips finden Sie in XKCD 936.

Sie sollten auch Ihre Plugins und den WordPress-Kern auf dem neuesten Stand halten. Dies ist jetzt mit späteren Versionen von WordPress einfacher zu bewerkstelligen. Ab WordPress 3.7 können Sie vier Arten von automatischen Updates konfigurieren: Kerndateien, Plugins, Themen und Übersetzungsdateien. Ein Wort der Vorsicht – abhängig von Ihrem Setup möchten Sie möglicherweise einige davon deaktivieren, damit Sie vor der Bereitstellung von Updates testen können. Aber selbst wenn Sie sie live lassen und Probleme haben, haben Sie immer noch tägliche Backups, auf die Sie sich verlassen können, oder?

Erleichtern Sie die Verwaltung mehrerer Websites, Plugins und Backups mit etwas wie InfiniteWP. Die Grundfunktionen sind kostenlos!

Dies sind nicht die Anmeldeinformationen, nach denen Sie suchen

Zusätzlich zu einer überlegenen Passwortstärke sollten Sie auch Ihre Standard-Admin-URL verschieben und etwas anderes als „admin” für Ihren Benutzernamen verwenden. Wenn die Hacker kein bestimmtes Ziel im Auge haben, versuchen sie normalerweise, Bots auszuführen, um den Prozess zu automatisieren. Diese Bots suchen nach WordPress, probieren die Standardeinstellungen und die gängigsten Passwörter aus – entfernen wir uns also von den Standardeinstellungen, um diese Aufgabe zu erschweren.

Der vielleicht einfachste Weg, deine Anmelde-URL zu ändern, ist, einen Blick auf Plugins wie HC Custom WP-Admin URL zu werfen. Natürlich – führen Sie zuerst ein Backup durch!

Um Ihren Admin-Benutzernamen zu ändern, ist es am einfachsten, einen neuen Admin-Benutzer mit dem von Ihnen gewählten Benutzernamen zu erstellen und den alten zu löschen. Wenn Sie aus Ihrem Adminbereich ausgesperrt sind, weil Sie sich nicht an Ihren Benutzernamen erinnern, benötigen Sie eine etwas drastischere Lösung. Melden Sie sich bei phpMyAdmin an und laden Sie Ihre WordPress-Datenbank hoch. Scrollen Sie auf der linken Seite nach unten und suchen Sie nach der Tabelle „ks29so_users”. Suchen Sie den Benutzernamen, den Sie ändern möchten, z. B. „admin”, und ändern Sie den Wert „user_login” in Ihren neuen Namen.

Ein letztes Wort zum Anmeldevorgang

Bevor wir uns vom Anmeldeprozess entfernen, gibt es noch ein paar weitere Aufgaben zu erledigen. Erinnern Sie sich an die Bots, die Passwörter erraten? Machen wir es ihnen noch schwerer, indem wir sagen, dass man nur so viele Versuche innerhalb eines bestimmten Zeitrahmens machen kann und dass man vorher ein CAPTCHA korrekt transkribieren muss. Für Captcha könnten Sie versuchen, dieses Plugin zu installieren, und los geht’s. Nebeneffekt – die Premium-Version lässt sich in BuddyPress und Contact Form 7 integrieren, um Ihre Kontaktformulare vor Spam-Übermittlungen zu schützen.

Um Anmeldeversuche zu begrenzen, können Sie entweder Plugins wie Limit Login Attempts hinzufügen oder Ihren Hosting-Provider fragen, der möglicherweise eine Lösung hat – Wpengine zum Beispiel hat dies standardmäßig konfiguriert.

Sichern von WordPress mit Änderungen an .htaccess

Ich hoffe, Sie sind bereit, sich die Hände ein wenig schmutzig zu machen, wenn wir zu Vorschlägen übergehen, die etwas kniffliger sind als „ein Plugin installieren”! Fügen Sie diese Vorschläge nach der Zeile #END WORDPRESS hinzu.

Das erste hinzuzufügende Element wird zum Schutz von wp-config.php beitragen. Diese Datei wäre in den falschen Händen gefährlich, da sie wichtige Informationen zu Ihrer Website und ihrer Datenbank enthält.

<Files wp-config.php>
orderallow,deny
deny from all
</Files>

Das ist ein toller Anfang, was können wir noch tun? Nun, wir können die neugierigen Leute daran hindern, sich in Ihren Dateien und Ordnern umzusehen – ich denke, die Vorteile davon sind ziemlich selbsterklärend!

Das Folgende ist ein Overall, um das Durchsuchen von Verzeichnissen zu blockieren:

# directory browsing
Options All -Indexes

Wenn Sie eine Datei speziell blockieren möchten, verwenden Sie Folgendes:

<Files "private.php">
Order allow,deny
Deny from all
</Files>

Jetzt machen wir Fortschritte – indem wir den Zugriff von denen entfernen, die ihn nicht benötigen. Um dies zu seiner logischen Schlussfolgerung zu bringen, schauen wir uns an, wie wir jemandem, von dem wir wissen, dass er ein schlechter Akteur ist, den Zugriff auf irgendetwas auf Ihrem Server verbieten können.

Sobald Sie die IP kennen, fügen Sie einfach diese Zeilen hinzu und ersetzen Sie 127.0.0.1 durch die fehlerhafte IP:

Order Deny,Allow
Deny from 127.0.0.1

Um dies mit neuen IPs zu aktualisieren, fügen Sie einfach neue „Deny from”-Zeilen hinzu. Wenn Sie einen ganzen Bereich sperren müssen, lassen Sie den betreffenden Bereich einfach weg. Mit anderen Worten, um alles von 127.0.0.0 bis 127.0.0.255 zu blockieren, würden Sie Folgendes hinzufügen:

Deny from 127.0.0.

Der letzte Tipp in diesem Abschnitt ist, .htaccess selbst zu schützen. Es gibt einige Websites, die Methoden verbreiten, die gut, aber nicht großartig sind. Die folgende Methode stammt von Jeff Starr von Perishable Press und ist viel gründlicher:

# STRONG HTACCESS PROTECTION
<Files ~ "^.*.([Hh][Tt][Aa])">
 order allow,deny
 deny from all
 satisfy all
</Files>
Datenbankverbesserungen

Ein weiterer Vorteil von WordPress für Hacker ist, dass sie bei einer Standardinstallation wissen, wie Ihre Datenbanktabellen heißen. WordPress verwendet standardmäßig das Präfix „ks29so_”, mit dieser Änderung entfernen wir uns wieder von den Annahmen der Hacker.

Zuerst teilen wir wp-config.php mit, dass wir das Tabellenpräfix ändern. Öffnen Sie diese Datei und bearbeiten Sie Folgendes:

$table_prefix = 'ks29so_';

Fügen Sie einige Zahlen oder Buchstaben hinzu:

$table_prefix = ‘ks29so_3drt5_’;

Sie müssen dann alle Tabellennamen in Ihrer Datenbank durchgehen und ändern. Führen Sie für jede Ihrer 11 Tabellen einen Befehl in der folgenden Form aus:

RENAME TABLE ‘ks29so_commentmeta‘ TO ‘ks29so_3drt5_commentmeta‘;

Es wird wahrscheinlich ein paar andere Verweise auf das alte Präfix geben, die Sie klären müssen. Führen Sie diese Abfrage aus, um alles aus der Optionstabelle mit dem alten Präfix aufzulisten:

SELECT * FROM ` ks29so_3drt5_options` WHERE `option_name` LIKE'%ks29so_%'

Leider müssen Sie jeden einzeln durchgehen und aktualisieren.

Dann müssen wir uns die UserMeta-Tabelle ansehen, derselbe Vorgang wie zuvor:

SELECT * FROM ` ks29so_3drt5_usermeta` WHERE `meta_key` LIKE'%ks29so_%'

Schließlich können Sie Ihren MySQL-Datenbankbenutzer auch darauf beschränken, nur die folgenden Lese- und Schreibrechte zu haben: SELECT, INSERT, UPDATE und DELETE. So können Sie Berechtigungen für Datenbankstruktur und Admin entziehen: DROP, ALTER und GRANT. Dies kann jedoch das Aktualisieren des Kerns und das Hinzufügen neuer Plugins schwierig machen, da sie möglicherweise wirklich die Datenbankstruktur ändern müssen. Wenn Sie diesen Weg einschlagen, müssen Sie Ihre Backups und Tests gründlich durchführen.

Neue Schlüssel bitte

Deine geheimen Schlüssel werden in wp-config.php gespeichert. Sie sind jedoch nicht so geheim, wenn Sie sie auf den Standardwerten belassen! Verbessern Sie Ihre Sicherheit, indem Sie diese ändern – ich empfehle Ihnen jedoch, sich nicht auf Ihr eigenes Gefühl für Zufälligkeit und Komplexität zu verlassen. Verwenden Sie so etwas wie diesen Dienst – dieser definiert nicht nur Schlüssel für Sie, sondern führt sie alle auf einmal im richtigen Format aus, damit Sie sie direkt in Ihre Datei einfügen können. Das Drücken von Refresh zeigt, dass Sie jedes Mal, wenn Sie dies laden, einen neuen Schlüsselsatz erhalten.

Originalrezeptquelle

Plugins sind ein ausreichend großer Angriffsvektor, wenn Exploits entdeckt und unter Hackern verbreitet werden, daher sollten Sie zumindest sicherstellen, dass Sie der Quelle des Plugins vertrauen. Andernfalls könnten Sie derjenige sein, der den Exploit auf Ihrer eigenen Website platziert, indem Sie ein zwielichtiges Plugin mit Malware hinzufügen.

Frühjahrsputz

Da Designs und Plugins eine potenzielle Schwachstelle darstellen, halten wir sie nach Möglichkeit auf dem neuesten Stand. Wenn Sie ein Plugin/Theme nicht mehr verwenden, löschen Sie es vollständig. Deaktivieren ist nicht gut genug – werden Sie es einfach los! Wenn ein Plugin von seinem Entwickler aufgegeben wurde, wäre es auch eine gute Idee, etwas Neues zu finden und das alte zu löschen – wenn eine Sicherheitslücke gefunden wird, wird sie nicht gepatcht und es wird wahrscheinlich sehr teuer sein, eine benutzerdefinierte Lösung zu finden.

Löschen Sie analog alle Logins, die Sie nicht mehr benötigen. Vielleicht vertrauen Sie Ihren ehemaligen Mitarbeitern, und das ist in Ordnung, aber es geht nicht nur um Vertrauen. Es geht auch darum, den verfügbaren Angriffsbereich so weit wie möglich zu reduzieren und Personen auf das erforderliche Mindestmaß an Zugriff zu beschränken. Typischerweise benötigt ein ehemaliger Mitarbeiter oder Autor keinen Zugang – ich bin sicher, er wird es verstehen!

Zugangsrichtlinie gilt – Nur vertrauenswürdige Admin-IP zulassen

Ich habe dies von den anderen .htaccess-Tipps getrennt, da dies möglicherweise ein etwas ernsterer Schritt ist, den es zu berücksichtigen gilt. Im Gegensatz zum vorherigen Schritt, bekannte schlechte IPs zu verbieten, geht es hier darum, nur bekannte gute IPs zuzulassen. Es verbessert Ihre Sicherheit, aber auf Kosten Ihrer Bequemlichkeit, da Sie sich darauf beschränken, wo Sie sich anmelden können, um auf Ihrer Website zu arbeiten. Fahren Sie damit fort, wenn Sie sich nicht viel bewegen, wenn Sie ständigen Angriffsversuchen ausgesetzt waren oder wenn Sie einfach glauben, dass es diese zusätzliche Sicherheit wert ist.

orderdeny,allow
allow from 127.0.0.1
deny from all

(Ersetzen Sie wieder 127.0.0.1 durch Ihre IP).

SSL

Sie sollten nicht über einen öffentlichen Wi-Fi-Dienst auf Ihren Administrator zugreifen – wenn Sie dies tun, werden die Anmeldeinformationen im Klartext über die Luft gesendet. Der ruchlose Hacker könnte neben Ihnen sitzen, einen Latte trinken und heimlich einen Man-in-the-Middle-Angriff durchführen, um an Ihre Passwörter und andere sensible Daten zu gelangen.

Wenn es aber sein muss, können Sie sich zumindest etwas mehr Schutz bieten, indem Sie SSL aktivieren. Stellen Sie zunächst sicher, dass Ihr Server dies unterstützt, öffnen Sie dann Ihre wp-config.php-Datei und fügen Sie die folgende Zeile hinzu:

define('FORCE_SSL_ADMIN', true);
Andere Dinge zum Anschauen

Das war es für meine wichtigsten Tipps, aber es gibt noch andere Aspekte, die es zu beachten gilt. Sie können Ihren .htaccess weiter absichern, indem Sie beispielsweise verhindern, dass PHP-Skripte dort ausgeführt werden, wo sie nicht ausgeführt werden sollten. Sie können auch sicherstellen, dass Ihre Dateiberechtigungen angemessen festgelegt sind – nicht nur in Ihren WordPress-Dateien, sondern auf dem gesamten Server.

Mein letzter wichtiger Tipp wäre jedoch, sich zu sichern. Dieser ganze Artikel basiert auf der Idee, dass Vorbeugen besser als Heilen ist, aber regelmäßige, verwendbare und getestete Backups sollten vorhanden sein, nur für den Fall, dass Sie sie brauchen. Lassen Sie mich sowohl regelmäßig als auch getestet betonen – ein Backup von vor einem Jahr ist im Grunde kein Backup für die meisten Websites, die in dieser Zeit stark gewachsen sind. Wenn die Sicherungen nicht getestet werden, haben Sie keine Sicherung. Sie möchten wirklich nicht an den Punkt kommen, an dem ein Backup benötigt wird, und nur die Daumen drücken und hoffen müssen, dass es funktioniert!

Was haben Sie getan, um Ihre WordPress-Website zu sichern? Wo ziehen Sie die Grenze zwischen Sicherheit und Zugänglichkeit/Benutzerfreundlichkeit? Lass es mich in den Kommentaren wissen.

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen