[SOLUCIONADO] Hash de contraseñas en Kali.

  • 6 Respuestas
  • 424 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

This topic contains a post which is marked as Best Answer. Press here if you would like to see it.

Desconectado MathCommander

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    13.33%
  • Reputación 0
    • Ver Perfil

[SOLUCIONADO] Hash de contraseñas en Kali.

  • en: Agosto 02, 2020, 03:49:02 pm
Hola. Mi duda es bastante sencilla, ¿Como puedo averiguar la función hash que utiliza mi distribución de linux para hashear contraseñas? En el fichero /etc/shadow aparece la contraseña asociada a mi usuario pero hasheada y me gustaría saber que hash está utilizando mi distribución, que es Kali Linux 2020.1.

He probado a hashear mi contraseña original (la que meto para iniciar sesión) mediante QuickHash con varias funciones de hash distintas y ninguna me devuelve el hash que aparece en el fichero /etc/shadow.

Gracias, un saludo.
« Última modificación: Agosto 05, 2020, 12:42:15 am por DtxdF »

Desconectado WHK

  • *
  • Underc0der
  • Mensajes: 118
  • Actividad:
    53.33%
  • Reputación 9
  • The Hacktivism is not a crime
    • Yahoo Instant Messenger - yan_uniko_102
    • Ver Perfil
    • WHK

Re:Hash de contraseñas en Kali.

  • en: Agosto 02, 2020, 05:32:31 pm
Kali está basado en ubuntu asi que realmente no utiliza shadow, usa shadow2. Dale un vistazo a este artículo, explica muy bien sobre como detectar el tipo de hashing: You are not allowed to view links. Register or Login

Citar
    $1$ is MD5
    $2a$ is Blowfish
    $2y$ is Blowfish
    $5$ is SHA-256
    $6$ is SHA-512

En el caso de Kali debiera utilizar SHA-512. Lo puedes sacar con:

Código: You are not allowed to view links. Register or Login
$ sudo cat /etc/shadow- | grep usuario
 Saludos.
« Última modificación: Agosto 02, 2020, 05:34:53 pm por WHK »

Desconectado MathCommander

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    13.33%
  • Reputación 0
    • Ver Perfil

Re:Hash de contraseñas en Kali.

  • en: Agosto 02, 2020, 06:33:06 pm
Gracias por el artículo, soluciona mi duda con respecto a saber que hash se ha utilizado. En efecto el primer hash que probé fue SHA-512, y aun así no coincidían el que obtenía de manera manual y el que aparecía en /etc/passwd. Para mostrarte un caso concreto he cambiado mi contraseña a holahola.

Si voy al fichero /etc/passwd el campo destinado a almacenar la contraseña contiene lo siguiente

$6$.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0

lo cuál indicaría que se ha utilizado SHA-512 para hashear la contraseña holahola y que el hash de la contraseña es

.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0

Sin embargo si meto la contraseña holahola en QuickHash para calcular su hash SHA-512 el resultado que obtengo es

8984264870D10BD7D1456AFA517587BCB9D538F537F5ED9A89118AA02BA61E821F908DBA588C61D4F798734737CBDA3577649B528BEB9FEA600CC2DCB8A2502D

Es fácil ver que no coinciden, ni siquiera en longitud. ¿En qué me estoy equivocando?

Gracias, un saludo.
« Última modificación: Agosto 02, 2020, 06:36:32 pm por MathCommander »

Marked as best answer by MathCommander en Agosto 04, 2020, 11:22:21 pm

Desconectado DtxdF

  • *
  • Moderator
  • Mensajes: 781
  • Actividad:
    80%
  • Reputación 16
  • Eres un auto y tienes dos opciones: Parar o Seguir
    • Ver Perfil
    • Mi repositorio de Github donde encontraras herramientas para tu trabajo.
    • Email

Re:Hash de contraseñas en Kali.

  • en: Agosto 02, 2020, 07:28:06 pm
Puedes usar la función 'crypt(...)'...

Según el manual (man 3 crypt):

Citar
crypt () es la función de cifrado de contraseña. Se basa en el algoritmo estándar de cifrado de datos con variaciones destinadas (entre otras cosas) a desalentar el uso de implementaciones de hardware de una búsqueda clave.

salt significa:

Citar
salt es una cadena de dos caracteres elegida del conjunto [ a - zA - Z0 - 9. / ]. Esta cadena se utiliza para perturbar el algoritmo en 4096 formas diferentes.

En base a ello, y para facilitar las cosas, puedes usar crypt(...) directamente en Python:

Código: Python
  1. import crypt
  2.  
  3. # SHA512
  4. type = '6'
  5. # El «salt»
  6. salt = '.63oZj8Hf87vZAnT'
  7. # La cadena a hashear
  8. word = 'holahola'
  9.  
  10. print(crypt.crypt(word, '$%s$%s$' % (type, salt)))

El resultado sería:

Código: Bash
  1. python3 script.py
  2. $6$.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0

La razón por la que no te generaba igual es que se usaba directamente la función sha512 sin derivaciones. Para ilustrar mejor lo que digo:

Código: Python
  1. import hashlib
  2.  
  3. string = b'holahola'
  4.  
  5. print(hashlib.sha512(string).hexdigest())

El resultado sería:

Código: Bash
  1. python3 script.py
  2. 8984264870d10bd7d1456afa517587bcb9d538f537f5ed9a89118aa02ba61e821f908dba588c61d4f798734737cbda3577649b528beb9fea600cc2dcb8a2502d

Te podría interesar:

*- es.wikipedia.org/wiki/Secure_Hash_Algorithm
*- docs.python.org/3/library/hashlib.html
*- docs.python.org/3/library/crypt.html


~ DtxdF
Los seres humanos son robots, cuyo combustible es el afanado dinero.

Desconectado MathCommander

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    13.33%
  • Reputación 0
    • Ver Perfil

Re:Hash de contraseñas en Kali.

  • en: Agosto 04, 2020, 04:53:37 pm
Vale, comprendo entonces por qué no me cuadran ambos resultados. Sin embargo, teniendo en cuenta lo que acabas de decir, me surgen dos dudas más:

1. Has dicho que el salt está compuesto de dos caracteres, ¿Por qué luego en el ejemplo utilizas un salt = '.63oZj8Hf87vZAnT'? Ese salt tiene más de 2 caracteres.

2. ¿Cómo has sabido cuál era el salt utilizado para producir el hash correcto? Podría haber sido cualquier otro salt distinto.

Gracias, un saludo.

Desconectado DtxdF

  • *
  • Moderator
  • Mensajes: 781
  • Actividad:
    80%
  • Reputación 16
  • Eres un auto y tienes dos opciones: Parar o Seguir
    • Ver Perfil
    • Mi repositorio de Github donde encontraras herramientas para tu trabajo.
    • Email

Re:Hash de contraseñas en Kali.

  • en: Agosto 04, 2020, 06:11:13 pm
@You are not allowed to view links. Register or Login

No amigo, nunca dije que podrían ser dos caracteres, cité el manual de crypt(...) según las partes de interés. Como por ejemplo esta:

Citar
salt es una cadena de dos caracteres elegida del conjunto [a- zA-Z0-9./]. Esta cadena se utiliza para perturbar el algoritmo en 4096 formas diferentes.

Lo que significa que se pueden usar caracteres en el salt que estén en el rango de la a a la z (incluyendo mayúsculas) y números a partir del 1 al 9 sumando los caracteres . (punto), / (barra diagonal).

Puede leerlo usando el comando: man 3 crypt

Como lo menciona nuestro compañero @You are not allowed to view links. Register or Login en los tipos de hashing en el fichero que está leyendo, puede ver que su hash es el tipo '6' que corresponde a la función SHA-512, sin embargo crypt(...) hace mucho más que eso, entre ello están las derivaciones, entre otras cosas.

Mire lo que está en negrita: $6$.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0

Amarillo: La función que se usó
Rojo: El salt
Verde: El hash

~ DtxdF
Los seres humanos son robots, cuyo combustible es el afanado dinero.

Desconectado MathCommander

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    13.33%
  • Reputación 0
    • Ver Perfil

Re:Hash de contraseñas en Kali.

  • en: Agosto 04, 2020, 10:21:24 pm
Cierto! No me había dado cuenta de que el salt venía en la linea correspondiente del passwd. Ya si que me ha quedado claro.

Muchas gracias a todos por vuestras respuestas. Un saludo!

 

[SOLUCIONADO] Multiuploader de imagenes con mysql, hosting de imagenes con mysql

Iniciado por graphixx

Respuestas: 4
Vistas: 14758
Último mensaje Marzo 26, 2013, 05:42:58 pm
por Xt3mP
[SOLUCIONADO] ¿Como publicar un software como software libre?

Iniciado por FuriosoJack

Respuestas: 2
Vistas: 12413
Último mensaje Mayo 23, 2017, 07:24:22 am
por HATI
[SOLUCIONADO] Linux Mint, errores, errores y mas errores...

Iniciado por n1sendev

Respuestas: 12
Vistas: 18689
Último mensaje Noviembre 22, 2017, 06:50:55 am
por RuidosoBSD
[SOLUCIONADO] Ayuda urgente con Virus "Virus.Win32Sality"

Iniciado por Napsters

Respuestas: 6
Vistas: 17921
Último mensaje Junio 11, 2012, 03:38:18 am
por Satyricon
[SOLUCIONADO] Problem al instalar Windows "cualquier windows"

Iniciado por Made

Respuestas: 7
Vistas: 9441
Último mensaje Septiembre 03, 2012, 04:53:08 pm
por Made