API2:2023 – Broken Authentication

 Broken Authentication ocurre cuando una API permite que un atacante se haga pasar por un usuario legítimo o tome control de sesiones/tokens por fallas en cómo se implementa la autenticación. No significa necesariamente “contraseñas débiles”, sino debilidades en el proceso completo: inicio de sesión, manejo de tokens, sesiones, expiración, revocación y validaciones asociadas.

Origen del problema

Este riesgo aparece con frecuencia en APIs reales por causas típicas:

  • Tokens mal gestionados: expiración excesiva, revocación inexistente, reutilización o validaciones incompletas.
  • Flujos de login y recuperación inseguros: controles débiles para intentos repetidos o verificación insuficiente del usuario.
  • Ausencia de protecciones básicas: límites de intentos, detección de abuso, bloqueos inteligentes o medidas anti-automatización (cuando corresponde).
  • Errores de implementación: inconsistencias entre gateway, microservicios y endpoints (un servicio valida bien y otro “confía”).
  • Secretos y credenciales expuestos: llaves, tokens o credenciales filtradas por malas prácticas operativas o configuración.

Ejemplo de escenario de ataque

Paso 1 – Contexto del sistema

Una aplicación móvil de banca utiliza una API para que los clientes consulten su saldo y movimientos.
Cuando el usuario inicia sesión, la API le entrega un token de acceso que se usa para todas las solicitudes posteriores.

Paso 2 – Acción general del atacante

Un atacante obtiene un token válido de un usuario (por ejemplo, porque la API no lo invalida correctamente o lo reutiliza por demasiado tiempo). La API no comprueba adecuadamente si ese token sigue siendo seguro ni si debe rechazarse.

Paso 3 – Resultado o impacto

El atacante usa ese token y la API lo acepta como si fuera el usuario legítimo, permitiéndole ver información financiera privada y realizar acciones en su nombre.

Impacto real si no se gestiona

  • Toma de cuentas (Account Takeover) con impacto directo en usuarios y operación.
  • Exposición de datos personales (direcciones, historial, contactos, facturación).
  • Fraude transaccional y abuso de beneficios/monederos/suscripciones.
  • Incidentes reputacionales: pérdida de confianza y fuga de clientes.
  • Costos de respuesta: soporte, reembolsos, análisis forense y remediación.

Conclusión

Cuando la autenticación falla, el atacante no “entra al sistema”: entra como alguien. Y ese matiz cambia todo, porque cualquier control posterior pierde valor si el sistema ya cree que el atacante es un usuario legítimo.


¿Quieres profundizar en el OWASP API Top 10:2023?

Domina los 10 riesgos más críticos de las APIs de forma práctica con mi curso OWASP API Top 10:2023, actualizado a la última versión.

Accede aqui al curso

Nos vemos en la siguiente entrada

Fernando Conislla