工具简介
ScanQLi 是一款功能强大且易于上手的 SQL注入 扫描工具,专为安全测试人员设计,用于自动化检测 Web 应用中的 SQL 注入漏洞。它支持检测多种注入类型,如经典注入、盲注和基于时间的注入,并集成了递归扫描、Cookies 支持、请求延迟调整等实用功能。需要明确的是,ScanQLi 的定位是漏洞检测而非漏洞利用,这使其成为进行安全评估和漏洞扫描的理想辅助工具。
安装步骤
1. 安装 Git 工具
首先,确保系统已安装 Git 以便克隆项目。在 Debian/Ubuntu 系统中,执行以下命令:
apt update && apt install git
2. 克隆项目仓库
使用 Git 将 ScanQLi 的仓库克隆到本地:
git clone https://github.com/bambish/ScanQLi
3. 安装依赖库
进入项目目录,并使用 pip 安装必要的 Python 依赖包:
cd ScanQLi
apt install python-pip # 若使用 Python 3,请安装 python3-pip
pip install -r requirements.txt # 若使用 Python 3,请使用 pip3
基础使用方法
简单 URL 扫描
对指定的目标 URL 进行扫描,并将结果保存到日志文件:
python scanqli.py -u 'http://127.0.0.1/test/?p=news' -o output.log
递归扫描
启用递归模式,扫描目标网站的所有链接以扩大检测范围:
python scanqli.py -u 'https://127.0.0.1/test/' -r
带 Cookies 扫描
若目标网站需要登录态,可使用 -c 参数附加 Cookies 信息进行认证后扫描:
python scanqli.py -u 'https://127.0.0.1/test/' -r -c '{"PHPSESSID": "4bn7uro8qq62ol4o667bejbqo3", "session": "mzo6ywmwzgrmowu2"}'
快速操作流程
- 下载工具:克隆 ScanQLi 项目到本地环境。
- 打开命令行:导航至工具所在的目录。
- 安装依赖:通过 pip 一键安装所需的 Python 库。
- 开始扫描:根据实际测试场景,执行相应的扫描命令。
安全注意事项
合法授权
务必在获得目标系统所有者明确授权的前提下进行扫描。未经授权的扫描行为属于非法入侵,将面临法律风险。
避免业务影响
扫描过程会产生网络请求,可能对目标服务器造成负载。建议在业务低峰期执行,并通过调整工具参数(如请求延迟)来最小化潜在影响。
结果验证
ScanQLi 是一款检测工具,其报告的可能漏洞存在误报几率。所有自动化工具发现的漏洞点,都必须经过专业安全人员的手工验证,这是Web应用安全测试中不可或缺的一环。
遵守伦理规范
本工具仅可用于合法的安全测试、渗透测试教学及授权范围内的漏洞评估。使用者应坚守职业道德,共同维护网络空间的安全与秩序。
总结
ScanQLi 以其轻量、实用的特点,成为安全人员快速筛查 SQL注入 漏洞的得力助手。在实际工作中,应将其作为初步探测工具,结合深度手动测试与其他专业安全/渗透测试工具,以构建更全面、准确的安全防御视图。始终牢记,技术的使用必须在法律与道德的框架之内,这才是提升整体网络安全水平的正确路径。