SuperAPI AI 工具集

api-security-testing

编程与开发

查看项目

更新于 10-16 01:17

技能介绍

用途:用于对 REST、GraphQL、gRPC 或 WebSocket API 开展安全测试,直连 API 而非仅通过界面操作。核心原则是界面只是客户端之一,攻击者直接与 API 交互,每个端点、字段和方法都需自行实施授权与限制。适用场景为网站或移动端背后暴露编程接口的应用;若应用是纯服务端渲染 HTML、无任何可调用 API,则判定为 N/A,报告“api-security-testing: N/A — no API surface”并停止。

主要能力:先获取接口契约,包括 OpenAPI/Swagger(/swagger、/openapi.json、/api-docs)、GraphQL introspection、gRPC reflection、Postman 集合以及代理抓取移动端流量,并对比文档端点与应用实际调用端点,关注未公开端点。随后按 OWASP API Top 10 检查:API1 BOLA 对象级授权,跨账号替换对象 ID;API2 身份认证缺陷;API3 BOPLA 属性级授权,读取或写入不应访问的字段;API4 无限制资源消耗;API5 BFLA 功能级授权,以普通用户调用管理操作;API6 业务流无限制访问;API7 SSRF;API8 错误配置;API9 资产清单不当;API10 不安全的第三方调用。GraphQL 侧重 introspection、批处理/别名绕过限速、查询深度与复杂度、字段级授权。检查原始 JSON 响应而非渲染页面,以发现过度数据暴露。

输出与限制:每个发现需给出端点/操作、方法、所用账号、原始请求与响应、对应 API Top 10 类别及影响。测试需在自有或已授权 API 上进行,状态性测试使用测试账号和非生产实例。资料未提供具体安装命令与代码示例。