Einzelnen Beitrag anzeigen

stifflersmom

Registriert seit: 8. Dez 2005
Ort: 24994 Holt
379 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: SQL Injection verhindern?

  Alt 22. Apr 2022, 07:44
Auf jeden Fall ein wichtiges und auch kein triviales Thema.

Injection bedeutet ja, dass irgendetwas in Deinen SQL-String eingefügt wird, was dann als zusätzlicher Befehl missbraucht wird.

Als Beispiel hast Du ein EditFeld und die Eingabe darin soll als Suchstring interpretiert werden, gedacht ist dann sowas wie:
Code:
'select * from Personen where Name = '+QuotedStr(Edit1.text)
Und wenn im Edit1 ein 'Hansen steht, dann würde daraus ein:
Code:
'select * from Personen where Name = 'Hansen';
So weit so gut, aber kommt über das Editfeld jetzt aber noch ein Hochkomma und ein Semikolon rein, dann könnte das dazu führen, dass ein zusätzlicher Befehl ausgeführt wird:
Code:
'select * from Personen where Name = 'Hansen'; DROP TABLE blablabla;'';
Hier würde jetzt also der zusätzliche Befehl DROP TABLE ... ausgeführt werden können.

Das war jetzt, sehr simpel, ein mögliches Szenario zusammengetippt.
  Mit Zitat antworten Zitat