Verbesserung der Sicherheit mit vorbereiteten parametrisierten Abfragen: Warum sie die Fluchtfunktionen übertreffen
In den Bereichen Datenbankanfragen, die Bedeutung der Sicherung gegen SQL -Injektion, die in die Menschen mit der Injektion verwundet ist, kann nicht übertrafen. Es stellt sich eine häufige Frage: Warum werden parametrisierte Abfragen vorbereitet von Natur aus sicherer als ihre Fluchtfunktion Gegenstücke?
Trennung von Daten und SQL
Der grundlegende Grund hinter der erweiterten Sicherheit der vorbereiteten Parametrisierungsabfragen in der Trennung von Daten aus der SQL -Erklärung selbst. Im Gegensatz zu Escape-Funktionen einbinden vorbereitete Anweisungen keine von Benutzer bereitgestellten Daten direkt in die SQL-Abfrage ein. Stattdessen verwenden sie Platzhalter, um die Daten darzustellen.
Bei der Ausführung einer vorbereiteten Abfrage interpretiert die Datenbank -Engine die Platzhalter als Datenwerte, die sie dann getrennt in die SQL -Anweisung einbezieht. Diese entscheidende Trennung beseitigt das Risiko potenzieller SQL -Injektionsangriffe, da die Eingabe des Benutzers niemals als Teil des tatsächlichen SQL -Code behandelt wird. Durch die Vorbereitung der Abfrage und dann kann die Datenbank -Engine mehrmals ausgeführt werden, kann die Datenbank -Engine die Analyse- und Optimierungsprozesse nur einmal durchführen. Dies ist besonders wertvoll, wenn mehrere Datensätze in dieselbe Tabelle eingefügt werden, da die Datenbank -Engine den Overhead der Analyse und Optimierung der SQL -Aussage für jede einzelne Einfügungsoperation vermeiden kann. Einige Datenbankabstraktionsbibliotheken implementieren möglicherweise nicht vollständig vorbereitete Anweisungen. Stattdessen können sie einfach die von den vom Benutzer bereitgestellten Daten in die SQL-Anweisung verkettet und möglicherweise dieselben Schwachstellen wie Fluchtfunktionen einführen. Daher ist es wichtig, die Implementierungsdetails jeder Datenbankabstraktionsbibliothek sorgfältig zu bewerten.
.Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3