共计 941 个字符,预计需要花费 3 分钟才能阅读完成。
PHP 没写好,就很容易出现 SQL 注入的 BUG,老司机也难免有翻车的时候,我也不例外。
于是在网上搜索许久,找到一款非常实用的测试工具:Sqlmap
Sqlmap
Github:https://github.com/sqlmapproject/sqlmap
Sqlmap 是一个非常流行的开源工具,用于自动化 SQL 注入测试。它支持多种数据库管理系统,并提供了大量的选项来自定义测试过程。
1. 安装使用
Sqlmap 基于 Python 开发,运行的话可以直接拉取 Git 仓库的代码,通过命令行运行:
python sqlmap.py -u http://127.0.0.1:9506/sell/lists?shop=1
Sqlmap 将会自动识别出 Get 参数,执行 Sql 注入测试。
2. 命令选项
指定自定义请求头:
python sqlmap.py -u http://127.0.0.1:9506/sell/lists?shop=1
--headers="Content-Type: application/jsonnAuthorization:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
强制清除缓存重新开始:
python sqlmap.py -u http://127.0.0.1:9506/sell/lists?shop=1 --flush-session
指定测试深度,风险等级:
python sqlmap.py -u http://127.0.0.1:9506/sell/lists?shop=1 --level 5 --risk 3 --method POST
--data {"pageSize":30,"page":1,"name":"好香佬","depart":12,"start":["2024-11-07","2024-11-09"]}
指定日志输出目录:
python sqlmap.py -u "http://example.com/index.php?id=1" --dump --output-dir=/path/to/output
3. 关于日志
结果将保存在指定的输出目录中,通常包括以下文件:
- data.json:包含提取的数据。
- log.txt:包含 SQLMap 的日志信息。
- dbs.txt:包含发现的数据库列表。
正文完