Sin garantía de acceso hacks en aplicaciones web y cómo prevenirlos

Muchos sitios web requieren que los usuarios iniciar sesión antes de que puedan hacer cualquier cosa con la aplicación. Sorprendentemente, estos pueden ser de gran ayuda para los piratas informáticos. Estos mecanismos de acceso a menudo no manejan los ID de usuario o contraseñas incorrectas con gracia. A menudo divulgar demasiada información que un atacante puede utilizar para recoger los identificadores de usuario y contraseñas válidas.

Para la prueba de mecanismos de acceso sin garantía, vaya a la aplicación e inicia sesión

  • El uso de un ID de usuario válido con una contraseña válida

  • El uso de un ID de usuario válido con una contraseña no válida

  • El uso de un ID de usuario válido y la contraseña no válido

Después de introducir esta información, la aplicación web será probablemente responderá con un mensaje similar a Su ID de usuario no es válida o Su contraseña es inválida. La aplicación web puede devolver un mensaje de error genérico, como por ejemplo Su ID de usuario y una contraseña no son válidos y, al mismo tiempo, devolver diferentes códigos de error en la URL para los ID de usuario no válidas y no válidas las contraseñas.

En cualquiera de los casos, se trata de una mala noticia porque la aplicación que está diciendo no sólo qué parámetro no es válido, sino también cuál es el válido. Esto significa que los atacantes maliciosos saben ahora una contraseña de usuario o bien - su carga de trabajo se ha reducido a la mitad! Si conocen el nombre de usuario, simplemente puede escribir un script para automatizar el proceso de violación de contraseñas, y viceversa.

También debe tomar su prueba de acceso al siguiente nivel mediante el uso de una herramienta web de inicio de sesión de craqueo, tales como Bruto. Bruto es una herramienta muy simple que se puede utilizar para romper HTTP y mecanismos de autenticación basados ​​en formularios mediante el uso de ambos diccionarios y ataques de fuerza bruta.

Al igual que con cualquier tipo de prueba contraseña, esto puede ser una tarea larga y ardua, y soportar el riesgo de bloquear a las cuentas de usuario. Proceda con precaución.

Una alternativa - y mejor mantenido - herramienta para el craqueo de contraseñas web es THC-Hydra.

La mayoría de los escáneres de vulnerabilidades web comerciales tienen basados ​​en diccionarios decente crackers de contraseñas web, pero no pueden hacer verdadera prueba de fuerza bruta como Bruto lata. Su éxito de violación de contraseñas depende de sus listas de diccionario altamente. Aquí hay algunos sitios populares que albergan archivos de diccionarios y otras listas de palabras Varios:

Puede que no necesite una herramienta para descifrar contraseñas en absoluto, porque muchos sistemas de front-end web, tales como los sistemas de gestión de almacenamiento y sistemas de vídeo y de control de acceso físico IP, simplemente tienen las contraseñas de los que salió de ellos. Estas contraseñas por defecto son por lo general “contraseña”, “admin”, o nada en absoluto. Algunos incluso las contraseñas se incrustan justo en el código fuente de la página de inicio de sesión.

Puede aplicar las siguientes medidas para evitar que la gente de atacar a los sistemas de acceso débiles en sus aplicaciones web:

  • Cualquier error de inicio de sesión que se devuelven al usuario final deben ser lo más genérico posible, diciendo algo similar a Su ID de usuario y una contraseña no son válidos.

  • La aplicación nunca debe devolver códigos de error en el URL que diferenciar entre un ID de usuario válido y una contraseña no válida.

    Si se debe devolver un mensaje de URL, la aplicación debe mantener lo más genérica posible. He aquí un ejemplo:

    your_web_app.com/login.cgi?success=false

    Este mensaje URL podría no ser conveniente para el usuario, sino que ayuda a ocultar el mecanismo y las acciones detrás de las escenas de la atacante.

  • CAPTCHA de usar (también reCAPTCHA) o formas de la conexión web para ayudar a prevenir los intentos de descifrado de contraseñas.

  • Emplear un mecanismo de bloqueo de intrusos en su servidor web o dentro de sus aplicaciones web para bloquear las cuentas de usuario después de 10-15 intentos de conexión fallidos. Esta tarea puede ser manejado a través de seguimiento de sesión o por medio de una aplicación web de terceros firewall complemento.

  • Comprobar y cambiar las contraseñas por defecto proveedor para algo que es fácil de recordar pero difícil de descifrar.

Artículos Relacionados