Hacking,  Tech

Ataques de diccionario

Cuando alguien busca métodos de auditar redes WiFi, indefectiblemente se encontrará con información sobre los ataques de diccionario. Son cientos de miles de sitios y videos en donde, un hacker experto, demuestra de forma práctica lo fácil que es vulnerar una red usando un diccionario. Lo cierto es que no hay tal. La única razón por la que a ellos les funciona, es porque antes de iniciar el show incluyeron la clave de la red en el archivo.

Hace poco vi en YouTube a un hacker que vulneraba su propia red en segundos. La contraseña estaba en las primeras filas del famoso diccionario rockyou.txt. El asunto es que revisé el diccionario y ese password no se encuentra en él. La persona que hizo el video agregó su contraseña al diccionario. Por supuesto que el ataque iba a funcionar. Esto es equivalente a pescar truchas en el supermercado y hacer un video demostrando lo fácil que es capturar salmónidos.

Antes de continuar debo aclarar que no es que los ataques de diccionario no funcionen. Lo que digo es que difícilmente pueden funcionar con los diccionarios que usamos porque, en su mayoría, son diccionarios hechos en otros idiomas. Si estoy auditando una red en Montevideo o en Lima, ¿qué mierdas hago con un diccionario en francés? Para demostrar mi punto audité mi propia red. El password de mi red es algo que significa algo para mí. Puede ser el nombre de mi perro y su fecha de nacimiento. Tal vez sea un string de números, símbolos y letras que me recuerdan algo. En fin, veamos qué ocurrió.

Ataques de diccionarioEl ataque se hizo con la suite Aircrack-ng. Cerré los procesos estorbosos con airmon-ng check kill; puse la tarjeta en modo monitor con airmon-ng start wlanX; probé la inyección de paquetes con aireplay-ng --test wlanX; escaneé el espectro con airodump-ng, se eligió la red (la mía) y obtuve el Handshake con aireplay-ng. Hasta aquí todo en orden.

Luego de verificar la integridad del Handshake, elegí el diccionario rockyou.txt, el mismo del video. El conteo de líneas hecho con wc -l rockyou.txt me arrojó que el archivo tiene 14.344.392 de posibles contraseñas. Lancé el ataque con aircrack-ng y esperé. Y adivinen… Nada. La contraseña no estaba en el diccionario. ¿14 millones de contraseñas y nada? ¿Qué pudo fallar? En el video del hacker experto la contraseña apareció en segundos. Dios, ¿por qué me haces esto?

Pero no me iba a rendir. Estaba decidido a «hackear» mi propia red para hacer un video que me catapultara a la fama. Esos $4 dólares anuales por publicidad de los anunciantes iban a ser míos. Entonces hice lo que todos hacen: descargué los diccionarios de SecLists. Con estos archivos le corrí 63.941.069 de nuevas contraseñas. Me hice viejo, Ucrania expulsó al invasor y América Latina dejó de elegir demagogos. Pero nada. La contraseña tampoco estaba ahí. En este punto había probado un poco más de 78 millones de contraseñas y nada. Cero. ¡Maldita sea! ¡El hacker de YouTube encontró el password en las primeras 10 líneas del diccionario!

Ataques de diccionarioPero no me iba a dar por vencido. ¡Eso nunca! Era momento de usar la artillería: el diccionario de CrackStation. Este diccionario es una barbaridad. Son 15 GB de contraseñas. ¿Usted se alcanza a imaginar lo que son 15 Gigas en texto plano? Le corrí el comando wc -l y me arrojó que tiene 1.212.356.398 líneas. Lo voy a escribir en letras para que lo pueda dimensionar: son más de mil doscientos millones de posibles contraseñas. Esto tenía que funcionar.

Como se aprecia en la imagen, el ataque tomó casi dos días. Se fue oscureciendo el cielo y brillaban las estrellas. El arpa tocó en lamento una tonada llanera. ¿Qué? El insomnio me pone a decir tonterías. Esa noche no dormí, me comí las uñas y parte de las falanges distales, acabé el café de la despensa y lloré en posición fetal.

¿Y qué creen? La contraseña no estaba ahí. Casi 1.300 millones de posibles contraseñas probadas  y no estaba. ¡Pero si en YouTube se veía muy fácil! Tal vez se deba a que YouTube es, más que todo, una plataforma de entretenimiento. O quizás debía buscar a otro experto. Y no fue difícil encontrarlo. Abundan. Pululan. En otro video, un hacker con hoddie recomendaba usar Crunch, un generador de palabras que viene instalado en Kali Linux. El asunto es que generar un diccionario con líneas de entre 8 y 63 caracteres, que contenga letras mayúsculas y minúsculas, números y símbolos pesa 16.368.577.009 GB, o lo que es lo mismo: 16 millones de Teras. Se necesitarían dieciseis millones de laptops domésticas para almacenar el diccionario. ¡Y yo solo tengo 3 laptops y 2 pendrives!

Si usáramos el diccionario de Crunch y la contraseña se encontrara en las últimas posiciones, revelarla tomaría 2.182.476.946 días o 5.979.388 de años. Yo no creo que pueda vivir tanto por más que coma verduras. ¿Y entonces? Al final la contraseña fue revelada con otro método que explicaré en una próxima entrada. Lo importante ahora es que dejen de creer todas las güevonadas que ven en cine, televisión e Internet. Las únicas redes que se pueden crackear en segundos son las WPS y de esas quedan pocas. Hasta la próxima.