security-auditlisted
Install: claude install-skill cristiancorreau/forge
# Skill: security-audit
Checklist de seguridad para endpoints de API y módulos que manejan autenticación,
autorización o datos sensibles. Agnóstico al stack.
Triggers: /security-audit, "auditar seguridad", "revisar endpoints", "security check",
"vulnerabilidades", "es seguro", "revisar auth".
---
## Cuándo usar este skill
- Al implementar nuevos endpoints de API
- Al modificar lógica de autenticación o autorización
- Antes de mergear cualquier PR que toque rutas protegidas
- Cuando el security-auditor lo solicita como parte de un review
---
## Checklist por endpoint
### 1. Autenticación — ¿quién sos?
```
✓ El token/sesión se verifica ANTES de procesar el request
✓ Si no hay token válido → 401 inmediato, sin procesar nada
✓ La verificación está en CADA método del handler (GET, POST, PUT, DELETE)
— no solo en el primero que se implementó
✗ NUNCA saltear auth porque "es solo GET" o "es público por diseño" sin confirmarlo
✗ NUNCA confiar en headers que el cliente puede modificar (X-User-Id, X-Role)
```
Patrón genérico:
```typescript
// Verificar antes de cualquier lógica
const session = await getSession(request);
if (!session) return Response.json({ error: 'No autenticado' }, { status: 401 });
```
### 2. Autorización — ¿podés hacer esto?
```
✓ Verificar que el usuario tiene el ROL requerido para la operación
✓ Verificar que el usuario tiene ACCESO al recurso específico (no solo al tipo)
✓ Las operaciones de escritura requieren más verificación que las de lectura
``