Autenticación Rota (API)
Los mecanismos de autenticación de la API son débiles o están mal implementados — JWT sin validación adecuada, tokens fuera de cookies httpOnly o sin expiración.
Cómo Funciona
Los fallos de autenticación de API incluyen no validar firmas JWT, aceptar tokens expirados, usar algoritmos de firma débiles, exponer tokens en URLs, no tener rate limiting en endpoints de auth, y no usar cookies httpOnly. Los atacantes explotan esto forjando tokens, haciendo brute force de credenciales o robando tokens por XSS. Las APIs son especialmente vulnerables porque están diseñadas para acceso programático, facilitando ataques automatizados.
// JWT verification without algorithm check
const decoded = jwt.verify(token, SECRET);
// Accepts any algorithm, including 'none'
// Token in URL
app.get('/api/data?token=eyJhbG...');// JWT verification with strict algorithm
const decoded = jwt.verify(token, SECRET, {
algorithms: ['HS256'],
maxAge: '1h'
});
// Token from httpOnly cookie only
const token = req.cookies.auth_token;Ejemplo Real
En 2015, una vulnerabilidad crítica en la librería npm jsonwebtoken permitía a atacantes bypasear verificación JWT usando el algoritmo 'none'. Cualquier app que no restringiera algoritmos explícitamente era vulnerable a bypass de autenticación.
Cómo Prevenirlo
- Siempre especifica algoritmos JWT permitidos explícitamente
- Configura expiración de tokens y valídala en cada request
- Usa cookies httpOnly y secure en vez de headers Authorization cuando sea posible
- Implementa rate limiting en endpoints de autenticación
Tecnologías Afectadas
Data Hogo detecta esta vulnerabilidad automáticamente.
Escanea Tu Repo GratisVulnerabilidades Relacionadas
Broken Object Level Authorization (BOLA)
highLos endpoints de API no verifican que el usuario que hace el request es dueño del recurso al que accede — permitiendo a atacantes acceder a datos de otros usuarios cambiando IDs.
Autorización de Propiedades de Objeto Rota
mediumLa API permite a usuarios leer o modificar propiedades a las que no deberían tener acceso — mass assignment, exposición excesiva de datos o falta de control de acceso a nivel de campo.
Consumo de Recursos Sin Restricción
mediumEndpoints de API sin rate limiting, paginación o límites de recursos — permitiendo a atacantes agotar recursos del servidor, generar costos o extraer datasets grandes.
Autorización de Funciones Rota
highEndpoints admin o privilegiados accesibles a usuarios regulares — la falta de checks de roles permite escalación de privilegios a funciones administrativas.