🔑 ¡El Arte de Hackear Contraseñas! 😎


Matamataos

The Anxious Generation
Noderador
Nodero
Noder
Muy buenas a todos Noders hoy hablaremos de Ataques de contraseñas, tipos de ataques, ejemplos, teoría, truquitos y consejos.

Para empezar ¿Qué es una contraseña?

Bueno la contraseñas se utilizan como método de autentificación individual ya sea para acceder al ordenador o a una aplicación.

Una colección de contraseñas se refiere a un diccionario o "wordlist" lista de palabras. Contraseñas con baja complejidad que son fáciles y comunes mayoritariamente recoletadas por "data breaches". Por ejemplo "password, 123456, 1111"

Contraseñas más usadas

¿Como de segura son las contraseñas?​


Eso depende de varios factores. Las contraseñas usualmente se guardan en archivos de sistema o bases de datos, y que estén seguras es esencial. Anteriormente se guardaban en texto plano (Sony en 2014 por ejemplo)

Ahora las contraseñas se guardan usando sistemas y varias técnicas con funciones hasheadas o encriptación de algoritmos para hacerlas mas seguras. Si un atacante accede al sistema, es complicado crakearlas.

TÉCNICAS​


Esta sección discutiremos el crackeo de contraseñas la terminologia y la perspectiva en ciberseguridad. Primero herramientas como "hashcat" o "John the Rippet"

El crackeo de contraseñas son tecnicos usadas para descubrir contraseñas que estan encriptadas o haseadas para un texto plano. Los atacantes obtienen el encriptado del ordenador comprometido y una vez obtenido lo crackean.

Se considera una tecnica tradicional. Primeramente el atacante debe ganar acceso en el ordenador y escalar privilegios. Una vez hecho debera pasarselo a su ordenador local. A la diferencia que el metodo de adivinar se puede utilizan protocolos online y servicios basados en diccionarios.

CONTRASEÑAS POR DEFECTO​


Antes de hacer un ataque, es muy rentable probar contraseñas por defecho, buscar en google sobre el creador del servicio o del mismo servicio, o switches, firewalls, routers, siempre te los dan con un default y mucha gente no lo cambia, siendo un sistema vulnerable.

Es una buena práctica utilizar un "admin:admin" o "admin:123456" Por ejemplo nos encontramos un Tomcat pues buscariamos sus contraseñas por defecto "tomcat:admin"

CONTRASEÑAS DÉBILES​


Los profesionales recolectan y generan contraseñas débiles combinando wordlist muuuuy grandes. Estas listas se generan en base a otras experiencias de pentesters.



CONTRASEÑAS LIKEADAS​

Datos sensibles como contraseñas o hashes se venden o se dan como resultado de una brecha de seguridad. Pueden ser publicas o privadas dependiendo de la disponibilidad del contenido, los atacantes normalmente extraen las contraseñas, y dumpean los hashes.


WORDLIST COMBINADAS​


Imagina que queremos mas de una wordlist. Esto es muy simple: (ESTO ES LINUX )

cat fichero1.txt fichero2.txt fichero3.txt > listacombinada.txt


Y dirás pero entonces hay duplicados, tranquilo:

sort listacombinada.txt | uniq -u > listalimpia.txt


WORDLISTS PERSONALIZADOS​

Personalizar listas de contraseñas es la mejor forma para incrementar las posibilidades de encontrar credenciales validas. Podemos crear listar personalizadas para una web o compañía, incluyendo emails o nombres de empleados, con herramientas como "Cewl" que se utiliza para extraer palabras o cosas importantes de una web.

cewl -w list.txt -d 5 -m5 http://www.nodo313.net

  • -w escribe el contenido del fichero que le hemos puestro
  • -m 5 busca palabras de no mas de 5 caracteres
  • -d 5 el nivel que queremos de ataque el básico es el 2
  • la url
Como resultado nos dara bastantes buenas wordlist con nombres localizaciones etc.

WORDLIST POR USUARIOS​


Buscar información por ejemplo de empleados enumerando es algo mu bueno.

Asumiendo por ejemplo el apellido, nombre, segundo nombre etc.

Hay una herramienta muy buena para todo esto:


git clone https://github.com/therodri2/username_generator.git
cd username_generator
python3 username_generator.py -w user.lst

Técnica de espacio de teclas​


Otra forma de crear wordlist es usando este tipo de tecnicas y utilizando la herramienta "crunch"

crunch -h
crunch 2 2 01234abcd -o crunch.txt


Crea una wordlist conteniendo todas las posibles combinaciones con 2 letras, incluyendo 0-4 a-d usando el argumento -o


Esto es rentable para cuando generamos largos textos y queremos especificar combinaciones, por ejemplo si quisieramos crear caracteres minimos y maximos de 0-9 y a-f

crunch 8 8 01234589abcdefABCDEF -o crunch.txt
crunch 6 6 -t pass%%

CUPP​


Cupp es una herramienta interactiva de python para crear wordlists, con nombre etc.

git clone https://github.com/Mebus/cupp.git
python 3 cupp.py
python3 cupp.py -i
python3 cupp.py -l
python3 cupp.py -a


ATAQUES OFFLINE​

ATAQUES POR DICCIONARIO​


EN este caso usaremos hascat y para dar un ejemplo utilizaremos el hash "f806fc5a2a0d5ba2471600758452799c"

1- Que tipo de hash es 2- Que wordlist vamos a usar o que tipo de ataque debo usar.

Para identificar el hash utilizaremos "hashid o hash-identifier" En este caso es md5 (si no lo tenemos lo instalamos con apt install)

hashcat -a 0 -m 0 f806fc5a2a0d5ba2471600758452799c /usr/share/wordlists/rockyou.txt

  • -a 0: Pone en modo diccionario
  • -m 0: Pone el modo hash crackeo md5 para mas info "hashcat -h"
hashcat -a 0 -m 0 F806FC5A2A0D5BA2471600758452799C /usr/share/wordlists/rockyou.txt --show
f806fc5a2a0d5ba2471600758452799c:rockyou

ATAQUES DE FUERZA BRUTA​

Este ataque es el mas usado para entrar en lugares o persnoal no autorizado.

hashcat --help


hascat -a 3 ?d?d?d?d --stdout

  • -a 3 : pone el modo de ataque a fuerza bruta
  • ?d?d?d? : Pone un digito en cada caso empezando de 0000 a 9999
  • --stdout: Nos printea el resultado en terminal

hashcat -a 3 -m 0 05A5CF06982BA7892ED2A6D38FE832D6 ?d?d?d?d
05a5cf06982ba7892ed2a6d38fe832d6:2021

ATAQUES BASADOS EN REGLAS (tengo que ser sincero este no lo llevo muy bien)​


Estos ataques se denominan hibridos. Se asume que el atacante tiene conocimiento de las politicas de contraseñas

Utilizaremos "haschat" o "John"

john --wordlist=/tmp/single-password-list.txt --rules=best64 --stdout | wc -l


  • --wordlist= especificamos la wordlis
  • --rules Especificamos las reglas a seguir
  • --stdout printeamos el terminal
  • | wc -l: cuenta cuantas lineas produce john

REGLAS PERSONALIZADAS​

sudo vi /etc/john/john.conf
[List.Rules:THM-Password-Attacks]
Az"[0-9]" ^[!@#$]

[List.Rules:THM-Password-Attacks] - Especifica el nombre de la regla
Az - Representa una letra del diccionario que usara
0-9 . diginos del 0-9
caracteres especiales

CONTRASEÑAS ONLINE​


HYDRA​

Hydra suportea un monton de servicios de red para atacar. Usando hydra, podemos hacer fuerza bruta en servicios en red como FTP, SMTP, SSH etc.

FTP​

Siguiendo con esto, un ataque de fuerza bruta a ftp sería:

hydra -l ftp -P pass.txt ftp:/10.10.x.x


  • l ftp usuario especificado, usamos -L para wordlist de usuarios
  • -P ruta
  • ftp://10.10 ip y protocolo

SMTP​

Similar a los servidores FTp,

hydra -l email@company.xyz -P /path/to/wordlist.txt smtp://10.10.x.x -v


SSH​

Igual que los otros

hydra -L users.lst -P /path/to/wordlist.txt ssh://10.10.x.x -v


HTTP PAGINAS DE LOGEO​

hydra -l admin -P 500-worst-passwords.txt 10.10.x.x http-get-form "/login-get/index.php:username=^USER^&password=^PASS^:S=logout.php" -f


  • -l usuario
  • -p ruta
  • 10.10 ip
  • http-get-form tipo de consulta
  • login-get/index.php ruta a lo que queremos
  • user= pararmetros donde queremos que meta la fuerza bruta
  • -f para parar cuando encuentre la valida.
Tenemos mas herramientas para aprender:

  • Medusa
  • Ncrack

ATAQUE DE PULVERICACIÓN DE CONTRASEÑA​


Son técnicas efectivas para identificar credenciales validas. Esta tecnica se utiliza para servicios y autentificacion de sistemas online como SSH,SMB,RDP,SMTP,Outlook etc.

Especificando usuario intentando contraseñas predecibles. Mientras que estos ataques prueban con muchos usuarios con contraseñas comunes.
 

4rra

Miembro muy activo
Noderador
Nodero
Noder
Not bad, imagin oque es copy y paste de tus apuntes o algo asi... Te recomiendo que comprimas un poco el numero de herramientas -> john,hydra,hashcat y poco más. A fin de cuentas esto fuera de ctfs va a ser jodido a no ser que tengas unas graficas de la hostia y a día de hoy con el nivel de contraseñas que te piden que ya no te da ni para imaginar ps tu dirás
 

neeti

Type Shit
Noderador
Nodero
Noder
Si mi contraseña es penedemonodiabolico4000 cuanto tardarías en crackearla

GIF by reactionseditor
 

neeti

Type Shit
Noderador
Nodero
Noder
JAJJAJA ya cabron pero intuyo que la gente que ha hecho esto alguna vez sabe que en real world esto se hace poco....
No lo se bro porque nunca lo hice, solo alguna vez lo típico de intentar petar la pass del wifi de tu vecino jajajjsjs
 
  • Hahaha
Reacciones : 4rra

4444rrrr

Apaleador de jovenlandeses profesional.
Burgués de Nodo
Noderador
Nodero
Noder
Buen post crack! Un buen likazo pa’ ti.