Einzelnen Beitrag anzeigen
  #1  

Standard Standardantwort zu SQL Injections

 

Standardantworten - Inhalte

Dein Code ist anfällig für SQL Injections. Benutzereingaben (z.B. aus einem Formular oder aus der URL), dürfen niemals ungefiltert in SQL-Strings eingebaut werden. Ein Angreifer wäre sonst in der Lage aktiven Code in Dein SQL einzuschleusen. SQL Injections gehören zu den gefährlichsten und weitverbreitesten Fehlern bei Webanwendugen. Dabei ist ihre Vermeidung recht einfach. PHP stellt für jede unterstützte Datenbank eine Funktion zum Entschärfen von Benutzereingaben zur Verfügung.

Für mysqli erledigt das mysqli_real_escape_string() bzw. für die veraltete mysql-Extension mysql_real_escape_string().

Außerdem bieten die beiden neueren Extensions PDO und mysqli die Möglichkeit, prepared Statements zu verwenden. In diesem Fall kümmern sich PHP und die Datenbank selbst um das Maskieren von gefährlichen Sonderzeichen.

In unserem Wiki gibt es einen Artikel zu SQL Injections mit einem konkreten Beispiel.

« Vorheriges Kapitel   Standardantworten
  Nächstes Kapitel »

Erstellt von Sebbl, 28.10.2008 am 18:24
Zuletzt bearbeitet von hellbringer, 19.06.2013 am 01:16
0 Kommentare , 13534 Betrachtungen

Dieser Text steht unter der GNU-Lizenz für freie Dokumentation