15 votos

OS X 10.9: ¿dónde se almacenan los hash de las contraseñas?

Creo que en versiones anteriores de OS X, la contraseña se almacenaba en el archivo /etc/shadow.

Sin embargo, este archivo no parece existir en las últimas versiones del sistema operativo, concretamente en OS X 10.9, que es la primera de las versiones del sistema operativo sin nombre de gato.

¿Alguien sabe dónde se almacenan los hash de las contraseñas en OS X Mavericks?

22voto

shsteimer Puntos 8749

A partir de Lion, OS X introdujo un archivo sombra por usuario que es un diccionario plist que contiene hashes de contraseñas y otras claves de tipo GID/UID/kerberos y directorio abierto.

Los archivos sombra se almacenan en el sistema de archivos en /var/db/dslocal/nodes/Default/users . Están en formato plist por lo que tendrá que utilizar el plutil para verlas o utilizar el comando defaults para extraer/escribir claves específicas si se desea. Sólo el root el usuario tiene acceso a los archivos.

Para ver el contenido de un archivo sombra de un usuario:

sudo plutil -p /var/db/dslocal/nodes/Default/users/<username>.plist

Para obtener el hash:

sudo defaults read /var/db/dslocal/nodes/Default/users/<username>.plist ShadowHashData|tr -dc 0-9a-f|xxd -r -p|plutil -convert xml1 - -o -

Dónde <username> en los ejemplos anteriores es el usuario para el que se busca el hash. Quieres el <data> que corresponde a la sección <key>entropy</key> en la salida del plist.

Para seguir intentando descifrar la contraseña ver este tutorial .

3 votos

Esto no me funciona: dice que ShadowHashData no es una propiedad válida en <username>.plist...

0 votos

@MarkWright ¿Qué versión de OS X? A mí me funciona muy bien en la 10.11.3. Estás usando LDAP para las cuentas o es una cuenta local?

0 votos

Estoy usando 10.9 en modo de usuario único.

3voto

Захар Joe Puntos 133

Quiero añadir a la respuesta aceptada, por si acaso alguien intenta conseguir los hashes de las contraseñas almacenadas en un servidor OS X en Open Directory. Para los usuarios de la red (OD) es necesario

sudo mkpassdb -dump

que le permitirá obtener una lista de usuarios y sus respectivos ID de ranura. Copie todo el ID de la ranura que comienza con 0x y emita

sudo mkpassdb -dump slot_id_that_you_retrieved

Verás varias entradas de compendio, entre las cuales *cmusaslsecretSMBNT es el hash de la contraseña NTLM y *cmusaslsecretDIGEST-MD5 es el hash MD5 normal. Haz con ellos lo que quieras, pero a mí me resultó más fácil enviarlos a https://hashkiller.co.uk/ntlm-decrypter.aspx que es un servicio gratuito de descifrado de hash en línea. Acepta tu hash y si aún no está en su base de datos empezará a trabajar en él. Vuelve una semana después y debería estar descifrado. Esto ha sido probado en OS X El Capitan y Mac OS Sierra. Puede que no veas los compendios si algunos métodos de autentificación han sido explícitamente desactivados en tu servidor, pero deberían estar ahí por defecto.

-2voto

lagsalot Puntos 218

3 votos

El enlace está roto. Ten en cuenta también que las respuestas con enlace sin explicación están mal vistas.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X