SqliSniper:针对HTTP Header的基于时间SQL盲注模糊测试工具

本文主要是介绍SqliSniper:针对HTTP Header的基于时间SQL盲注模糊测试工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于SqliSniper

SqliSniper是一款基于Python开发的强大工具,该工具旨在检测HTTP请求Header中潜在的基于时间的SQL盲注问题。

该工具支持通过多线程形式快速扫描和识别目标应用程序中的潜在漏洞,可以大幅增强安全评估过程,同时确保了速度和效率。跟其他SQLi安全扫描工具的不同之处在于,SqliSniper具有内置的Discord通知功能,可以通过检测消除误报并发送警报。

功能介绍

1、基于时间的SQL盲注检测:确定HTTP Header中潜在的SQL注入漏洞;

2、多线程扫描:通过并行处理提供更快的扫描能力;

3、Discord通知:通过Discord webhook发送检测到的漏洞警报;

4、假阳性检查:实现响应时间分析,以区分误报;

5、支持自定义Payload和Header:允许用户自定义用于扫描目标的Payload和Header;

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/danialhalo/SqliSniper.git

然后切换到项目目录中,使用pip3命令和项目提供的requirements.txt文件安装该工具所需的其他依赖组件:

cd SqliSniperpip3 install -r requirements.txt

最后,给工具脚本提供可执行权限即可:

chmod +x sqlisniper.py

工具使用

下面给出的是该工具支持的全部命令参数选项:

命令参数解析

-h, --help:显示工具帮助信息和退出;-u URL, --url URL:扫描单个目标URL;-r URLS_FILE, --urls_file URLS_FILE:包含目标URL列表的文件;-p, --pipeline:从pipeline读取目标URL;--proxy PROXY:拦截请求的代理,例如http://127.0.0.1:8080;--payload PAYLOAD:包含Payload的文件路径,默认为payloads.txt;--single-payload SINGLE_PAYLOAD:用于测试的单个Payload路径;--discord DISCORD:Discord Webhook URL;--headers HEADERS:包含Header的文件路径,默认为headers.txt;--threads THREADS:运行线程数量;

工具使用

扫描单个目标

./sqlisniper.py -u http://example.com

文件输入

./sqlisniper.py -r url.txt

URL管道输入

cat url.txt | ./sqlisniper.py -p

管道功能还支持与其他工具无缝集成,比如说,我们可以使用subfinder和httpx等工具,然后将它们的输出通过管道传输到SqliSniper进行大规模扫描:

subfinder -silent -d google.com | sort -u | httpx -silent | ./sqlisniper.py -p

使用自定义Payload执行扫描

./sqlisniper.py -u http://example.com --payload mssql_payloads.txt

在使用自定义Payload文件时,请确保你使用“%__TIME_OUT__%”设置了恰当的休眠时间。SqliSniper会反复地对休眠时间进行动态调整以减少误报。Payload文件样例如下所示:

ubuntu:~/sqlisniper$ cat payloads.txt0\"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

使用单个Payload执行扫描

./sqlisniper.py -r url.txt --single-payload "0'XOR(if(now()=sysdate(),sleep(%__TIME_OUT__%),0))XOR'Z"

使用自定义Header执行扫描

下面给出的是自定义HTTP Header文件样例:

ubuntu:~/sqlisniper$ cat headers.txtUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)X-Forwarded-For: 127.0.0.1

发送Discord警报通知

./sqlisniper.py -r url.txt --discord <web_hookurl>

多线程执行

./sqlisniper.py -r url.txt --threads 10

工具运行截图

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

SqliSniper:【GitHub传送门】

参考资料

https://twitter.com/DanialHalo

这篇关于SqliSniper:针对HTTP Header的基于时间SQL盲注模糊测试工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1013320

相关文章

MySQL中的交叉连接、自然连接和内连接查询详解

《MySQL中的交叉连接、自然连接和内连接查询详解》:本文主要介绍MySQL中的交叉连接、自然连接和内连接查询,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、引入二、交php叉连接(cross join)三、自然连接(naturalandroid join)四

Mysql如何将数据按照年月分组的统计

《Mysql如何将数据按照年月分组的统计》:本文主要介绍Mysql如何将数据按照年月分组的统计方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql将数据按照年月分组的统计要的效果方案总结Mysql将数据按照年月分组的统计要的效果方案① 使用 DA

Mysql表如何按照日期字段的年月分区

《Mysql表如何按照日期字段的年月分区》:本文主要介绍Mysql表如何按照日期字段的年月分区的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、创键表时直接设置分区二、已有表分区1、分区的前置条件2、分区操作三、验证四、注意总结一、创键表时直接设置分区

mysql的基础语句和外键查询及其语句详解(推荐)

《mysql的基础语句和外键查询及其语句详解(推荐)》:本文主要介绍mysql的基础语句和外键查询及其语句详解(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录一、mysql 基础语句1. 数据库操作 创建数据库2. 表操作 创建表3. CRUD 操作二、外键

MySQL更新某个字段拼接固定字符串的实现

《MySQL更新某个字段拼接固定字符串的实现》在MySQL中,我们经常需要对数据库中的某个字段进行更新操作,本文就来介绍一下MySQL更新某个字段拼接固定字符串的实现,感兴趣的可以了解一下... 目录1. 查看字段当前值2. 更新字段拼接固定字符串3. 验证更新结果mysql更新某个字段拼接固定字符串 -

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法

《golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法》:本文主要介绍golang获取当前时间、时间戳和时间字符串及它们之间的相互转换,本文通过实例代码给大家介绍的非常详细,感兴趣... 目录1、获取当前时间2、获取当前时间戳3、获取当前时间的字符串格式4、它们之间的相互转化上篇文章给大家介

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

使用Python自建轻量级的HTTP调试工具

《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建