Im späteren Stadium der Ausnutzung von SQL-Injection-Schwachstellen besteht die gängigste Methode darin, die Dateiserienfunktionen von MySQL zum Lesen vertraulicher Dateien oder Schreiben von Webshells zu verwenden. Die folgenden drei Funktionen werden häufig verwendet:
Unsere Testdaten sind dieses Mal wie folgt Einschränkungen beim Aufrufen von Funktionen zum Lesen und Schreiben von Dateien Da es sich dabei um das Schreiben von Dateien auf den Server handelt, wird die erfolgreiche Ausführung der obigen Funktion durch den Parameter Übersetzt:
Dieser Wert kann mit dem Befehl Der Unterschied zwischen Dumpfile und Outfile Unterschiede beim Exportieren von Datenbankszenarien wählen Sie ... in Ausgabedatei Schauen wir uns zunächst die Erklärung dieser beiden Funktionen in der offiziellen MySQL-Dokumentation an Es gibt zwei nennenswerte Fallstricke:
Als nächstes werden wir uns die Details hier ansehen, indem wir den Test exportieren Verwenden Sie zunächst den Outfile-Exportbefehl Sie können sehen, dass alle Daten in der Datei Wenn Sie sich die offizielle Dokumentation ansehen, können Sie sehen, dass das Format mit den folgenden Parametern angepasst werden kann Verwenden Sie beispielsweise den folgenden Befehl: Die resultierende Exportdatei sieht wie folgt aus wählen Sie ... in Dumpdatei Verwenden Sie dann den Befehl Sie können sehen, dass dieser Befehl bei seiner Ausführung mehr als eine Ausgabezeile erzeugt. Dateiinhalte anzeigen Es ist ersichtlich, dass zwischen den von dumpfile exportierten Datenzeilen kein Zeilenumbruch vorhanden ist und nur ein Teil der Daten exportiert wird Schreiben Sie den Unterschied zwischen Webshell und UDF wählen Sie ... in Ausgabedatei Wir verwenden den Befehl Sie können sehen, dass outfile Sonderzeichen wie \n im exportierten Inhalt maskiert und am Ende des Dateiinhalts eine neue Zeile hinzufügt. Verwenden wir den Befehl Es ist ersichtlich, dass Dumpfile den Dateiinhalt so schreibt, wie er ist, ohne jegliche Übertragung oder Hinzufügung. Aus diesem Grund Ein weiterer Punkt, der beachtet werden muss, ist, dass auf outfile kein Pfad folgen kann, der mit 0x beginnt, oder ein Pfad nach einer Zeichenkonvertierung, sondern nur ein Pfad in einfachen Anführungszeichen sein kann. Dieses Problem ist bei PHP-Injection problematischer, da einfache Anführungszeichen automatisch in \' umgewandelt werden. Dann wird grundsätzlich GG verwendet. Hinter load_file kann der Pfad jedoch einfache Anführungszeichen, 0x und Zeichenkonvertierungszeichen enthalten, aber der Schrägstrich im Pfad ist / statt \. Zusammenfassen Oben finden Sie eine ausführliche Erläuterung der vom Herausgeber eingeführten Funktionen outfile, dumpfile und load_file in der MySQL-Injection. Ich hoffe, dass sie für alle hilfreich sein wird. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Das WeChat-Applet ermöglicht das Aufnehmen von Fotos und Auswählen von Bildern aus Alben
Heutzutage ist das Kopieren von Websites im Intern...
In diesem Artikel finden Sie das grafische Tutori...
In diesem Artikel wird die Click-to-Switch-Bildko...
Ich habe kürzlich ein WeChat-Applet geschrieben u...
Schauen wir uns zuerst den Fall an. Verwenden Sie...
Inhaltsverzeichnis Vorwort Dynamisches SQL 1. Sch...
Früher hatte fast jede Website eine Sitemap-Seite...
Inhaltsverzeichnis Vorwort Aufgabenliste tun Sie ...
Hier stellen wir den CentOS-Server mit installier...
<br />Ursprünglicher Link: http://www.dudo.o...
Inhaltsverzeichnis 1. Installation von JDK1.8 unt...
Inhaltsverzeichnis Einführung Verwenden des strik...
Darüber hinaus wird eine mit einem Blog-Programm e...
Als leistungsstarker Editor mit umfangreichen Opt...
Inhaltsverzeichnis 1. Teleport-Nutzung 2. Vervoll...