Flucht einziges Zitat auf SQL-injection

Hallo, ich bin durch einige SQL-injection Beispiele und ich habe Folgendes Szenario:

In diesem Beispiel wird bewusst der Gefahr von SQL-injection, die Entwickler beschlossen, block single quotes 'durch entfernen jedes einzelne Zitat' in der Abfrage. Aber es gibt noch einen Weg, um aus der SQL-syntax und einschleusen von beliebigem SQL.

So zu tun, Sie müssen denken Sie an die Abfrage:

SELECT * FROM users WHERE username='[username]' and password='[password]'

Das problem hier ist, dass man nicht in der Theorie, brechen aus den single quotes ' da kann man nicht injizieren jedem Zitat. Allerdings, wenn Sie sich Spritzen, ein back-slash \, die zweite " in der Abfrage (die man eigentlich beenden, string [username] wird maskiert werden und wird geschlossen, indem der Dritte (der, sollte die Zeichenfolge [Passwort].

Bedeutet das nicht, dass wenn ich die Eingabe eines "\" auf dem Feld Benutzername wird automatisch unterbrechen Sie die Abfrage? und Aussehen

SELECT * FROM users WHERE username='[username] and password=' ..

Bin ich etwas fehlt ? Soll ich den backslash in einer anderen Art und Weise?

  • Fragen Sie, wie zu injizieren sql-oder wie schützt man sich vor sql-injection-Angriffe?
  • wie zu injizieren es nicht, wie zu schützen
  • Um ehrlich zu sein, sollten Sie sich mit Hilfe von Parametern übergeben Sie die Werte für Benutzername und Kennwort. Sie sollten es vermeiden Gebäude ist eine Zeichenfolge mit der Werte vom Benutzer ein-und auszuführen, dass Sie gegen Ihre Datenbank - das ist der 1. Schritt zum Schutz vor sql-injection.
  • Ich bin nicht auf der Suche, um gegen zu schützen, ich bin auf der Suche, um die übung abzuschließen und zu verstehen, wie "\" maskiert Zeichen, denn im moment scheint es, es nicht
  • So sind Sie auf der Suche nach dieser? blogs.msdn.com/b/raulga/archive/2007/01/04/...
  • Möglich, Duplikat der Wie kann Abwasserbeseitigung, entweicht einfache Anführungszeichen werden besiegt von SQL injection in SQL Server?

InformationsquelleAutor user3171222 | 2015-08-06
Schreibe einen Kommentar