Passwort in wp-config. Gefährlich?

10

Ich kenne noch nicht viel Wordpress und frage mich nur:

Vor der Installation müssen Sie die richtigen Daten wp-config-sample.phpeingeben, dies schließt jedoch auch das Datenbankkennwort ein. Ist das nicht gefährlich? Ich meine, kann jemand erklären, wie dies davor geschützt ist, nur die Datei zu lesen und so das Passwort Ihrer Datenbank zu erhalten?

Bram Vanroy
quelle

Antworten:

14

Die Seite "Hardening WordPress" des Codex enthält einen Abschnitt zum Sichern von wp-config.php . Dazu gehört das Ändern der Berechtigungen auf 440 oder 400. Sie können die wp-config-Datei auch um ein Verzeichnis vom Stammverzeichnis nach oben verschieben, wenn Ihre Serverkonfiguration dies zulässt.

Natürlich besteht die Gefahr, dass eine Datei mit diesem Kennwort vorhanden ist, wenn jemand Zugriff auf Ihren Server erhält, aber ehrlich gesagt befindet er sich zu diesem Zeitpunkt bereits auf Ihrem Server.

Schließlich haben Sie keine große Wahl. Ich habe noch nie ein alternatives Mittel zum Konfigurieren von WordPress gesehen. Sie können es so weit wie möglich sperren, aber so wird WordPress aufgebaut, und wenn es eine ernsthafte Sicherheitsbedrohung wäre, würden sie es nicht so machen.

mrwweb
quelle
Danke für diesen Link! Ich kann dort viele Sicherheitsvorkehrungen sehen. Sollte man alle anwenden? Oder ist nichts davon wirklich notwendig?
Bram Vanroy
3
Ich weiß nicht, dass man jemals zu viel [gut implementierte] Sicherheit haben kann.
Mrwweb
1
@mrwweb +1 für gut implementiert *.
Richard
Ist es nicht möglich, die Datenbankinitialisierung zu überschreiben, indem Sie eine db.php-Datei erstellen und dort $ wpdb setzen? Dies würde den Konfigurationswert für das Datenbankkennwort umgehen.
Paul Keister
9

Um zu begründen, dass Ihre Konfigurationsdatei eine Ebene über dem Webstamm liegt (wie von mrwweb vorgeschlagen): Vor einigen Monaten hat ein automatisches Update auf einem unserer Produktionsserver PHP getötet, aber Apache ausgeführt. Jedem, der auf die Homepage kam, wurde index.php als Download angeboten . Theoretisch hätte jeder, der wusste, dass es sich um eine WordPress-Site handelt, wp-config.php anfordern und es erhalten können (wäre es im Webstamm gewesen). Natürlich könnten sie diese DB-Anmeldeinformationen nur verwenden, wenn wir Remote-MySQL-Verbindungen zulassen - aber trotzdem nicht cool. Mir ist klar, dass dies ein Randfall ist, aber es ist so einfach, Ihre Konfiguration außer Sichtweite zu halten. Warum nicht?

MathSmath
quelle
2

Sofern niemand über FTP Zugriff hat, müssen Sie sich darüber keine Sorgen machen. PHP wird auf dem Server gerendert, bevor es den Browser des Benutzers erreicht.

Simon
quelle
2

Hier ist ein weiterer Tipp: Schützen Sie wp-config.php (und alle anderen vertraulichen Dateien) mit .htaccess

Fügen Sie einer .htaccess-Datei im Verzeichnis Ihrer Site, in der sich alle anderen WordPress-Dateien befinden, Folgendes hinzu:

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

von So härten Sie Ihre WordPress-Installation

Nick
quelle
0

Wenn jemand Zugriff hat, um den Inhalt Ihrer PHP-Dateien zu lesen, wurden Sie bereits gehackt.

Otto
quelle
1
oder die Konfiguration des Webservers wurde so stark beeinträchtigt, dass nur noch PHP-Dateien als Text
bereitgestellt wurden ;-)