¿Qué significa estrella en el archivo passwd?

14

Tengo una computadora en la que necesito arrancar, pero las contraseñas parecen ser falsas. Además, no puedo montar el disco para escribir, y es un procesador de mips, así que no puedo pegarlo en otra máquina para ejecutarlo.

De todos modos, el archivo passwd tiene algunos usuarios que se ven así, con una estrella después del nombre de usuario. ¿eso significa contraseña en blanco o qué?

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
sysadm:*:0:0:System V Administration:/usr/admin:/bin/sh
diag:*:0:996:Hardware Diagnostics:/usr/diags:/bin/csh
daemon:*:1:1:daemons:/:/dev/null
bin:*:2:2:System Tools Owner:/bin:/dev/null
uucp:*:3:5:UUCP Owner:/usr/lib/uucp:/bin/csh
sys:*:4:0:System Activity Owner:/var/adm:/bin/sh
adm:*:5:3:Accounting Files Owner:/var/adm:/bin/sh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh
nuucp::10:10:Remote UUCP User:/var/spool/uucppublic:/usr/lib/uucp/uucico
auditor:*:11:0:Audit Activity Owner:/auditor:/bin/sh
dbadmin:*:12:0:Security Database Owner:/dbadmin:/bin/sh
rfindd:*:66:1:Rfind Daemon and Fsdump:/var/rfindd:/bin/sh
j0h
fuente
12
Tenga en cuenta que ha publicado hashes de contraseñas DES. Los hashes de contraseña de DES son bastante fáciles de romper hoy en día. No conecte esta computadora a una red hasta que haya cambiado las contraseñas.
Gilles 'SO- deja de ser malvado'
2
Yo recomendaría no conectar este equipo a la Internet pública en absoluto , para ser franco. Póngalo en una red cortafuegos el tiempo suficiente para extraer datos de él, claro, pero luego debería ser retirado. Si el sistema operativo es tan antiguo como parece, probablemente esté plagado de agujeros de seguridad desde el núcleo en adelante, por ejemplo, números de secuencia iniciales TCP predecibles .
zwol
La contraseña para el lpusuario es ridículamente débil. Y debido a que las contraseñas basadas en DES están limitadas a ASCII y solo pueden tener 8 caracteres, no obtienes más de 53 bits de entropía. Cambie a un hash más fuerte si puede y cambie las contraseñas.
kasperd
Agregar algunos números a mi comentario anterior: mi computadora portátil podría romper la lpcontraseña en 630 milisegundos. La rootcontraseña es mucho más fuerte. Dejé correr un ataque de fuerza bruta durante cinco horas antes de terminarlo. No rompió la rootcontraseña dentro de esas cinco horas. Pero, por supuesto, aún debe seguir la recomendación anterior y cambiar la contraseña.
kasperd
para el registro sabes esa historia de que la contraseña más popular es la contraseña? bueno contraseña1 no puede estar muy lejos. ridículamente débil de hecho.
hildred

Respuestas:

22

Tienes que marcar man passwd :

Si la contraseña cifrada se establece en un asterisco (*), el usuario no podrá iniciar sesión con login (1), pero aún puede iniciar sesión con rlogin (1), ejecutar procesos existentes e iniciar otros nuevos a través de rsh (1), cron (8), en (1), o filtros de correo, etc. Intentar bloquear una cuenta simplemente cambiando el campo de shell produce el mismo resultado y además permite el uso de su (1).

Por lo general, las cuentas con un *campo de contraseña no tienen una contraseña, por ejemplo: deshabilitada para iniciar sesión. Esto es diferente a la cuenta sin contraseña, lo que significa que el campo de contraseña estará vacío y que casi siempre es una mala práctica.

taliezin
fuente
13

Las cuentas con contraseñas son las cuentas con una pizca de galimatías de base64 en el segundo campo:

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh

Esta computadora parece estar usando el crypt(3)hash de contraseña tradicional basado en DES . Este hash es bastante débil para los estándares modernos; Si no puede obtener un inicio de sesión root de otra manera, probablemente pueda recuperar la contraseña mediante fuerza bruta, utilizando John the Ripper o un software similar. Además, técnicamente eso no es base64 sino una codificación más antigua y similar, pero probablemente no deba preocuparse por eso.

La distinción entre :*:y :!:mencionada en otras respuestas es demasiado nueva para ser relevante para su problema. En un sistema UNIX tan antiguo, solo hay tres cosas diferentes que pueden aparecer en el campo de contraseña:

alice::1001:1001:Alice Can Log In Without A Password:/home/alice:/bin/ksh
bob:WSy1W41d4D1Gw:1002:1002:Bob Must Supply A Password:/home/bob:/bin/ksh
carol:ANYTHING ELSE:1003:1003:Carol Cannot Log In At All:/home/carol:/bin/ksh

Si el contenido del campo de contraseña está vacío, puede iniciar sesión sin contraseña.

Si el contenido del campo es el crypthash válido de alguna contraseña, puede iniciar sesión con esa contraseña.

De lo contrario, no puede iniciar sesión como ese usuario. *es solo lo convencional: obviamente, visualmente no es un hash de contraseña válido. Probablemente fue elegido por quien escribió el passwdprograma.

(El punto de tener identificaciones de usuario en el archivo de contraseña que no pueden iniciar sesión es que aún pueden poseer archivos, aún pueden tener crontrabajos y los demonios pueden usar setuidpara asumir esa identidad. De hecho, es una buena práctica ejecutar todos los demonios (que no tiene que ejecutarse como root) bajo tales ID de usuario, de modo que tenga cierto nivel de seguridad de que solo el demonio se ejecuta bajo esa identidad).

(Las cuentas con /dev/nullen el campo de shell están bloqueadas contra el rootuso supara ejecutar programas con esa identidad de usuario, así como el inicio de sesión regular. Hoy en día es mucho más probable que vea /bin/falseo /sbin/nologinuse para ese propósito; sospecho que en este sistema este último sí lo hace). no existe y el primero es un script de shell).

(La contraseña para Bob es "bobpassw", encriptada usando el algoritmo anterior, pero en una máquina Linux moderna; puede que no sea lo que su computadora produciría para la misma contraseña y sal. Una de las razones por las que el algoritmo anterior no se considera bueno ya es que tiene un límite superior duro de 8 caracteres en una contraseña).

(Sé que el sistema es realmente antiguo porque está usando el hash de contraseña basado en DES, porque no está usando un archivo de sombra y porque el shell de root es /bin/kshmás que algo más nuevo y más ergonómico).

zwol
fuente
Pensé que la contraseña de Bob no era MUY carne del formulario.
Joshua
@Joshua lo arregló ahora :)
zwol
Si necesita arrancar en la máquina, ¿no sería más rápido arrancar en modo de recuperación o arrancar con un CD / DVD en vivo con USB y cambiar la contraseña a otra que usar John the Ripper?
YoMismo
@YoMismo Una computadora tan antigua (creo que es de principios de la década de 1990) puede no tener un modo de recuperación. Probablemente tiene la capacidad de arrancar desde algún tipo de medio extraíble, pero puede ser bastante difícil encontrar un CD o cinta de arranque o lo que sea. Un liveCD moderno definitivamente no va a funcionar.
zwol
@zwol Intentaría iniciar el sistema con una distribución real y hacer un chroot con su sistema anterior, lo más probable es passwdque no necesite haber montado --bind / dev / sys ....
YoMismo
8

Esto significa que está deshabilitado para el inicio de sesión directo. Es un usuario que se utiliza para ejecutar servicios o para ser utilizado para rlogin. Verifique https://en.wikipedia.org/wiki/Passwd#Password_file

Marco
fuente
Esta computadora es bastante vieja, no estaba seguro si los significados cambiaron con el tiempo.
j0h
@WouterVerhelst: está deshabilitado para iniciar sesión. No está deshabilitado para rlogin. Tienes que mirar la respuesta más de cerca.
Brian
Cambié mi respuesta. Espero que ahora sea más correcto para @WouterVerhelst.
Marco
3

Sobre su pregunta real, vea la respuesta de Taliezin (y acepte esa;)

Acerca de su otro problema: busque la cadena 8sh9JBUR0VYeQ en el disco para descubrir los bloques de disco en los que reside. Luego, coloque los bloques de disco en un archivo, reemplace esa cadena con un hash de contraseña conocido (la antigua cripta () uno - misma longitud) y vuelva a escribir los bloques de disco en la ubicación anterior, posiblemente haciendo una copia de seguridad completa del disco antes. Dado que este enfoque no cambia el tamaño del archivo, no es necesario actualizar los metadatos del sistema de archivos.

Bodo Thiesen
fuente