phpbar.de logo

Mailinglisten-Archive

SQL-Injection

SQL-Injection

Michael Donning donning at informenta.de
Don Jan 6 12:18:51 CET 2005


Hallo Guenther,

ich mache nur wenig mit PHP (ist ja auch keine PHP Liste hier), daher nur
ein paar allgemeine Hinweise:


> -----Original Message-----
> From: Guenther Theilen [mailto:gtheilen at gmx.de]
> Wie prüfe ich, ob meine Sicherungsmaßnahmen funktionieren?
> Bsp: Ein HTML-Formularfeld "suchen". Aus dem Feld wird per PHP eine
> SQL-Abfrage generiert, die Treffer werden ausgegeben.
>
> Gibt es einen "einfachen Test" um zu prüfen, ob hier
> SQL-Injection möglich
> ist? (z.B. "Wenn die Eingabe eines einzelnen ' einen Fehler

Natürlich kann man einen Test machen, nur ist es fraglich, ob man wirklich
alle Möglichkeiten so findet. Quotes in String-Feldern sind ein typischer
Weg. Aber auch numerische Felder, die nicht auf numerik geprüft werden
ebenso.

Man sollte eher grundsätzlich an die Sache rangehen. (von außen zugeführte)
Parameter in SQL-Statements sollten grundsätzlich nur als gebundene
Variablen in das Statement aufgenommen werden.

Also die Parameter jeweils als ? im Statment, damit ein "prepare" und dann
beim "execute" die Parameterliste angeben.

So muß man sich nicht um das escaping kümmern.

Grüße,
Michael Donning


-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive