Elderan: MySQL-Passwort im Klartext

Beitrag lesen

Tach,
wie schon erwähnt wurde, kann der DB Server zu 99.99% nur per Netzwerk erreicht werden, meistens ist der DB-Server der gleiche Rechner wieder der Webserver (localhost), so das keine Daten über ein Kabel laufen.

Dennoch kann man mit mysqli_connect(); (mysqli) eine Verbindung per SSL mit dem DB Server aufbauen.

Das Passwort in der PHP Datei per md5 oder ähnlichem zu verschlüssel wäre totaler Schwachsinn.

Denn wenn ein Angreifer die PHP Datei auslesen kann, dann hat er zwar nicht das PW im Klartext, aber mit dem PasswortHash könnte er dennoch eine Verbindung zu dem Server aufbauen.

Und wenn du für die MySQL Datenbank ein Passwort verwendest, welches du bei keinem anderem Dienst benutzt, dann ist es egal ob der den Passworthash oder das Klartextpasswort erhält.
Einloggen kann er sich in beiden Fällen, aber weil du es niergendwo anders benutzt, bringt es ihn auch nicht viel weiter.

Was noch wichtig ist, außer das nicht jmd. anderes FTP Zugang erhält, das der Server unter Safe mode (phpinfo.php) läuft, so kann ein anderer Benutzer nicht mehr auf deine Daten zugreifen.

Wie man die Datei auch noch schützen kann, ist: CHMOD 400.

Somit bekommt nur der Benutzer wwwrun (sofern Unix/Linux) die Leserechte auf die Datei, wenn jmd. Shell Zugriff auf den Server hat, und _nicht_ als wwwrun angemeldet ist, dann kann er diese Datei nicht mehr lesen/zugriff verweigert.
Allerdings muss die Datei auch von wwwrun erstellt werden. Darum musst du einen Script schreiben, der dir die Datei erstellt.
Dann Script löschen und die Lese/Schreibrechte ändern.

Schreibrechte sollte man auf der Datei auch nicht gewähren, denn wenn jmd. beliebige Dateien bearbeiten kann, dann entfernt er z.B. <?php am Anfang und sieht den Dateiinhalt.

Elderan