Grundlagen der Informationssicherheit
In einer Webanwendung kann man sich ohne Kenntnis des Passworts anmelden, wenn man im Passwortfeld des Anmeldebildschirms eine Zeichenkette wie ' OR '1'='1 eingibt. Wie heißt dieser Angriff?
- ASQL-Injection
- BCross-Site-Scripting
- CDirectory Traversal
Antwort und Erläuterung anzeigen
Antwort: A. SQL-Injection
Eine SQL-Injection nutzt aus, dass eine Webanwendung Datenbankbefehle (SQL-Anweisungen) zusammensetzt, indem sie Nutzereingaben einfach als Zeichenketten anfügt. Wird zum Beispiel ' OR '1'='1 dort eingefügt, wo die Bedingung „das Passwort ist gleich 'Eingabe'“ gebildet wird, schließt das Anführungszeichen die Zeichenkette, und die stets wahre Bedingung „oder '1' ist gleich '1'“ wird angehängt. Dadurch ist die Bedingung ohne Passwort erfüllt, und die Anmeldung gelingt. Auf dieselbe Weise können auch Daten gestohlen, verändert oder gelöscht werden. Die grundlegende Gegenmaßnahme ist ein Mechanismus, der Eingaben nie als Teil des Befehls interpretiert: Prepared Statements mit Platzhaltern.
Weiter: 9 weitere Fragen zu Grundlagen der Informationssicherheit