Password cracking

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

En criptoanálisis y seguridad informática, el descifrado de contraseñas es el proceso de recuperación de contraseñas que se han almacenado en/o un [sistema [equipo]]. El propósito de descifrado de contraseñas puede ser ayudar a un usuario a recuperar alguna contraseña olvidada (instalando una contraseña totalmente nueva), para obtener acceso no autorizado a un sistema, o como una medida preventiva por los administradores del sistema para buscar contraseñas fácilmente manipulables.

Tiempo necesario para las búsquedas de contraseñas[editar]

El tiempo para descifrar una contraseña está relacionado con la fuerza de bits, que es una medida de la información entropía de la contraseña y los detalles de cómo se almacena la contraseña. La mayoría de los métodos de obtención son ilegales y requieren de una computadora para producir muchas posibles contraseñas, cada una de las cuales está marcada. Un ejemplo es fuerza bruta agrietamiento, en el que un equipo intenta todas las claves posibles o contraseñas hasta que lo consiga. Los métodos más comunes de descifrado de contraseñas son, ataque de diccionarios, patrón de cheques, lista de palabras de sustitución, etc.

La capacidad para descifrar contraseñas utilizando programas para las computadoras, también es una opción, el número de posibles contraseñas por segundo que se puede comprobar es mayor. Si un hash de la contraseña de destino está disponible para el atacante, este número puede ser bastante grande. Si no es así, la tasa depende de los límites de software de autenticación, de la frecuencia con que una contraseña pueda ser juzgada, ya sea por las demoras, de CAPTCHA , o cierres patronales forzados después de algún número de intentos fallidos.

Las computadoras de escritorio comunes pueden probar más de cien millones de contraseñas por segundo utilizando herramientas que se ejecutan en una CPU de propósito general y miles de millones de contraseñas por segundo utilizando las contraseñas basada sen la GPU . Una contraseña de ocho caracteres seleccionada por el usuario con números, mayúsculas, minúsculas y símbolos, alcanza una fuerza estimada de 30 bits, de acuerdo con el NIST. 30 bits es sólo mil millones de permutaciones y que tomaría un promedio de 16 minutos para el crack. Cuando las computadoras de escritorio normal se combinan con un esfuerzo de agrietamiento, como se puede hacer con botnets, las capacidades de craqueo se extienden considerablemente. En el año 2002, distributed.net encontró con éxito, una clave de 64 bits RC5 en cuatro años, en un ejercicio que incluyó más de 300.000 equipos diferentes en distintos momentos, y que generó en promedio más de 12 mil millones de claves por segundo. Los procesadores de Gráficos pueden acelerar el descifrado de contraseñas en un factor de 50 a 100 sobre las computadoras de propósito general. A partir del 2011, los productos comerciales disponibles afirman la posibilidad de probar hasta 2,800,000,000 contraseñas por segundo en un equipo de escritorio estándar con un procesador de gráficos de gama alta.

En 1998, el Electronic Frontier Foundation (FEP) construyó una cookie de contraseñas dedicada usando ASICs, en comparación con las CPU de propósito general. Su, EFF DES Cracker, rompió clave DES de 56 bits en 56 horas, la maquina prueba mas de 90 mil millones de claves por segundo. En 2010, el Georgia Tech Research Institute, desarrolló un método para usar GPGPU para descifrar contraseñas, dar con una longitud mínima de contraseñas de 12 caracteres.

Fácil de recordar, facil de adivinar[editar]

Una contraseña que sea fácil de recordar es generalmente fácil de adivinar. Las contraseñas que son difíciles de recordar puede reducirá la seguridad de un sistema, debido a que los usuarios podrían tener que escribir o electrónicamente almacenar la contraseña, los usuarios tendrán que hacer el restablecimiento de contraseñas con frecuencia y los usuarios tienen más probabilidades de volver a utilizar la misma contraseña. Los requisitos más estrictos para seguridad de las contraseñas es,"Tener una mezcla de letras y dígitos en mayúsculas y minúsculas" o "cambiar mensualmente".

Incidentes[editar]

El 16 de julio de 1998, el Centro de Coordinación CERT informó de un incidente en el que un atacante había encontrado 186.126 contraseñas encriptadas. En el momento en que fueron descubiertos, ya habían agrietado 47.642 contraseñas. En diciembre de 2009, una grave violación de la contraseña RockYou.com, Sitio web que llevó a la liberación de 32 millones de contraseñas. El atacante filtró la lista completa de los 32 millones de contraseñas (sin ninguna otra información de identificación) a internet. Las contraseñas se almacenan en texto claro en la base de datos y se extrajeron a través de una vulnerabilidad de inyección SQL.

En junio de 2011, la OTAN (Organización del Tratado del Atlántico Norte) experimentó un fallo de seguridad que llevó a la publicación de los nombres y apellidos, nombres de usuario y contraseñas de más de 11.000 usuarios registrados de su librería electrónica. Los datos fueron filtrados como parte de la Operación AntiSec, un movimiento que incluye a Anonymous.


Prevención[editar]

El mejor método para prevenir que alguien agriete las contraseñas es asegurar que los atacantes no puedan acceder hasta el hash de la contraseña. Por ejemplo, en el Unix sistema operativo, hash de contraseñas se almacenan inicialmente en un archivo de acceso público / etc / passwd. En Unix moderno (y similares) sistemas, por otro lado, se almacenan en el archivo / etc / shadow, que es accesible sólo por medio de los programas que se ejecutan con privilegios mejorados (es decir, los privilegios de "sistema") . Esto hace que sea más difícil para un usuario malicioso obtener las contraseñas con algoritmo hash en primera instancia. Desafortunadamente, muchos protocolos de red común transmiten las contraseñas en texto plano o utilizan esquemas de desafío/respuesta débiles.

Sistemas modernos de Unix han reemplazado su tradicional Data Encryption Standard. Función hash de contraseñas basado en Cripta (C) con métodos más fuertes como bcrypt y scrypt. Otros sistemas también han comenzado a adoptar estos métodos.

Muchos hashes utilizados para almacenar contraseñas, tales como MD5 y Secure Hash Algorithm, están diseñados para el cálculo rápido e implementación en hardware. Como resultado, son ineficaces en la prevención de agrietamiento contraseña, especialmente con métodos como Tabla de arco iris. El uso de algoritmos de estiramiento como PBKDF2, para formar los hashes de contraseñas puede reducir significativamente la velocidad a la que las contraseñas se pueden probar.

Software[editar]

Hay muchas herramientas de software para descifrar contraseñas, pero los más populares son Caín (software), John the Ripper, Hashcat, Hydra (software ), DaveGrohl (software) y ElcomSoft.

Enlaces externos[editar]