Ghauri:一款功能强大的SQL注入漏洞自动化检测和利用工具
作者:admin | 时间:2023-3-19 11:26:38 | 分类:黑客工具 隐藏侧边栏展开侧边栏
关于Ghauri
Ghauri是一款功能强大的SQL注入漏洞自动化检测和利用工具,该工具是一个高级跨平台工具,可以帮助广大研究人员以自动化的形式检测和利用目标应用中的SQL注入漏洞,并以此提升应用程序的安全性。
功能介绍
1、支持下列注入Payload类型:布尔注入、错误注入、时间注入、堆叠注入;
2、支持针对下列DBMS的SQL注入:MySQL、Microsoft SQL Server、Postgres、Oracle、Microsoft Access;
3、支持下列注入类型:基于GET/POST的注入、基于Header的注入、基于Cookie的注入、表单数据注入、基于JSON的注入;
4、支持代理选项:--proxy;
5、支持从txt文件解析请求:-r file.txt;
6、支持针对数据库、表、列和转储数据提取:--start 1 --stop 2;
7、支持操作阶段恢复;
8、支持urlencoding跳过:--skip-urlencode;
9、支持基于布尔值/时间注入的提取字符验证;
10、支持根据用户需求处理重定向;
工具要求
Python 3
pip3
工具下载
由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。接下来,我们可以使用下列命令将该项目源码克隆至本地,并完成安装配置:
git clone https://github.com/r0oth3x49/ghauri.git
工具安装
使用cd命令切换到Ghauri项目目录中,并使用pip命令和该项目提供的requirements.txt文件安装该工具所需的依赖组件:
cd ghauri python3 -m pip install --upgrade -r requirements.txt
接下来,运行下列命令完成工具的安装
python3 setup.py install
或
python3 -m pip install -e
此时,我们就可以使用下列命令来访问和运行Ghauri了:
ghauri --help
工具使用
常用选项
-h, --help 显示工具帮助信息 --version 显示工具版本 -v VERBOSE Verbose等级:1-5 (默认1). --batch 使用默认配置,无需用户输入 --flush-session 刷新当前目标的会话文件
目标定义
-u URL, --url URL 目标URL (例如'http://www.site.com/vuln.php?id=1). -r REQUESTFILE 从文件加载HTTP请求
请求选项
-A , --user-agent HTTP User-Agent Header值 -H , --Header 提取Header(例如. "X-Forwarded-For: 127.0.0.1") --host HTTP主机Header值 --data 通过POST发送的数据字符串 (例如. "id=1") --cookie HTTP Cookie Header值 (例如. "PHPSESSID=a8d127e..") --referer HTTP Referer Header值 --headers 提取Headers (例如. "Accept-Language: fr\nETag: 123") --proxy 使用代理连接到目标URL --delay 每个HTTP请求之间的延迟(秒) --timeout 连接超时前等待的秒数 (默认30) --retries 发生连接相关错误时重试 (默认3) --confirm 确认注入的Payload --skip-urlencode 跳过Payload数据URL编码 --force-ssl 强制使用SSL/HTTPS
性能优化
--threads THREADS 最大并发HTTP请求数 (默认1)
注入参数
-p TESTPARAMETER Testable参数 --dbms DBMS 强制提供后端dbms --prefix 注入有效负载前缀字符串 --suffix 注入有效负载后缀字符串 --safe-chars 跳过指定字符URL编码 (例如:- --safe-chars="[]") --fetch-using 使用不同操作符获取数据 (例如: --fetch-using=between/in)
自定义检测
--level LEVEL 要执行的测试级别 (1-3, 默认1) --code CODE 当查询值为True时要匹配的HTTP代码 --string 当查询值为True时要匹配的字符串 --not-string 当查询值为False时要匹配的字符串 --text-only 仅基于文本内容比较页面
注入技术
--technique TECH 要使用的SQL注入技术 (默认"BEST") --time-sec TIMESEC DBMS响应延迟秒数 (默认5)
后端数据库枚举
-b, --banner 检索DBMS Banner --current-user 检索DBMS当前用户 --current-db 检索DBMS当前数据库 --hostname 检索DBMS服务器主机名 --dbs 枚举DBMS数据库 --tables 枚举DBMS数据库表 --columns 枚举DBMS数据库表字段 --dump 转储DBMS数据库表条目 -D DB 要枚举的DBMS数据库 -T TBL 要枚举的DBMS数据库表 -C COLS 要枚举的DBMS 数据库表字段 --start 从数据库/表/列/转储中检索数据条目的偏移量起始 --stop 从数据库/表/列/转储中检索数据条目的偏移量结束
工具使用样例
ghauri http://www.site.com/vuln.php?id=1 --dbs
工具运行截图
许可证协议
本项目的开发与发布遵循MIT开源许可证协议。
项目地址
Ghauri:【GitHub传送门】