Autorización de Funciones Rota
Endpoints admin o privilegiados accesibles a usuarios regulares — la falta de checks de roles permite escalación de privilegios a funciones administrativas.
Cómo Funciona
Esta vulnerabilidad ocurre cuando endpoints de API que solo deberían ser accesibles para admins o roles específicos no verifican el rol del usuario. Usuarios regulares pueden acceder a funciones admin simplemente llamando al endpoint directamente. Patrones comunes incluyen rutas admin que solo verifican si el usuario está autenticado (no su rol), endpoints admin ocultos que dependen de oscuridad, o checks de roles inconsistentes donde algunas rutas admin están protegidas pero otras no.
// Admin endpoint — only checks authentication, not role
app.delete('/api/admin/users/:id', auth, async (req, res) => {
await User.deleteOne({ _id: req.params.id });
res.json({ success: true });
});// Admin endpoint — checks both auth and role
app.delete('/api/admin/users/:id', auth, requireRole('admin'),
async (req, res) => {
await User.deleteOne({ _id: req.params.id });
res.json({ success: true });
}
);Ejemplo Real
En 2019, una vulnerabilidad en la API de una aerolínea importante permitía a cualquier usuario autenticado acceder a endpoints admin para gestionar vuelos y manifiestos de pasajeros. Los endpoints requerían autenticación pero no verificaban roles.
Cómo Prevenirlo
- Implementa control de acceso basado en roles (RBAC) como middleware
- Aplica checks de roles consistentemente en TODOS los endpoints admin
- Usa una capa de autorización centralizada, no checks por ruta
- Audita regularmente endpoints admin por autorización adecuada
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.
Autenticación Rota (API)
highLos 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.
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.