Sql...

06/06/2012 14:16 .Shyo.#1
Hey Leute weiß einer wie man sich von den Sql Injectionen schützen kann ?
06/06/2012 15:13 Marv!n#2
Ich gebe einmal das wieder, was ich bis zu diesem Zeitpunkt an Erfahrung/Halbwissen gesammelt habe, ist demzufolge eventuell nicht 100%ig zuverlässig:

Grundsätzlich musst du jede Eingabe mit einer der mysql_real_escape_string() ähnelnden Funktion versehen. So eine ist in jeder Stefan-Pfeiffer-Homepage enthalten.

Wenn es sich um eine reinen Zahleneingabe handelt, kannst du dir is_numeric() zu Nutze machen.

Du könntest natürlich auch ein Array definieren, in das du gewisse Zeichenkobinationen einträgst, die der User nicht eingeben darf (bspw. DELETE, CHARACTER_TBL, ACCOUNT_DBF usw.). Dieses Array wendest du dann auf die Eingabe an und filterst damit die für die Injection notwendigen Tabellen- und Datenbanknamen einfach heraus - oder überprüfst, ob eine der Zeichenkombinationen in der Eingabe enthalten ist und brichst, insofern ein Treffer vorhanden, dann das Skript ab.