Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#18

AW: Spaß mit UPPERCASE / LOWERCASE ?

  Alt 27. Okt 2020, 13:20
QuotedStr setzt die Hochkommata pascalkonform und nicht sqlkonform.
Oft passt das mit den ' aber nicht immer und bei dem "nicht immer" ist es möglich, durch geschicktes setzen der Hochkommata "so mal eben" in ein gültig aussehendes SQL weitere SQL-Statements einzufügen, mit denen man im "Idealfall" den gesamten Datenbestand ruinieren kann.

Oder mal anders formuliert: Unter Zuhilfenahme von QuotedStr (bzw. dem Zusammenbau von SQLs durch das Zusammenfügen von Strings) kann man Schadcode in ein SQL einfügen und diesen dann per Open bzw. ExecSQL ausführen lassen.

Bei der Nutzung von Parametern ist dies nicht möglich. Egal was man da in den Parameter "reinschiebt", es wird immer als Gesamtes (als Inhalt) in einem einzigen Wert interpretiert.

Da QuotedStr nur das ' kennt, wird man mit QuotedStr bei allen Datenbanken, die auch noch was anderes als das ' unterstützen / verlangen, scheitern.

Geändert von Delphi.Narium (27. Okt 2020 um 13:21 Uhr) Grund: Schreibfehler
  Mit Zitat antworten Zitat