Heim > Betrieb und Instandhaltung > Sicherheit > So analysieren Sie Probleme mit sqlmap

So analysieren Sie Probleme mit sqlmap

WBOY
Freigeben: 2023-05-27 13:07:56
nach vorne
1602 Leute haben es durchsucht

0x00 Übersicht

Kürzlich bin ich auf ein seltsames Phänomen gestoßen, als ich SQLMAP für Injektionstests verwendet habe. Die höhere Version von SQLMAP kann die Injektion nicht erkennen, und die Daten können ausgehen Kein falsch positives Ergebnis. Nach Vergleichstests und beim Betrachten des SQLMAP-Quellcodes habe ich zwei kleine Fehler gefunden. 0x01 Szenario-Reproduktion :

python sqlmap.py -r sqlpk.txt –flush-session -vv

sqlmap v1.2.11 kann nicht injiziert werden




sqlmap v1.2 erfolgreich injiziert

So analysieren Sie Probleme mit sqlmap
Gleiche wie v1.2.1. 0kann nicht Injektion, v1.1.12 kann injiziert werden

Nach der Analyse sind die beiden Fallstricke wie folgt:

(1) Die limits.xml von v1.2.11 (/v1.2.10/v1.2.9/master) hat keinen Test für Fuzzy-Abfragen (%). Und v1.2 (/v1.1.12/1.1.4/1.2.2) hat es.

(2) v1.2.11 (/v1.2.10/1.2.9/master) muss einen bestimmten Parameter von json manuell auf * setzen, um diesen Parameter einzufügen (auch wenn y-inject inside ausgewählt ist), andernfalls wird die Nutzlast gelöscht Direkt folgen JSON kann nicht injiziert werden, aber v1.2 (/v1.1.12) kann standardmäßig einen bestimmten Parameter von JSON durch Drücken der Eingabetaste (y) injizieren.

So analysieren Sie Probleme mit sqlmap
0x02 Detaillierter Test

Pit-Punkte (1):

Verstehen Sie zunächst die Nutzlastzusammensetzung von sqlmap:

//Bildquelle https://www.freebuf.com/colum...

Take Schauen Sie sich die Testnutzlast von v1.2 an:


So analysieren Sie Probleme mit sqlmapVerwendete Nutzlast: %' und 5731=5731 und '%'='

Dies ist eine sehr häufige Suchfeldinjektion

Schauen Sie sich die limits.xml von V1.2 an:

So analysieren Sie Probleme mit sqlmap

Die limits.xml von v1.2.11 verfügt nicht über Injektionstests für Fuzzy-Abfragen!

https://github.com/sqlmapproj...
Also habe ich den Injektionstest der Fuzzy-Abfrage zur Datei von v1.2.11 hinzugefügt und manuell * zu den Injektionsparametern (z. B. Wert) hinzugefügt, und die Injektion war erfolgreich!
Anbei ist die hinzugefügte Version:

https://github.com/theLSA/sql...

So analysieren Sie Probleme mit sqlmap


pr hat die Antwort erhalten, weil es zu viele Fehlalarme gab, sodass die entsprechende Nutzlast entfernt wurde, aber das wird so sein begrenzt.
https://github.com/sqlmapproj...

Pit Points (2):

Vergleichen Sie die Nutzlasten von v1.2 und v1.2.11:

So analysieren Sie Probleme mit sqlmap


Es ist direkt ersichtlich, dass v1.2.11 Verbindet die Nutzlast am Ende von JSON.

Manuell *
%22whereparams%22%3A%5B%7B%22name%22%3A%22keyWord%22%2C%22value%22%3A%22*%22%7D%5D%7D hinzufügen

d. h. beim Injizieren Parameterwert Kann erfolgreich injiziert werden!

So analysieren Sie Probleme mit sqlmap
0x03 Fazit



Ich persönlich empfehle das Hinzufügen einer Fuzzy-Abfrage-Testnutzlast besser als falsch-negative Ergebnisse, und es handelt sich um eine sehr häufige Fuzzy-Abfrageinjektion.

Wenn Sie auf JSON-Parameter stoßen, versuchen Sie, diese manuell hinzuzufügen* (für einige Versionen von sqlmap).

  1. Es wird empfohlen, beim Testen mit sqlmap -vv hinzuzufügen.

  2. Verlassen Sie sich nicht zu sehr auf Werkzeuge. Versuchen Sie, aus Sicherheitsgründen Werkzeuge und manuelle Tests zu verwenden.

Das obige ist der detaillierte Inhalt vonSo analysieren Sie Probleme mit sqlmap. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage