A2-2017. ATAQUES A SISTEMAS DE AUTENTICACIÓN
Los ataques a sistemas de autenticación están reconocido como la 2ª vulnerabilidad Web más importante según OWASP. Aquí aprenderemos qué es, como funciona y como explotarlo.
Última actualización
Los ataques a sistemas de autenticación están reconocido como la 2ª vulnerabilidad Web más importante según OWASP. Aquí aprenderemos qué es, como funciona y como explotarlo.
Última actualización
Este artículo está copiado de Seguridad Ofensiva, en su artículo: OWASP Top 2 – Ataques en sistemas de autenticación
Los ataques a sistemas de autenticación se consideran como el segundo procedimiento más usado para vulnerar sitios Web empresariales.
La prevalencia de este tipo de ataque está muy extendida debido al diseño e implementación de la mayoría de los controles de identidad y acceso. La administración de sesiones es la base de los controles de autenticación y está presente en todas las aplicaciones.
Los atacantes pueden detectar este tipo de vulnerabilidad utilizando medios manuales y explotarlos utilizando herramientas automatizadas con listas de contraseñas y ataques de diccionario.
La mayoría de los ataques de autenticación se producen debido al uso continuo de contraseñas como único factor. Las políticas de rotación y los requisitos de complejidad en las contraseñas que no han sido bien diseñados son causantes de este tipo de vulnerabilidad, entre otras.
Al conectar un sitio web a OWASP-ZAP, ingresamos cualquier nombre de usuario y contraseña para obtener el método “POST” justo después de hacer clic en “Login”:
Esta es la configuración inicial para vulnerar el sistema de autenticación en la mayoría de las aplicaciones web. Luego, agregamos listas de palabras que incluyen nombres de usuario y contraseñas para ambos parámetros (USER y PASS):
Estamos listos para encontrar el nombre de usuario y la contraseña sin conocerlos de antemano:
OWASP-ZAP pudo identificar tres posibles combinaciones que se distinguen del resto que tienen una respuesta de tamaño diferente:
Probamos la primera combinación de nombre de usuario y contraseña “admin, P4ssw0rd” y obtenemos acceso a un sistema al cual no tenemos autorización de entrar.
Y el sistema de autenticación ha sido vulnerado.
Este es uno de los muchos ataques relacionados con sistemas de autenticación.
¿Ha notado que a veces ingresa su nombre de usuario y contraseña para realizar diferentes tareas en un sitio web; luego, cierra la página para volver a abrirla unos minutos más tarde y no le pide sus credenciales? Bueno, ese es un problema de configuración de tiempo de espera. Ahora, si realiza la misma tarea en un computador público, la próxima persona que se siente enfrente de ese computador podría abrir el sitio web y tener acceso a todos los recursos de la compañía conectados a ese sitio web.
Impresoras, servidores Tomcat, enrutadores, cortafuegos, sistemas Wi-Fi, etc. Este problema es especialmente peligroso cuando el sistema permite la ejecución remota de comandos en otros servidores como la aplicación Jenkins o ESET Antivirus por nombrar algunos.
¿Cuándo fue la última vez que se auditaron las credenciales en las aplicaciones de la empresa? ¿Conoce todas las aplicaciones que requieren autenticación en su sistema de producción? ¿Sabe si estas aplicaciones usan contraseñas débiles? Preguntamos al respecto porque hemos visto innumerables aplicaciones que solicitan contraseñas como 1234, 123456 o 654321 para un nombre de usuario predeterminado que generalmente es “Admin”.
Para aumentar la seguridad de un entorno de producción, esas contraseñas débiles deben cambiarse por otras de mayor complejidad.
La única razón por la cual los ataques de fuerza bruta tienen éxito es porque los administradores no establecen políticas de bloqueo. Por ejemplo, si un usuario no recuerda su contraseña y puede ejecutar infinitos intentos para entrar a su cuenta sin esta bloquearse, significa que hackers pueden usar esta misma configuración para tratar incontables nombres de usuarios y contraseñas hasta dar con la combinación correcta.
Este tipo de ataque puede ser aún mucho más complejo. Existen técnicas que incluyen la manipulación de identificadores de sesión, tokens y cookies que se pueden utilizar para generar un acceso no autorizado.
https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A2-Broken_Authentication.html
https://github.com/danielmiessler/SecLists/tree/master/Passwords