mcpField
A
api-security-testing

api-security-testing

github.com/sickn33安全48.7k891 次安装1 天前更新
代码仓库

关于 api-security-testing

api-security-testing 是用于经授权的 REST 和 GraphQL API 安全评估的工作流技能。它将测试分为发现、身份验证、授权、输入验证、速率限制、GraphQL 和错误处理阶段,并设定明确的范围与确认要求。

主要功能

  1. 01将 API 测试组织为七个阶段
  2. 02覆盖身份验证与授权检查
  3. 03评估输入验证和速率限制
  4. 04包含 GraphQL 与错误处理测试
  5. 05规定范围、证据和安全门槛

适用场景

  1. 01规划经授权的 REST API 评估
  2. 02检查身份验证与访问控制
  3. 03在批准范围内评估 GraphQL 端点
  4. 04记录 API 发现和未测试区域

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill api-security-testing

安装后在 Claude Code 中输入/api-security-testing确认已加载。

详细介绍

⚠️ 仅限授权使用 此技能仅用于教育目的或经授权的安全评估。 使用此工具前,必须获得系统所有者明确的书面许可。 滥用此工具属于违法行为,且严格禁止。

强制确认关卡 在运行任何会探测、利用、更改目标、在目标上建立持久化、从目标提取数据或尝试访问目标凭据的命令之前:

  1. 请用户说明确切的目标 URL、IP、账户或资源。
  2. 请用户确认已获得书面授权,并说明许可范围。
  3. 展示确切的命令,并解释其预期效果。
  4. 等待用户在当前对话中明确确认。

未获得确认时,请保持只读,并仅提供防御性指导。优先使用沙箱、一次性 VM 或受控实验室。

API 安全测试工作流

概述

用于测试 REST 和 GraphQL API 安全性的专用工作流,涵盖身份验证、授权、速率限制、输入验证以及 API 特定漏洞。

何时使用此工作流

在以下情形中使用此工作流:

  • 测试 REST API 安全性
  • 评估 GraphQL 端点
  • 验证 API 身份验证
  • 测试 API 速率限制
  • 进行漏洞赏金 API 测试

范围和证据

选择获批的阶段和测试账户;不要自动分派所有列出的技能。对破坏性方法、注入、暴力破解、资源耗尽以及深层/复杂 GraphQL 请求使用自有测试夹具。测试前,设定请求数、并发数、字节数和持续时间上限、停止条件及清理方式。测试中不得涉及第三方系统和真实客户数据。仅凭公开的架构、缺少的标头和 HTTP 成功响应,不能证明存在授权漏洞或可利用的限制绕过。请记录未测试的端点和观察到的影响,不要想当然地勾选“已测试所有端点”。

工作流阶段

阶段 1:API 发现
调用的技能
  • api-fuzzing-bug-bounty - API 模糊测试
  • scanning-tools - API 扫描
操作
  1. 枚举端点
  2. 记录 API 方法
  3. 识别参数
  4. 映射数据流
  5. 查看文档
可复制粘贴的提示词
Use @api-fuzzing-bug-bounty to discover API endpoints
阶段 2:身份验证测试
调用的技能
  • broken-authentication - 身份验证测试
  • api-security-best-practices - API 身份验证
操作
  1. 测试 API 密钥验证
  2. 测试 JWT 令牌
  3. 测试 OAuth2 流程
  4. 测试令牌过期
  5. 测试刷新令牌
可复制粘贴的提示词
Use @broken-authentication to test API authentication
阶段 3:授权测试
调用的技能
  • idor-testing - IDOR 测试
操作
  1. 测试对象级授权
  2. 测试功能级授权
  3. 测试基于角色的访问控制
  4. 测试权限提升
  5. 测试多租户隔离
可复制粘贴的提示词
Use @idor-testing to test API authorization
阶段 4:输入验证
调用的技能
  • api-fuzzing-bug-bounty - API 模糊测试
  • sql-injection-testing - 注入测试
操作
  1. 测试参数验证
  2. 测试 SQL 注入
  3. 测试 NoSQL 注入
  4. 测试命令注入
  5. 测试 XXE 注入
可复制粘贴的提示词
Use @api-fuzzing-bug-bounty to fuzz API parameters
阶段 5:速率限制
调用的技能
  • api-security-best-practices - 速率限制
操作
  1. 测试速率限制标头
  2. 测试暴力破解防护
  3. 测试资源耗尽
  4. 测试绕过技术
  5. 记录限制
可复制粘贴的提示词
Use @api-security-best-practices to test rate limiting
阶段 6:GraphQL 测试
调用的技能
  • api-fuzzing-bug-bounty - GraphQL 模糊测试
操作
  1. 测试内省
  2. 测试查询深度
  3. 测试查询复杂度
  4. 测试批量查询
  5. 测试字段建议
可复制粘贴的提示词
Use @api-fuzzing-bug-bounty to test GraphQL security
阶段 7:错误处理
调用的技能
  • api-security-best-practices - 错误处理
操作
  1. 测试错误消息
  2. 检查信息泄露
  3. 测试堆栈跟踪
  4. 验证日志记录
  5. 记录发现
可复制粘贴的提示词
Use @api-security-best-practices to audit API error handling

API 安全检查清单

  • 身份验证正常运行
  • 已实施授权
  • 已验证输入
  • 已启用速率限制
  • 已清理错误信息
  • 已启用日志记录
  • 已配置 CORS
  • 已强制使用 HTTPS

质量门禁

  • 已测试所有端点
  • 已记录漏洞
  • 已提供修复方案
  • 已生成报告

相关工作流包

  • security-audit - 安全审计
  • web-security-testing - Web 安全
  • api-design-principles - API 契约设计

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 请勿将输出视为针对特定环境的验证、测试或专家审查的替代品。
  • 如果缺少必要输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown