api-security SKILL.md skillA
api-security from coco-research/coco is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add coco-research/coco/api-security@git:20260914.480426ePins git:20260914.480426e in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- coco-research/coco
- Path
systems/reverse-skill/skills/api-security/SKILL.md- Versions recorded
- 1
- Latest version
- git:20260914.480426e, committed Sep 14, 2026
- Size
- 4,987 bytes
- Repository stars
- 827
- License
- a license file GitHub does not identify
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# API 安全测试
## 适用场景
- REST API 安全测试(OpenAPI/Swagger 驱动或盲测)
- GraphQL 安全审计(内省、批查询、别名过载)
- WebSocket 安全测试
- JWT / OAuth 2.0 认证测试
- BOLA/IDOR/BFLA 授权漏洞检测
- API 限速绕过与 DoS 测试
## 10 阶段测试流程
### Phase 1: API 发现与侦察
```text
主动发现:
□ Vespasian: 无头浏览器爬取 → 自动生成 OpenAPI 3.0 / GraphQL SDL 规范
□ Entropy --discover: 从 robots.txt + JS 文件提取端点
□ Kiterunner / ffuf: 爆破未文档化的端点路径
□ 检查常见路径: /swagger.json, /openapi.json, /graphql, /api-docs
GraphQL 内省(三级尝试):
1. 标准内省查询
2. 精简查询(绕过 WAF 全量封禁)
3. 仅查 __schema { types { name } }(最小探测)
```
### Phase 2: 认证测试
```text
JWT 分析(jwt_tool / Burp):
□ alg:none 攻击: 修改头部为 "alg":"none",清空签名
□ 密钥混淆: RS256 公钥 → HS256 对称密钥
□ 弱 HMAC 密钥爆破: jwt_tool -C -d wordlist.txt
□ 过期/声明篡改: 修改 exp/iat/sub/role 声明
□ kid 注入: ../../etc/passwd → HMAC 签名绕过
OAuth 2.0:
□ redirect_uri 操控 → 授权码泄漏
□ CSRF via state 参数缺失
□ Token 在 Referer 头泄漏
□ PKCE 缺失检测
GraphQL 认证:
□ mutation 通过 GET 请求绕过认证(CSRF)
□ 批查询认证绕过
```
### Phase 3: 授权测试(BOLA/IDOR/BFLA)
```text
BOLA(对象级授权绕过):
□ 遍历数字 ID: /user/1 → /user/2 → /user/3
□ 遍历 UUID
□ 遍历用户名/邮箱
□ Burp Autorize: 双会话重放对比
BFLA(功能级授权绕过):
□ 普通用户执行管理员 API
□ HTTP 方法切换: GET → PUT → PATCH → DELETE
□ API 版本降级: /v2/admin → /v1/admin
…Read the whole file at its exact version.
How to install
mdr add coco-research/coco/api-security@sha256:c7023888be3caa37The line at the top of this page pins the label git:20260914.480426e, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_v6fne7o6nobbvnjh)
2 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 1 version of this file, committed on Sep 14, 2026.
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (4987 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
coco-research/coco · 827 stars · license a license file GitHub does not identify · pushed 2026-10-20 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_v6fne7o6nobbvnjh GET https://markdownregistry.com/api/v1/resolve?ref=coco-research/coco/api-security GET https://markdownregistry.com/api/v1/blob/c7023888be3caa370a87b5716ddef96d61898901c90081259150f0c4f9aa2513
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from coco-research/coco
Every file in coco-research/coco