Files
Sec-Interview/Chapter4/4-8.md
T
2025-09-25 03:23:03 +08:00

30 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
### SQLMap 参数 level 与 risk 区别
**level (探测等级)**
`level` 选项用于指定 `sqlmap` **测试的深度**,范围从1到5。`level` 值越高,`sqlmap` 会尝试更多的 Payload,但同时也会增加请求的数量和测试时间
- **Level 1**:默认等级,会测试一些基本的 Payload,比如单引号 `'` 和双引号 `"`。这适用于快速探测,通常不会对应用造成太大影响
- **Level 2**:会增加基于时间的 Payload,用于测试盲注
- **Level 3**:会测试 `AND/OR` 布尔盲注以及一些常见的报错注入 Payload
- **Level 4**:会测试一些不常见的、复杂的 Payload,例如基于 `UNION` 查询的 Payload
- **Level 5**:最高等级,会测试所有的 Payload,包括一些非常规的、可能导致应用崩溃的 Payload
**总结**`level` 决定了 `sqlmap` 攻击的**深度和复杂性**,它告诉 `sqlmap` **应该使用多少种不同的技术**来探测漏洞
**risk (危险等级)**
`risk` 选项用于指定 `sqlmap` **执行 Payload 的危险程度**,范围从1到3。`risk` 值越高,`sqlmap` 会使用一些可能对数据库**造成修改或破坏**的 Payload
- **Risk 1**:默认等级,`sqlmap` 只会使用那些不会对数据库数据造成修改的 Payload。例如,`UNION` 查询、布尔盲注等
- **Risk 2**:会增加一些可能造成轻微数据修改的 Payload,比如**基于 `GET``POST` 参数的更新语句**
- **Risk 3**:最高等级,会尝试**可能对数据库造成重大破坏**的 Payload,例如 `DELETE``INSERT``UPDATE` 等。在没有明确授权的情况下,不建议使用这个等级
**总结**`risk` 决定了 `sqlmap` 攻击的**潜在危害性**,它告诉 `sqlmap` **可以执行多“危险”的操作**
| 特征 | level (探测等级) | risk (危险等级) |
| -------- | ------------------------------------ | ------------------------------ |
| 关注点 | 攻击深度和技术类型 | 攻击危险性和破坏程度 |
| 决定因素 | 攻击手法(布尔、时间、报错、联合等) | 攻击操作(查询、更新、删除等) |
| 默认值 | 1 | 1 |
| 常用组合 | level 3 或更高 | risk 2 或更高 |