O que Claude-BugHunter faz?
Caça vulnerabilidades de segurança em APIs — mass assignment, prototype pollution e HTTP verb tampering.
Mass assignment: envie {is_admin:true, role:admin, verified:true} em endpoints de perfil/conta/reset — o servidor aplica cegamente.
JWT: falsificação de assinatura/criptografia (alg:none, key confusion, kid/jku) é tratada pelo skill hunt-jwt-crypto; este skill cobre apenas manipulação não criptográfica de JWT.
Prototype pollution: injeção de __proto__ em merge JSON (Object.assign, lodash _.merge) — protótipo poluído alcança sink (RCE em Node, XSS em navegador).
HTTP verb tampering: teste métodos HTTP alternativos (PUT, PATCH, DELETE) em endpoints que deveriam aceitar apenas GET/POST.
Como usar no Claude Code / Cursor / Codex
Invoque este skill com um prompt como:
Use BugHunter para:
- Listar todos os endpoints vulneráveis a mass assignment
- Testar prototype pollution nos endpoints de merge JSON
- Verificar verb tampering nos endpoints /api/...
Técnicas incluídas
-
Mass assignment:
- Testar campos:
is_admin,role,verified,balance,permissions - Payloads:
POST /api/profile { "name": "test", "is_admin": true }
- Testar campos:
-
Prototype pollution (Node.js):
- Injeção via cabeçalho
Content-Type: application/json - Payload:
{ "__proto__": { "isAdmin": true } } - Alvos: endpoints que usam
JSON.parse()+Object.assign()
- Injeção via cabeçalho
-
HTTP verb tampering:
- Envie
PUT,PATCH,DELETEpara endpoints GET-only - Verifique status 200/201/204 em vez de 405/404
- Envie
Limitações
- Não inclui ataques criptográficos JWT (
alg:none,kidinjection) — use o skillhunt-jwt-cryptopara isso. - Não testa injeção SQL ou XSS refletido.
- Depende de endpoints que usam bibliotecas vulneráveis (lodash < 4.17.11, Object.assign sem sanitização).