1. Was ist SQL-Injection? SQL-Injection ist eine Angriffsmethode, bei der dem Eingabeparameter SQL-Code hinzugefügt und zur Analyse und Ausführung an den SQL-Server übergeben wird. 2. Wie kam es dazu? Webentwickler können nicht garantieren, dass alle Eingaben bereinigt werden Der Angreifer erstellt ausführbaren SQL-Code unter Verwendung der an den SQL-Server gesendeten Eingabedaten Die Datenbank ist nicht für die Sicherheit konfiguriert 3. Wie findet man SQL-Schwachstellen? Identifizieren aller Eingabepunkte in einer Webanwendung Verstehen, welche Arten von Anfragen Ausnahmen auslösen? (Sonderzeichen " oder ') Erkennen von Anomalien in Serverantworten 4. Wie führt man einen SQL-Injection-Angriff durch? Digitale Injektion: Wählen Sie * aus Tabellennamen, wobei ID=1 oder 1=1 ist; String-Injektion: MySQLs Kommentarfunktion: Die Zeichen nach # und -- sind auskommentiert, so dass jedes eingegebene Passwort korrekt abgefragt werden kann. Klicken Sie hier, um die Bildbeschreibung einzugeben 5. Wie kann SQL-Injection verhindert werden? Überprüfen Sie das Eingabeformat genau: is_numeric (var), validieren Sie die Überprüfung mit tp5 und überprüfen Sie mit regulären Ausdrücken, ob die Zeichenfolge zwischen [A-Za-z] liegt. Escape: addslashes(str), mysqli_escape_string() Funktion zum Escapen 6.MySQLis Vorkompilierungsmechanismus Parametrisierte Bindung Die parametrisierte Bindung ist eine weitere Barriere zur Verhinderung von SQL-Injection. PHP MySQLi und PDO bieten beide eine solche Funktionalität. MySQLi kann beispielsweise wie folgt abfragen: Noch komfortabler ist PDO, zum Beispiel: Das könnte Sie auch interessieren:
|
<<: So generieren Sie ein kostenloses Zertifikat mit OpenSSL
>>: So schreiben Sie speichereffiziente Anwendungen mit Node.js
Der Kern ist mysqldump und Runtime Der Vorgang is...
Hintergrund Ich möchte die Webpack-Version überpr...
Referenz: Offizielle Docker-Redis-Dokumentation 1...
Beim Verschieben von Bausteinen treten verschiede...
Inhaltsverzeichnis Analysieren von VUE-Dateien Do...
Unter den Anforderungen des heutigen responsiven ...
Inhaltsverzeichnis 1. Was ist Set 2. Konstruktor ...
Vorwort Wir haben Docker bereits installiert und ...
In diesem Artikel finden Sie das Installations-Tu...
In diesem Artikelbeispiel wird der spezifische JS...
Einigen Eigenschaften in CSS geht ein "*&quo...
In Vue können wir lokale Komponenten selbst defin...
Hinweis: Es wird empfohlen, dass der Speicher der...
Inhaltsverzeichnis 1. Abhängigkeiten installieren...
Im vorherigen Artikel haben wir Docker verwendet,...