A01: Broken Access Control · 2025
La aplicación no hace cumplir correctamente qué puede leer, modificar o ejecutar cada identidad
Resumen
La aplicación no hace cumplir correctamente qué puede leer, modificar o ejecutar cada identidad. Incluye acceso a objetos ajenos, funciones administrativas y recursos internos.
Cómo funciona el ataque
Un usuario cambia el identificador de un objeto en la API; el servidor omite la autorización y devuelve datos de otra persona.
Ejemplo
Vulnerable · PseudocódigoGET /api/invoices/1043
Cookie: session=alice
return invoices.find(id)Corrección: Comprobar en el servidor que la factura pertenece al usuario de la sesión.
Prevención
- Denegar por defecto y verificar autorización en el servidor para cada operación.
- Centralizar reglas de acceso y comprobar propiedad o pertenencia del recurso.
- Probar controles con usuarios, roles y tenants distintos.
Linaje
- 2013 · A4: Insecure Direct Object References Se fusiona en Broken Access Control
- 2013 · A7: Missing Function Level Access Control Se fusiona en Broken Access Control
- 2017 · A5: Broken Access Control Sube al puesto 1 en 2021
- 2021 · A01: Broken Access Control Sube desde A5:2017
- 2021 · A10: Server-Side Request Forgery (SSRF) Nueva en 2021
- 2025 · A01: Broken Access Control Consolida SSRF y permanece en el puesto 1
- 2013:A4 → 2017:A5: IDOR se integra en Broken Access Control.
- 2013:A7 → 2017:A5: Missing Function Level Access Control se integra en Broken Access Control.
- 2017:A5 → 2021:A01: Broken Access Control sube del puesto 5 al 1.
- 2021:A01 → 2025:A01: Broken Access Control permanece en el puesto 1.
- 2021:A10 → 2025:A01: SSRF se consolida dentro de Broken Access Control.