关于 graphql-and-hidden-parameters
用于 GraphQL 与 REST API 安全测试的技能,面向安全测试人员和 Agent。内容聚焦模式发现、隐藏参数检查及批处理相关的授权与速率行为。
主要功能
- 01GraphQL 模式发现
- 02错误与字段建议探测
- 03隐藏参数检查
- 04批处理安全测试
- 05按发现结果路由后续测试
适用场景
- 01枚举受限的 GraphQL 模式
- 02检查未公开字段的授权问题
- 03测试批处理对认证或速率的影响
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ yaklang/ hack-skills --skill graphql-and-hidden-parameters安装后在 Claude Code 中输入/graphql-and-hidden-parameters确认已加载。
详细介绍
技能:GraphQL 与隐藏参数 — 内省、批处理和未记录字段
AI 加载指令:当存在 GraphQL,或 REST 文档显示存在可选字段、已弃用字段或未记录字段时,使用此技能。重点关注架构发现、滥用隐藏参数,以及将批处理作为效果倍增器。
1. GraphQL 初步检查
query { __typename }
query {
__schema {
types { name }
}
}
如果内省受到限制,请继续尝试:
- 通过字段建议和错误进行发现
- 探测已知类型,例如
__type(name: "User") - 从 JS 和移动端代码包中提取路由
2. 高价值 GraphQL 测试
| 主题 | 示例 |
|---|---|
| IDOR | user(id: "victim") |
| 批处理 | 登录或对象获取操作数组 |
| 隐藏字段 | 类型定义中暴露的管理员专用字段 |
| 嵌套授权缺口 | 检查较宽松的关联对象字段 |
3. 隐藏参数发现
查找:
- 管理员文档中存在、但公共文档中没有的字段
additionalProperties或宽松的架构- 前端代码使用的请求体比可见 UI 控件所展示的更丰富
- 携带角色、组织、功能标志或内部筛选字段的移动端端点
4. 后续路由
- 如果隐藏字段会影响权限:API 授权与 BOLA
- 如果 GraphQL 批处理会改变授权或速率行为:API 身份验证与 JWT 滥用
- 如果端点发现不完整:API 侦察与文档
评论
支持 Markdown