```html id="sql_injection_fisi" SQL-Injection – Sicherheitsproblem

SQL-Injection

SQL-Injection ist eine der häufigsten Sicherheitslücken in Webanwendungen und entsteht durch unsichere Verarbeitung von Benutzereingaben.

Definition

SQL-Injection ist ein Angriff, bei dem schädlicher SQL-Code in eine Datenbankabfrage eingeschleust wird, um unbefugt auf Daten zuzugreifen, sie zu verändern oder zu löschen.

Wie entsteht das Problem?

Die Anwendung übernimmt Benutzereingaben direkt in SQL-Abfragen, ohne sie zu prüfen oder zu filtern.

Beispiel (unsicher)

SELECT * FROM users WHERE username = 'admin' AND password = '1234';

Ein Angreifer gibt als Passwort z. B. ein:

' OR '1'='1

Dadurch wird die Abfrage manipuliert zu:

SELECT * FROM users WHERE username = 'admin' AND password = '' OR '1'='1';

Ergebnis: Die Bedingung ist immer wahr → unbefugter Zugriff.

Folgen einer SQL-Injection

Schutzmaßnahmen

Merksatz für die FISI-Prüfung:

SQL-Injection = Manipulation von Datenbankabfragen durch unsichere Benutzereingaben.

Typische Prüfungsantwort

SQL-Injection ist eine Sicherheitslücke, bei der ein Angreifer schädlichen SQL-Code in eine Datenbankabfrage einschleust. Dadurch können Daten ausgelesen, verändert oder gelöscht werden. Ursache ist meist die unsichere Verarbeitung von Benutzereingaben.
```