Los codificadores conquistan la seguridad: Share & Learn Series - Autenticación
En este blog cubriremos uno de los problemas más comunes a los que se enfrentan las organizaciones que gestionan sitios web, o que permiten a los empleados acceder de forma remota a los recursos informáticos - que es prácticamente todo el mundo. Y sí, probablemente has adivinado que vamos a hablar de la autenticación.
Si un pirata informático puede simplemente entrar en un sistema como administrador con un nombre de usuario y una contraseña válidos, entonces no hay necesidad de desplegar técnicas avanzadas para luchar contra las defensas de la red. El sistema simplemente abre la puerta y deja entrar al atacante. Peor aún, si el atacante no hace nada demasiado extravagante, su presencia es casi imposible de detectar ya que la mayoría de las defensas simplemente lo verán como un usuario o administrador válido haciendo su trabajo.
La categoría de vulnerabilidades de autenticación es bastante amplia, pero vamos a repasar los problemas más comunes que tienden a introducirse accidentalmente en los procesos de inicio de sesión de los usuarios. Si se refuerzan estos agujeros, se puede eliminar la gran mayoría de los problemas de autenticación de su organización.
En este episodio, aprenderemos:
- Cómo se explotan algunas vulnerabilidades de autenticación comunes
- Por qué son tan peligrosos
- Qué políticas y técnicas se pueden utilizar para eliminar las vulnerabilidades de autenticación.
¿Cómo aprovechan los atacantes las vulnerabilidades de autenticación?
Hay bastantes vulnerabilidades de autenticación que pueden colarse en un sistema de autenticación, por lo que los hackers explotan cada una de ellas de forma un poco diferente. En primer lugar, vamos a repasar las vulnerabilidades más comunes y, a continuación, daremos ejemplos que demuestran cómo se pueden explotar un par de ellas.
Las vulnerabilidades de autenticación más comunes incluyen:
- Tener políticas de contraseñas débiles o inadecuadas,
- Permitir un número ilimitado de intentos de inicio de sesión,
- Proporcionar información a un atacante sobre los inicios de sesión fallidos,
- Envío de credenciales a través de canales inseguros,
- Contraseñas con hash débil,
- Y tener un proceso de recuperación de contraseñas inseguro.
Tener una política de contraseñas débil es probablemente la vulnerabilidad más común. Si se permite a los usuarios crear contraseñas sin restricciones, demasiados de ellos utilizarán contraseñas fáciles de adivinar. Todos los años, varias organizaciones de noticias informáticas publican una lista de las contraseñas más utilizadas, y "123456" y "password" están siempre entre las cinco primeras. Hay otras. A los administradores les gusta mucho usar "Dios". Es cierto que todas ellas son graciosas o fáciles de recordar, pero también muy fáciles de adivinar. Los piratas informáticos saben cuáles son las contraseñas más comunes y las prueban primero cuando intentan entrar en un sistema. Si se permite ese tipo de contraseñas en su organización, acabará siendo violada.
Una vulnerabilidad menos obvia, pero igualmente peligrosa, es la de devolver información a un usuario sobre un inicio de sesión fallido. Esto es malo porque si devuelve un mensaje cuando un nombre de usuario no existe y otro cuando un nombre de usuario existe pero la contraseña es mala, permite a los atacantes mapear usuarios válidos en un sistema y concentrarse en adivinar contraseñas sólo para esos nombres de usuario. Si esto se combina con la vulnerabilidad de autenticación que permite adivinar contraseñas de forma ilimitada, permitiría a los atacantes ejecutar ataques de diccionario contra cualquier usuario válido que hayan encontrado, lo que podría hacerles entrar en un sistema con bastante rapidez si la contraseña es fácil de adivinar.
¿Por qué son tan peligrosas las vulnerabilidades de autenticación?
Hay una historia clásica del Viejo Oeste americano sobre un campesino paranoico que instaló tres cerraduras en su puerta principal, tapió sus ventanas y durmió con muchas armas al alcance de la mano. Por la mañana lo encontraron muerto. Sus atacantes llegaron hasta él porque se olvidó de cerrar la puerta trasera. Las vulnerabilidades de autenticación son muy parecidas. Realmente no importa qué tipo de herramientas de monitorización o controles proactivos tenga usted o cuántos analistas expertos emplee si un atacante puede utilizar un nombre de usuario y una contraseña válidos para entrar en su red.
Una vez dentro, hay muy pocas restricciones sobre lo que el atacante puede hacer. Siempre y cuando actúen dentro de sus permisos de usuario, que pueden ser bastante amplios si han comprometido una cuenta de administrador, hay muy pocas posibilidades de que sean atrapados a tiempo para evitar problemas graves. Esto hace que la clase de vulnerabilidades de autenticación sea una de las más peligrosas de tener en cualquier sistema.
Eliminación de las vulnerabilidades de autenticación
Una de las mejores formas de eliminar las vulnerabilidades de autenticación de una red es contar con buenas políticas de contraseñas aplicadas globalmente. No sólo se debe restringir a los usuarios, incluso a los administradores, el uso de contraseñas como "contraseña", sino que se les debe obligar a añadir un nivel de complejidad que haga inviable que un atacante aplique un ataque del tipo diccionario o frases comunes. Puedes establecer tus propias reglas para la creación de contraseñas en función de la importancia del sistema que se está protegiendo. Si lo haces, será mucho más difícil para los atacantes adivinar o forzar las contraseñas.
También deberías restringir el número de intentos fallidos de inicio de sesión, de modo que si se introduce una contraseña incorrecta más de, por ejemplo, tres veces, el usuario quede bloqueado. El bloqueo puede ser temporal, ya que incluso unos minutos de retraso impedirán que continúen los ataques automáticos de diccionario. O puede ser permanente, a menos que la cuenta sea desbloqueada por un administrador. En cualquier caso, el personal de seguridad debe ser alertado cada vez que se produzca un bloqueo de este tipo para que pueda controlar la situación.
Otra buena forma de evitar que los atacantes obtengan información es elaborar un mensaje genérico cada vez que se introduzca un nombre de usuario o una contraseña incorrecta. Debe ser el mismo para ambos casos para que los hackers no sepan si han sido rechazados porque un usuario no existe o por tener una contraseña incorrecta.
Las vulnerabilidades de autenticación están entre las más comunes y peligrosas en la mayoría de los sistemas. Pero también son bastante fáciles de encontrar y eliminar.
Más información sobre las vulnerabilidades de autenticación
Para más información, puedes echar un vistazo a la hoja de trucos de autenticación de OWASP. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .
Enfréntese a una vulnerabilidad de autenticación en la plataforma Secure Code Warrior : [Comienza aquí]
Vamos a tratar uno de los problemas más comunes a los que se enfrentan las organizaciones que gestionan sitios web, o que permiten a los empleados acceder de forma remota a los recursos informáticos - que es prácticamente todo el mundo. Y sí, probablemente has adivinado que vamos a hablar de la autenticación.
Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónJaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.
En este blog cubriremos uno de los problemas más comunes a los que se enfrentan las organizaciones que gestionan sitios web, o que permiten a los empleados acceder de forma remota a los recursos informáticos - que es prácticamente todo el mundo. Y sí, probablemente has adivinado que vamos a hablar de la autenticación.
Si un pirata informático puede simplemente entrar en un sistema como administrador con un nombre de usuario y una contraseña válidos, entonces no hay necesidad de desplegar técnicas avanzadas para luchar contra las defensas de la red. El sistema simplemente abre la puerta y deja entrar al atacante. Peor aún, si el atacante no hace nada demasiado extravagante, su presencia es casi imposible de detectar ya que la mayoría de las defensas simplemente lo verán como un usuario o administrador válido haciendo su trabajo.
La categoría de vulnerabilidades de autenticación es bastante amplia, pero vamos a repasar los problemas más comunes que tienden a introducirse accidentalmente en los procesos de inicio de sesión de los usuarios. Si se refuerzan estos agujeros, se puede eliminar la gran mayoría de los problemas de autenticación de su organización.
En este episodio, aprenderemos:
- Cómo se explotan algunas vulnerabilidades de autenticación comunes
- Por qué son tan peligrosos
- Qué políticas y técnicas se pueden utilizar para eliminar las vulnerabilidades de autenticación.
¿Cómo aprovechan los atacantes las vulnerabilidades de autenticación?
Hay bastantes vulnerabilidades de autenticación que pueden colarse en un sistema de autenticación, por lo que los hackers explotan cada una de ellas de forma un poco diferente. En primer lugar, vamos a repasar las vulnerabilidades más comunes y, a continuación, daremos ejemplos que demuestran cómo se pueden explotar un par de ellas.
Las vulnerabilidades de autenticación más comunes incluyen:
- Tener políticas de contraseñas débiles o inadecuadas,
- Permitir un número ilimitado de intentos de inicio de sesión,
- Proporcionar información a un atacante sobre los inicios de sesión fallidos,
- Envío de credenciales a través de canales inseguros,
- Contraseñas con hash débil,
- Y tener un proceso de recuperación de contraseñas inseguro.
Tener una política de contraseñas débil es probablemente la vulnerabilidad más común. Si se permite a los usuarios crear contraseñas sin restricciones, demasiados de ellos utilizarán contraseñas fáciles de adivinar. Todos los años, varias organizaciones de noticias informáticas publican una lista de las contraseñas más utilizadas, y "123456" y "password" están siempre entre las cinco primeras. Hay otras. A los administradores les gusta mucho usar "Dios". Es cierto que todas ellas son graciosas o fáciles de recordar, pero también muy fáciles de adivinar. Los piratas informáticos saben cuáles son las contraseñas más comunes y las prueban primero cuando intentan entrar en un sistema. Si se permite ese tipo de contraseñas en su organización, acabará siendo violada.
Una vulnerabilidad menos obvia, pero igualmente peligrosa, es la de devolver información a un usuario sobre un inicio de sesión fallido. Esto es malo porque si devuelve un mensaje cuando un nombre de usuario no existe y otro cuando un nombre de usuario existe pero la contraseña es mala, permite a los atacantes mapear usuarios válidos en un sistema y concentrarse en adivinar contraseñas sólo para esos nombres de usuario. Si esto se combina con la vulnerabilidad de autenticación que permite adivinar contraseñas de forma ilimitada, permitiría a los atacantes ejecutar ataques de diccionario contra cualquier usuario válido que hayan encontrado, lo que podría hacerles entrar en un sistema con bastante rapidez si la contraseña es fácil de adivinar.
¿Por qué son tan peligrosas las vulnerabilidades de autenticación?
Hay una historia clásica del Viejo Oeste americano sobre un campesino paranoico que instaló tres cerraduras en su puerta principal, tapió sus ventanas y durmió con muchas armas al alcance de la mano. Por la mañana lo encontraron muerto. Sus atacantes llegaron hasta él porque se olvidó de cerrar la puerta trasera. Las vulnerabilidades de autenticación son muy parecidas. Realmente no importa qué tipo de herramientas de monitorización o controles proactivos tenga usted o cuántos analistas expertos emplee si un atacante puede utilizar un nombre de usuario y una contraseña válidos para entrar en su red.
Una vez dentro, hay muy pocas restricciones sobre lo que el atacante puede hacer. Siempre y cuando actúen dentro de sus permisos de usuario, que pueden ser bastante amplios si han comprometido una cuenta de administrador, hay muy pocas posibilidades de que sean atrapados a tiempo para evitar problemas graves. Esto hace que la clase de vulnerabilidades de autenticación sea una de las más peligrosas de tener en cualquier sistema.
Eliminación de las vulnerabilidades de autenticación
Una de las mejores formas de eliminar las vulnerabilidades de autenticación de una red es contar con buenas políticas de contraseñas aplicadas globalmente. No sólo se debe restringir a los usuarios, incluso a los administradores, el uso de contraseñas como "contraseña", sino que se les debe obligar a añadir un nivel de complejidad que haga inviable que un atacante aplique un ataque del tipo diccionario o frases comunes. Puedes establecer tus propias reglas para la creación de contraseñas en función de la importancia del sistema que se está protegiendo. Si lo haces, será mucho más difícil para los atacantes adivinar o forzar las contraseñas.
También deberías restringir el número de intentos fallidos de inicio de sesión, de modo que si se introduce una contraseña incorrecta más de, por ejemplo, tres veces, el usuario quede bloqueado. El bloqueo puede ser temporal, ya que incluso unos minutos de retraso impedirán que continúen los ataques automáticos de diccionario. O puede ser permanente, a menos que la cuenta sea desbloqueada por un administrador. En cualquier caso, el personal de seguridad debe ser alertado cada vez que se produzca un bloqueo de este tipo para que pueda controlar la situación.
Otra buena forma de evitar que los atacantes obtengan información es elaborar un mensaje genérico cada vez que se introduzca un nombre de usuario o una contraseña incorrecta. Debe ser el mismo para ambos casos para que los hackers no sepan si han sido rechazados porque un usuario no existe o por tener una contraseña incorrecta.
Las vulnerabilidades de autenticación están entre las más comunes y peligrosas en la mayoría de los sistemas. Pero también son bastante fáciles de encontrar y eliminar.
Más información sobre las vulnerabilidades de autenticación
Para más información, puedes echar un vistazo a la hoja de trucos de autenticación de OWASP. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .
Enfréntese a una vulnerabilidad de autenticación en la plataforma Secure Code Warrior : [Comienza aquí]
En este blog cubriremos uno de los problemas más comunes a los que se enfrentan las organizaciones que gestionan sitios web, o que permiten a los empleados acceder de forma remota a los recursos informáticos - que es prácticamente todo el mundo. Y sí, probablemente has adivinado que vamos a hablar de la autenticación.
Si un pirata informático puede simplemente entrar en un sistema como administrador con un nombre de usuario y una contraseña válidos, entonces no hay necesidad de desplegar técnicas avanzadas para luchar contra las defensas de la red. El sistema simplemente abre la puerta y deja entrar al atacante. Peor aún, si el atacante no hace nada demasiado extravagante, su presencia es casi imposible de detectar ya que la mayoría de las defensas simplemente lo verán como un usuario o administrador válido haciendo su trabajo.
La categoría de vulnerabilidades de autenticación es bastante amplia, pero vamos a repasar los problemas más comunes que tienden a introducirse accidentalmente en los procesos de inicio de sesión de los usuarios. Si se refuerzan estos agujeros, se puede eliminar la gran mayoría de los problemas de autenticación de su organización.
En este episodio, aprenderemos:
- Cómo se explotan algunas vulnerabilidades de autenticación comunes
- Por qué son tan peligrosos
- Qué políticas y técnicas se pueden utilizar para eliminar las vulnerabilidades de autenticación.
¿Cómo aprovechan los atacantes las vulnerabilidades de autenticación?
Hay bastantes vulnerabilidades de autenticación que pueden colarse en un sistema de autenticación, por lo que los hackers explotan cada una de ellas de forma un poco diferente. En primer lugar, vamos a repasar las vulnerabilidades más comunes y, a continuación, daremos ejemplos que demuestran cómo se pueden explotar un par de ellas.
Las vulnerabilidades de autenticación más comunes incluyen:
- Tener políticas de contraseñas débiles o inadecuadas,
- Permitir un número ilimitado de intentos de inicio de sesión,
- Proporcionar información a un atacante sobre los inicios de sesión fallidos,
- Envío de credenciales a través de canales inseguros,
- Contraseñas con hash débil,
- Y tener un proceso de recuperación de contraseñas inseguro.
Tener una política de contraseñas débil es probablemente la vulnerabilidad más común. Si se permite a los usuarios crear contraseñas sin restricciones, demasiados de ellos utilizarán contraseñas fáciles de adivinar. Todos los años, varias organizaciones de noticias informáticas publican una lista de las contraseñas más utilizadas, y "123456" y "password" están siempre entre las cinco primeras. Hay otras. A los administradores les gusta mucho usar "Dios". Es cierto que todas ellas son graciosas o fáciles de recordar, pero también muy fáciles de adivinar. Los piratas informáticos saben cuáles son las contraseñas más comunes y las prueban primero cuando intentan entrar en un sistema. Si se permite ese tipo de contraseñas en su organización, acabará siendo violada.
Una vulnerabilidad menos obvia, pero igualmente peligrosa, es la de devolver información a un usuario sobre un inicio de sesión fallido. Esto es malo porque si devuelve un mensaje cuando un nombre de usuario no existe y otro cuando un nombre de usuario existe pero la contraseña es mala, permite a los atacantes mapear usuarios válidos en un sistema y concentrarse en adivinar contraseñas sólo para esos nombres de usuario. Si esto se combina con la vulnerabilidad de autenticación que permite adivinar contraseñas de forma ilimitada, permitiría a los atacantes ejecutar ataques de diccionario contra cualquier usuario válido que hayan encontrado, lo que podría hacerles entrar en un sistema con bastante rapidez si la contraseña es fácil de adivinar.
¿Por qué son tan peligrosas las vulnerabilidades de autenticación?
Hay una historia clásica del Viejo Oeste americano sobre un campesino paranoico que instaló tres cerraduras en su puerta principal, tapió sus ventanas y durmió con muchas armas al alcance de la mano. Por la mañana lo encontraron muerto. Sus atacantes llegaron hasta él porque se olvidó de cerrar la puerta trasera. Las vulnerabilidades de autenticación son muy parecidas. Realmente no importa qué tipo de herramientas de monitorización o controles proactivos tenga usted o cuántos analistas expertos emplee si un atacante puede utilizar un nombre de usuario y una contraseña válidos para entrar en su red.
Una vez dentro, hay muy pocas restricciones sobre lo que el atacante puede hacer. Siempre y cuando actúen dentro de sus permisos de usuario, que pueden ser bastante amplios si han comprometido una cuenta de administrador, hay muy pocas posibilidades de que sean atrapados a tiempo para evitar problemas graves. Esto hace que la clase de vulnerabilidades de autenticación sea una de las más peligrosas de tener en cualquier sistema.
Eliminación de las vulnerabilidades de autenticación
Una de las mejores formas de eliminar las vulnerabilidades de autenticación de una red es contar con buenas políticas de contraseñas aplicadas globalmente. No sólo se debe restringir a los usuarios, incluso a los administradores, el uso de contraseñas como "contraseña", sino que se les debe obligar a añadir un nivel de complejidad que haga inviable que un atacante aplique un ataque del tipo diccionario o frases comunes. Puedes establecer tus propias reglas para la creación de contraseñas en función de la importancia del sistema que se está protegiendo. Si lo haces, será mucho más difícil para los atacantes adivinar o forzar las contraseñas.
También deberías restringir el número de intentos fallidos de inicio de sesión, de modo que si se introduce una contraseña incorrecta más de, por ejemplo, tres veces, el usuario quede bloqueado. El bloqueo puede ser temporal, ya que incluso unos minutos de retraso impedirán que continúen los ataques automáticos de diccionario. O puede ser permanente, a menos que la cuenta sea desbloqueada por un administrador. En cualquier caso, el personal de seguridad debe ser alertado cada vez que se produzca un bloqueo de este tipo para que pueda controlar la situación.
Otra buena forma de evitar que los atacantes obtengan información es elaborar un mensaje genérico cada vez que se introduzca un nombre de usuario o una contraseña incorrecta. Debe ser el mismo para ambos casos para que los hackers no sepan si han sido rechazados porque un usuario no existe o por tener una contraseña incorrecta.
Las vulnerabilidades de autenticación están entre las más comunes y peligrosas en la mayoría de los sistemas. Pero también son bastante fáciles de encontrar y eliminar.
Más información sobre las vulnerabilidades de autenticación
Para más información, puedes echar un vistazo a la hoja de trucos de autenticación de OWASP. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .
Enfréntese a una vulnerabilidad de autenticación en la plataforma Secure Code Warrior : [Comienza aquí]
Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Ver el informeReservar una demostraciónJaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.
En este blog cubriremos uno de los problemas más comunes a los que se enfrentan las organizaciones que gestionan sitios web, o que permiten a los empleados acceder de forma remota a los recursos informáticos - que es prácticamente todo el mundo. Y sí, probablemente has adivinado que vamos a hablar de la autenticación.
Si un pirata informático puede simplemente entrar en un sistema como administrador con un nombre de usuario y una contraseña válidos, entonces no hay necesidad de desplegar técnicas avanzadas para luchar contra las defensas de la red. El sistema simplemente abre la puerta y deja entrar al atacante. Peor aún, si el atacante no hace nada demasiado extravagante, su presencia es casi imposible de detectar ya que la mayoría de las defensas simplemente lo verán como un usuario o administrador válido haciendo su trabajo.
La categoría de vulnerabilidades de autenticación es bastante amplia, pero vamos a repasar los problemas más comunes que tienden a introducirse accidentalmente en los procesos de inicio de sesión de los usuarios. Si se refuerzan estos agujeros, se puede eliminar la gran mayoría de los problemas de autenticación de su organización.
En este episodio, aprenderemos:
- Cómo se explotan algunas vulnerabilidades de autenticación comunes
- Por qué son tan peligrosos
- Qué políticas y técnicas se pueden utilizar para eliminar las vulnerabilidades de autenticación.
¿Cómo aprovechan los atacantes las vulnerabilidades de autenticación?
Hay bastantes vulnerabilidades de autenticación que pueden colarse en un sistema de autenticación, por lo que los hackers explotan cada una de ellas de forma un poco diferente. En primer lugar, vamos a repasar las vulnerabilidades más comunes y, a continuación, daremos ejemplos que demuestran cómo se pueden explotar un par de ellas.
Las vulnerabilidades de autenticación más comunes incluyen:
- Tener políticas de contraseñas débiles o inadecuadas,
- Permitir un número ilimitado de intentos de inicio de sesión,
- Proporcionar información a un atacante sobre los inicios de sesión fallidos,
- Envío de credenciales a través de canales inseguros,
- Contraseñas con hash débil,
- Y tener un proceso de recuperación de contraseñas inseguro.
Tener una política de contraseñas débil es probablemente la vulnerabilidad más común. Si se permite a los usuarios crear contraseñas sin restricciones, demasiados de ellos utilizarán contraseñas fáciles de adivinar. Todos los años, varias organizaciones de noticias informáticas publican una lista de las contraseñas más utilizadas, y "123456" y "password" están siempre entre las cinco primeras. Hay otras. A los administradores les gusta mucho usar "Dios". Es cierto que todas ellas son graciosas o fáciles de recordar, pero también muy fáciles de adivinar. Los piratas informáticos saben cuáles son las contraseñas más comunes y las prueban primero cuando intentan entrar en un sistema. Si se permite ese tipo de contraseñas en su organización, acabará siendo violada.
Una vulnerabilidad menos obvia, pero igualmente peligrosa, es la de devolver información a un usuario sobre un inicio de sesión fallido. Esto es malo porque si devuelve un mensaje cuando un nombre de usuario no existe y otro cuando un nombre de usuario existe pero la contraseña es mala, permite a los atacantes mapear usuarios válidos en un sistema y concentrarse en adivinar contraseñas sólo para esos nombres de usuario. Si esto se combina con la vulnerabilidad de autenticación que permite adivinar contraseñas de forma ilimitada, permitiría a los atacantes ejecutar ataques de diccionario contra cualquier usuario válido que hayan encontrado, lo que podría hacerles entrar en un sistema con bastante rapidez si la contraseña es fácil de adivinar.
¿Por qué son tan peligrosas las vulnerabilidades de autenticación?
Hay una historia clásica del Viejo Oeste americano sobre un campesino paranoico que instaló tres cerraduras en su puerta principal, tapió sus ventanas y durmió con muchas armas al alcance de la mano. Por la mañana lo encontraron muerto. Sus atacantes llegaron hasta él porque se olvidó de cerrar la puerta trasera. Las vulnerabilidades de autenticación son muy parecidas. Realmente no importa qué tipo de herramientas de monitorización o controles proactivos tenga usted o cuántos analistas expertos emplee si un atacante puede utilizar un nombre de usuario y una contraseña válidos para entrar en su red.
Una vez dentro, hay muy pocas restricciones sobre lo que el atacante puede hacer. Siempre y cuando actúen dentro de sus permisos de usuario, que pueden ser bastante amplios si han comprometido una cuenta de administrador, hay muy pocas posibilidades de que sean atrapados a tiempo para evitar problemas graves. Esto hace que la clase de vulnerabilidades de autenticación sea una de las más peligrosas de tener en cualquier sistema.
Eliminación de las vulnerabilidades de autenticación
Una de las mejores formas de eliminar las vulnerabilidades de autenticación de una red es contar con buenas políticas de contraseñas aplicadas globalmente. No sólo se debe restringir a los usuarios, incluso a los administradores, el uso de contraseñas como "contraseña", sino que se les debe obligar a añadir un nivel de complejidad que haga inviable que un atacante aplique un ataque del tipo diccionario o frases comunes. Puedes establecer tus propias reglas para la creación de contraseñas en función de la importancia del sistema que se está protegiendo. Si lo haces, será mucho más difícil para los atacantes adivinar o forzar las contraseñas.
También deberías restringir el número de intentos fallidos de inicio de sesión, de modo que si se introduce una contraseña incorrecta más de, por ejemplo, tres veces, el usuario quede bloqueado. El bloqueo puede ser temporal, ya que incluso unos minutos de retraso impedirán que continúen los ataques automáticos de diccionario. O puede ser permanente, a menos que la cuenta sea desbloqueada por un administrador. En cualquier caso, el personal de seguridad debe ser alertado cada vez que se produzca un bloqueo de este tipo para que pueda controlar la situación.
Otra buena forma de evitar que los atacantes obtengan información es elaborar un mensaje genérico cada vez que se introduzca un nombre de usuario o una contraseña incorrecta. Debe ser el mismo para ambos casos para que los hackers no sepan si han sido rechazados porque un usuario no existe o por tener una contraseña incorrecta.
Las vulnerabilidades de autenticación están entre las más comunes y peligrosas en la mayoría de los sistemas. Pero también son bastante fáciles de encontrar y eliminar.
Más información sobre las vulnerabilidades de autenticación
Para más información, puedes echar un vistazo a la hoja de trucos de autenticación de OWASP. También puedes poner a prueba tus nuevos conocimientos defensivos con la demostración gratuita de la plataforma Secure Code Warrior , que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para saber más sobre cómo derrotar esta vulnerabilidad, y una galería de pícaros de otras amenazas, visite el blogSecure Code Warrior .
Enfréntese a una vulnerabilidad de autenticación en la plataforma Secure Code Warrior : [Comienza aquí]
Índice
Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónDescargarRecursos para empezar
Evaluación comparativa de las competencias en materia de seguridad: optimización del diseño seguro en la empresa
El movimiento Secure-by-Design es el futuro del desarrollo de software seguro. Conozca los elementos clave que las empresas deben tener en cuenta cuando piensan en una iniciativa Secure-by-Design.
DigitalOcean reduce su deuda de seguridad con Secure Code Warrior
El uso por parte de DigitalOcean de la formación Secure Code Warrior ha reducido significativamente la deuda de seguridad, permitiendo a los equipos centrarse más en la innovación y la productividad. La mejora de la seguridad ha reforzado la calidad de sus productos y su ventaja competitiva. De cara al futuro, SCW Trust Score les ayudará a seguir mejorando las prácticas de seguridad y a continuar impulsando la innovación.
Recursos para empezar
La puntuación de confianza revela el valor de las iniciativas de mejora de la seguridad mediante el diseño
Nuestra investigación ha demostrado que la formación en código seguro funciona. Trust Score, que utiliza un algoritmo basado en más de 20 millones de puntos de datos de aprendizaje procedentes del trabajo de más de 250 000 alumnos en más de 600 organizaciones, revela su eficacia a la hora de reducir las vulnerabilidades y cómo hacer que la iniciativa sea aún más eficaz.
Seguridad reactiva frente a seguridad preventiva: Prevenir es mejor que curar
La idea de introducir la seguridad preventiva en el código y los sistemas heredados al mismo tiempo que en las aplicaciones más recientes puede parecer desalentadora, pero un planteamiento basado en el diseño seguro, aplicado mediante la mejora de las competencias de los desarrolladores, puede aplicar las mejores prácticas de seguridad a esos sistemas. Es la mejor oportunidad que tienen muchas organizaciones de mejorar su seguridad.
Ventajas de la evaluación comparativa de las competencias de seguridad de los desarrolladores
La creciente atención que se presta al código seguro y a los principios del diseño seguro exige que los desarrolladores reciban formación en ciberseguridad desde el principio del proceso de desarrollo de software, con herramientas como Secure Code Warrior's Trust Score, que ayudan a medir y mejorar sus progresos.
Impulsando iniciativas de seguridad por diseño para empresas con éxito significativo
Nuestro último documento de investigación, Benchmarking Security Skills: Streamlining Secure-by-Design in the Enterprise, es el resultado de un análisis profundo de iniciativas reales de Secure-by-Design a nivel empresarial y de la derivación de enfoques de mejores prácticas basados en hallazgos basados en datos.