it-swarm.com.de

Was könnte ein Hacker mit meiner wp-config.php machen?

Ich versuche, meinen WordPress-Blog zu sichern. Ich habe einige Beiträge im Web gelesen, in denen ich meinen table_prefix ändern und meinen wp-config.php verstecken sollte. Bekomme ich es aber nicht? Was kann ein Angreifer mit meinem wp-config.php machen?

Ich meine, es gibt meine Datenbankkonfigurationen, aber der Angreifer benötigt zum Beispiel meinen DB_Host, der nicht so einfach zu bekommen ist, um eine Verbindung zu meiner Datenbank herzustellen (in meinem Fall: define('DB_Host', 'localhost');, mit der der Angreifer keine Verbindung herstellen konnte) meine db)

Oder vermisse ich etw?

Ich freue mich sehr über Ihre Antwort!

11
Kare

localhost bezieht sich auf den Computer, auf dem es ausgeführt wird. Zum Beispiel ist auf meiner eigenen Seite tomjn.com localhost 127.0.0.1 wie immer. Dies bedeutet nicht, dass der Hacker nicht weiß, wo er sich verbinden soll, sondern dass der Hacker localhost durch tomjn.com ersetzt.

Wenn ich einen Proxy vor mir habe, funktioniert dies natürlich nicht. Beachten Sie jedoch, dass der Angreifer bei Zugriff auf meinen wp-config.php andere Aktionen auf diesem Computer ausführen kann.

Jetzt hat der Angreifer Ihre Datenbankdetails und kann wp-config.php lesen. Sie haben jetzt Zugriff auf alles in Ihrer Datenbank und können alles in Ihrer Datenbank ändern.

Abhängig von der Sicherheit Ihrer Installation können sie einen Benutzer für sich erstellen, sich anmelden, ein Plugin über Zip mit einem Shell-Skript PHP hochladen und Befehle ausgeben oder die Site als Teil eines Bot-Netzwerks verwenden .

Sie haben auch Ihre Salze und geheimen Schlüssel (wenn Sie keine von diesen haben, schlecht schlecht schlecht), so dass die brutale Erzwingung der Passwörter Ihrer Benutzer erheblich einfacher wird. Sie haben auch Zugriff auf ihre E-Mails.

Es genügt zu sagen, dass das Abrufen von wp-config.php eines der schlimmsten Dinge ist, die passieren können. Es kann noch viel mehr getan werden, aber es würde Monate dauern, bis alle möglichen Angriffe, die daraus resultieren, abgearbeitet sind.

Falls Ihr wp-config.php erfasst wird, ist es wahrscheinlich, dass ein automatisiertes Angriffsskript dies getan hat, keine tatsächliche Person. Ändern Sie alle Ihre Daten, setzen Sie alle Kennwörter zurück und schließen Sie die Lücke.

9
Tom J Nowell

Wenn Sie den Zugriff auf die Datenbank nur von localhost akzeptieren (dies wird nicht durch die Definition von DB_Host als localhost erreicht)? Nicht zu viel für sich (im schlimmsten Fall übernimmt ein Angreifer das Administratorkonto), aber in Kombination mit anderen Sicherheitslücken kann es hilfreich sein, dass ein Angreifer Zugriff auf Ihre Konfiguration hat.

Anmeldeinformationen

Die Benutzer verwenden ihre Benutzernamen und Passwörter erneut. Ein Angreifer überprüft, ob Ihr Datenbankbenutzername und -kennwort (oder Variationen davon) für Ihre WordPress-Installation, Ihren Hoster, Ihre E-Mail usw. funktionieren.

Zumindest bekommt ein Angreifer eine Vorstellung davon, welche Art von Passwörtern Sie verwenden (völlig zufällig, nur Kleinbuchstaben/Zahlen, Länge usw.).

Tabellenpräfix

Wenn eine SQL-Injection möglich ist, muss ein Angreifer die Tabellennamen kennen. Abhängig von der Datenbank kann dies sehr einfach sein oder erraten werden. Wenn es sich um Vermutungen handelt, ist es am besten, das Tabellenpräfix zu verwenden.

Schlüssel und Salze

Ich fand diesen Artikel, der andeutet, dass Sie wirklich nicht wollen, dass diese durchgesickert sind (im Grunde könnte jeder Ihr Administratorkonto übernehmen), obwohl ich nicht weiß, wie aktuell es ist.

Datenbankzeichensatz

Einige SQL-Injektionen hängen vom Zeichensatz ab, daher ist es für einen Angreifer gut, dies zu wissen.

Zusammenfassung

Wenn Sie keinen Zugriff von außen auf die Datenbank zulassen, wenn Sie keine Kennwörter wiederverwenden und wenn Sie nirgendwo SQL-Injektionen haben, sind der Schlüssel und das Salz die Hauptsorge.

2
tim

Ich gehe davon aus, dass Sie nach Lesezugriff fragen, da Schreibzugriff im Grunde genommen das Einfügen seines eigenen Codes ist, um mit Ihrer Site alles zu tun, was er möchte.

Ihre Annahme, dass DB-Informationen nicht vertraulich sind, ist falsch. Nehmen wir an, Ihre Website wird bei godaddy gehostet. godaddy AFAIK verwendet einen dedizierten MySQL-Server, auf den wahrscheinlich nur von ihren eigenen Servern aus zugegriffen werden kann. Wenn ich jedoch Ihre Daten kenne, wie schwierig ist es für mich, ein Godaddy-Konto zu erstellen und ein Skript zu schreiben, das auf Ihre Datenbank zugreift? Bei lokalen DBs ist die Ausnutzung schwieriger, aber auf gemeinsam genutzten Hosting-Servern haben Sie möglicherweise 100 Sites, die den Server gemeinsam mit Ihnen nutzen. Können Sie darauf vertrauen, dass sie so gesichert sind, dass Mr Evil nicht in sie eindringen und sie zum Angriff auf Ihre Site verwenden kann?

1
Mark Kaplun