Sqli-labs sqlmap
时间: 2024-12-30 11:24:41 浏览: 6
### 使用 sqlmap 对 sqli-labs 进行 SQL 注入漏洞测试
#### 准备工作
为了确保能够顺利进行 SQL 注入测试,需确认 Kali Linux 和运行 sqli-labs 的服务器之间的网络连接正常。如果遇到“No route to host”的错误提示,则应考虑重新安装 sqlmap 并验证两台虚拟机间的连通性[^2]。
#### 基础命令介绍
在执行具体的注入操作之前,熟悉一些常用的 sqlmap 参数是非常有帮助的。这些参数允许用户指定目标 URL、设置风险级别以及定义要攻击的具体数据库对象等[^4]。
#### 执行 SQL 注入测试
下面是一个完整的例子,展示如何利用 sqlmap 来提取 `sqli-labs` 中名为 `Less-1` 的页面背后的 MySQL 数据库中的用户名和密码:
```bash
python sqlmap.py -u "http://<target-ip>/sqli-labs-master/Less-1/?id=1" --level=5 --risk=3 --dbms=mysql -D "security" -T "users" -C "password,username" --dump
```
这条命令的作用在于:
- `-u`: 指定待测的目标网址;
- `--level=5`: 设置检测强度等级为高;
- `--risk=3`: 设定风险系数至最高级以尝试更多类型的注入向量;
- `--dbms=mysql`: 明确指出使用的数据库管理系统是 MySQL;
- `-D "security"`: 选定特定的数据库名称;
- `-T "users"`: 定位到具体表名;
- `-C "password,username"`: 列出感兴趣的列;
- `--dump`: 将查询结果导出并打印出来[^3]。
通过上述配置,sqlmap 可自动探测是否存在可利用的 SQL 注入点,并尽可能多地收集敏感信息。
阅读全文