用途:对 API 端点进行安全漏洞测试,覆盖 REST、GraphQL、WebSocket 以及集成 LLM 的 API。
主要能力与攻击向量:GraphQL 方面包括内省、批处理攻击、嵌套查询 DoS、字段建议;REST API 方面包括 BOLA/IDOR、批量赋值、速率限制、认证绕过、版本控制;WebSocket 方面包括跨站劫持、消息篡改、认证缺陷;Web-LLM 方面包括通过 API 的提示注入、过度代理、数据外泄。
工作流:发现 API 端点与文档(Swagger、GraphQL schema);梳理认证与授权机制;按 API 类型选用相应技术测试;验证数据暴露与访问控制缺陷;用 HTTP 请求/响应日志留存证据。
大规模 API(离线语料/夹具驱动):面对 2000+ 路径的 Swagger、Postman 语料或 HAR 抓包,不要手工搭建覆盖机制。先摄取语料生成逐端点夹具:python3 tools/fixture_ingest.py <openapi|postman|har> -o fixtures.json,将每个操作规范化为请求模板(方法、填充路径参数的 URL、采样 body、id 类路径参数的 object_ref、安全要求),并剥离内置认证(由测试框架注入令牌)。再获取各角色会话(经认证会话获取,MFA/OTP/SRP 转为可复用令牌)存入令牌库。随后回放逐角色授权矩阵:python3 tools/auth_replay_harness.py --requests fixtures.json --tokens tokens.json [--proxy <vantage>],在每个角色(及跨租户)下回放每个端点,标记角色被授权访问本不应访问的对象/动作的 BOLA/BFLA,并为每个(端点 × 角色)记录 evidence_id。对白名单 API 通过已配置的 vantage 出口路由。协议特定授权:OData(odata-deep-authz.md)、Cognito(cognito-unauth-and-srp.md)、已认证 WebSocket(authenticated-per-role-authz.md)。批量任务可断点续跑(对 harness 结果做检查点),避免认证抖动导致整轮归零。应运行完整矩阵,使干净结果成为有证据的阴性结论,而非未测试面。
参考文档:reference/graphql*.md、reference/scenarios/rest/.md、scenarios/rest/odata-deep-authz.md、scenarios/rest/cognito-unauth-and-srp.md、reference/websockets.md、scenarios/websocket/authenticated-per-role-authz.md、reference/web-llm*.md。
限制:资料未提供收费、价格、平台支持范围及具体效果数据。