Hallo Liste,
Im Artikel über SQL Injection wurde folgendes geschrieben:
Ein wichtiger Hinweis: Stored Procedures sind nicht von sich aus vor SQL-Injection sicher. Werden sie auf herkömmliche Weise mit den Benutzereingaben aufgerufen, kann SQL-Code eingeschleust werden. Erst durch den parametrisierten Aufruf sind sie nach aktuellem Wissenstand vor SQL-Injection sicher.
Soweit ich das PreparedStatement ( bei Oracle ) verstehe, wird das Statement geparst und die Werte sind mit Bind Values im Cache abgebildet, die dann beim Execute verwendet werden.
Wie sieht es mit anderen Datenbanksysteme und jdbc Treiber aus? Wird bei allen Datenbanken der Weg über die Bind Variable gegangen und können alle Treiber damit umgehen? Ich meine hier: Gibt es Treiber die einem ein PreparedStatement vorgaukenl und intern nur ein ördinäres Statement verwenden?
lg Dietmar
ps. Ich hoffe hier einen erfolgreichen Anfang in diesem Forum gemacht zu haben.
Im Artikel über SQL Injection wurde folgendes geschrieben:
Ein wichtiger Hinweis: Stored Procedures sind nicht von sich aus vor SQL-Injection sicher. Werden sie auf herkömmliche Weise mit den Benutzereingaben aufgerufen, kann SQL-Code eingeschleust werden. Erst durch den parametrisierten Aufruf sind sie nach aktuellem Wissenstand vor SQL-Injection sicher.
Soweit ich das PreparedStatement ( bei Oracle ) verstehe, wird das Statement geparst und die Werte sind mit Bind Values im Cache abgebildet, die dann beim Execute verwendet werden.
Wie sieht es mit anderen Datenbanksysteme und jdbc Treiber aus? Wird bei allen Datenbanken der Weg über die Bind Variable gegangen und können alle Treiber damit umgehen? Ich meine hier: Gibt es Treiber die einem ein PreparedStatement vorgaukenl und intern nur ein ördinäres Statement verwenden?
lg Dietmar
ps. Ich hoffe hier einen erfolgreichen Anfang in diesem Forum gemacht zu haben.
Comment