Vorbeugung der SQL Injection (DB Sicherheit)

Alles, was PHP betrifft, kann hier besprochen werden.

Vorbeugung der SQL Injection (DB Sicherheit)

Postby samurai » 13. May 2007 14:00

Hi,

letztens habe ich (Einsteiger) gelesen, was für Gefahren im 'web' lauern. Speziell für Datenbanken z.B. SQL Injection.

Dies geschiet ja über Formularfelder, die dann auf die DB zugreifen. (oder gibt es noch andere Wege, die man bedenken sollte?)

Kann ich der SQL Injection vorbeugen, indem ich alle Eingabefelder nach Sonderzeichen prüfen lasse und folgende nicht zulasse?:

" , ' , < , > , \ , $ , &


Danke für jeden guten Rat (oder guten Link) zur Sicherung der DB!

gruß
samurai
samurai
 
Posts: 45
Joined: 17. July 2006 13:39

Postby Wiedmann » 13. May 2007 14:05

Kann ich der SQL Injection vorbeugen,

http://de.php.net/manual/en/function.my ... string.php

und folgende nicht zulasse?:

"<", ">", "$" und "&" haben allerdings bei einer SQL Injection keine Bedeutung.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

danke

Postby samurai » 13. May 2007 14:14

also ist das schon ein Stück Sicherheit, wenn ich " und ' nicht zulasse?
samurai
 
Posts: 45
Joined: 17. July 2006 13:39

Re: danke

Postby kschroeder » 14. May 2007 07:34

samurai wrote:also ist das schon ein Stück Sicherheit, wenn ich " und ' nicht zulasse?


Nein, ich kann auch eine SQL-Injection mit OR durchführen. Und wenn ich ein wenig überlege, fallen mir sicher noch ein paar andere Möglichkeiten ein.

Der einzig sinnvolle Weg ist, die konstruierte SQL-Abfrage zu escapen und zu kontrollieren.
kschroeder
 
Posts: 254
Joined: 11. May 2007 13:33


Return to PHP

Who is online

Users browsing this forum: No registered users and 18 guests