PHP 8.4.2 Released!

Datenbank-Sicherheit

Inhaltsverzeichnis

Heutzutage sind Datenbanken die Hauptkomponenten jeder webbasierten Anwendung, aufgrund welcher Websites verschiedene dynamische Inhalte anbieten können. Nachdem sensible oder geheime Informationen in solch einer Datenbank gespeichert werden können, sollten Sie deren Schutz ernsthaft bedenken.

Um Informationen zu bekommen oder zu speichern, müssen Sie eine Verbindung zur Datenbank herstellen, eine legitime Abfrage senden, das Ergebnis holen, und die Verbindung schließen. Heutzutage ist die allgemein verwendete Abfragesprache für solche Interaktionen die Structured Query Language (SQL). Sehen Sie, wie sich ein Angreifer an einer SQL-Abfrage zu schaffen machen kann.

Sie werden merken, dass PHP Ihre Datenbank nicht selbst schützen kann. Die folgenden Abschnitte sind eine Einführung in die Grundlagen, wie man innerhalb von PHP-Skripten auf Datenbanken zugreift und diese manipuliert.

Behalten Sie diese einfache Regel im Hinterkopf: tief gestaffelte Verteidigung. Je mehr Platz Sie den Maßnahmen zum Schutz Ihrer Datenbank geben, desto geringer ist die Wahrscheinlichkeit, dass ein Angreifer Erfolg hat und gespeicherte Geheiminformationen aufdeckt oder missbraucht. Ein gutes Design des Datenbankschemas und die Anwendung wird mit Ihren größten Befürchtungen fertig.

add a note

User Contributed Notes 1 note

up
1
gabe dot aust at gmail dot com
5 days ago
The most significant way to protect databases is to simply use authentication! There are production systems online with null and default administrator credentials. See the recent "The Real World" hack...
Rule 1: Simply use authentication instead of not using it... Obviously do not save the credentials in a public-readable file.
Rule 2: Create a subsidiary account with access only to the live schema being used by your PHP app, i.e. never use the global DBMS admin account as a service login.
Rule 3: Block access at the DBMS end to only allow the web server to access the API. Most access is network based so that will involve filtering by IP.
Rule 4: You can obfuscate a bit more by setting a non-standard port but this may require code changes in the API calls you coded.
The above are some simple steps anyone can perform. More serious securing would likely involve setting up SSL connectivity.
To Top