| name | eni-redteam-sqli-detail-pack |
| description | [DOCUMENTATION ONLY] [仅文档] 授权范围内 SQL 注入测试的领域路由与边界手册,覆盖联合查询、盲注、报错注入、堆叠查询与二次注入等变体。当任务落入 SQL 注入领域、需要明确范围、证据、转向或退出标准时加载。 |
SQL 注入纵深手册
文档性质:本手册属于纯文档资源(DOCUMENTATION ONLY / 仅文档),提供方法框架与检查清单,不捆绑任何可执行脚本。
一、手册职责与领域声明
当前任务归类于 SQL 注入测试 领域,测试范围限定在 SQL 注入漏洞面:联合注入、布尔盲注、时间盲注、报错注入、堆叠查询、二次注入、OOB 带外等变体。
本手册只为代理解决三件事:划清测试边界、受阻时给出转向选项、收尾时卡住证据质量。它不教授固定攻击步骤,不替代用户授权范围,不把任何推测当作结论。
若 scope、target 或授权边界未明确,任务直接进入 blocked 或 plan-only 状态,不进行真实执行。
二、攻击面地形
SQL 注入的入口不只在查询参数里。凡是最终拼进 SQL 语句的用户输入——Header、Cookie、JSON 字段、路径段、排序参数、分页参数——都是注入面。观察面决定注入手法的选择:有回显走联合或报错,有页面差异走布尔盲注,只有时间差走时间盲注,出网受限则尝试 DNS 带外。判库、判表、判列的每一步都要有可复现的观察结果背书。
| 入口 | 典型载体 | 观察方式 |
|---|
| 查询参数 | GET/POST 参数 | 回显、错误、布尔差异 |
| 非参数位置 | Header、Cookie、路径 | 逐位置注入点测试 |
| JSON 结构 | JSON 字段值 | 值类型与注入语法适配 |
| 排序/分页 | order by、limit | 语法位置差异观察 |
| 存储回放 | 二次注入 | 入库后触发点验证 |
三、变体速览
| 变体 | 触发条件 | 高价值场景 |
|---|
| 联合注入 (UNION) | SELECT 可控列数 | 直接回显拖取数据 |
| 布尔盲注 | 页面差异可判断 | 逐位提取数据 |
| 时间盲注 | SLEEP/BENCHMARK 延时 | 无差异环境的数据提取 |
| 报错注入 | extractvalue/updatexml | 借错误消息带出数据 |
| 堆叠查询 | 多语句可执行 | 追加写操作 |
| 二次注入 | 存储后触发 | 绕过入口处过滤 |
| OOB 外带 | DNS/HTTP 回传 | 无回显环境带外提取 |
四、执行纪律与禁区
- 只围绕用户明确提供或授权的目标工作,不超出目标域名、IP、应用或系统边界。
- 不得执行 DROP、TRUNCATE 等不可恢复的破坏性 SQL。
- 证据纪律:不伪造、不夸大、不补写不存在的证据;不在缺少证据时声明任务完成。
- 不把候选风险、公开 CVE 或组件指纹直接等同于可利用漏洞——指纹只是线索,验证才是结论。
- 若 scope、target 或授权边界不明确,进入 blocked 或 plan-only,不进行真实执行。
五、受阻转向
- WAF 或关键字过滤 → 尝试编码绕过(双重 URL 编码、Unicode)、注释分割、大小写混合、内联注释。
- 参数化查询无注入点 → 换其他参数(Header、Cookie、JSON 字段、路径段)。
- 所有入口均不可注入 → 记录已测试注入点,回退到上级知识库重新选择测试方向。
- 不要反复尝试同一个失败的 payload 变体。
六、收尾与证据标准
正向退出(有发现)
- 关键结论至少具备 supported 级证据;漏洞成立、影响判断或最终报告必须有 verified 级证据。
- 交付 reproduction 证据包,须包含:完整 HTTP 请求(含注入 payload);对应响应(证明 SQL 执行成功的标志:数据泄露、报错信息、延时差异);注入类型标注与影响简述。
- 每份 artifact 能说明来源、目标、时间、观察结果和判断依据。
负向退出(未发现)
- 最少尝试次数:3。
- 记录已测试注入点与失败原因,提交 negative report 后回退上级。
- 措辞纪律:只输出"当前证据下未发现",不输出"确认不存在"。