Riesgo A2 en OWASP - Pérdida de autenticación y gestión de sesiones

Author
By Darío Rivera
Posted on 2021-11-29 in OWASP

En nuestro post Qué es OWASP y por qué todo desarrollador debería conocerlo vimos una introducción a OWASP y por qué es tan importante en el desarrollo de aplicaciones web. Dentro del proyecto TOP TEN, vamos a ahondar un poco en cada una de los diez riesgos de seguridad más críticos en aplicaciones web. Hoy es el turno del Riesgo A2 - Pérdida de autenticación y gestión de sesiones.

Definición

Este riesgo se refiere al manejo de la información de sesión y autenticación por parte de la aplicación web. Todos los usuarios, contraseñas e identificadores de sesión deben estar debidamente protegidos.

Ejemplos

- Un inicio de sesión que puede ser atacado con fuerza bruta mediante un diccionario de datos.
- Un login que puede ser omitido mediante inyección SQL.
- Un robo de identificador de sesión mediante un sniffer.

Prevención

- Implementar una autenticación multifactor como por ejemplo un OTP (One time password).
- No usar contraseñas por defecto en aplicaciones (Ej: admin, password, 123456, ...)
- Implementar políticas recomendadas de contraseñas que se ajusten a la guía NIST.
- Asegurar mecanismos seguros de adminstración de credenciales como por ejemplo los que permiten recuperar la contraseña.
- Limitar el tiempo de respuesta de intentos fallidos de autenticación. Registrar cada intento fallido y alertar a los administradores ante un posible ataque de fuerza bruta.


Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.