Aquí está el contenido de mi máquina vagabunda de este archivo en particular:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/us$
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
syslog:x:100:103::/home/syslog:/bin/false
¿Alguien podría explicarme por qué es malo si un malvado podría obtener este archivo de mi servidor de producción?
security
passwd-file
chico divertido
fuente
fuente
Respuestas:
El punto clave es que los Pentesters / white-hats / ethics hackers, así como el black-hat
/etc/passwd
como objetivoproof of concept
, como prueba de la posibilidad de obtener acceso a un sistema.Técnicamente
/etc/passwd
no es tan aterrador. En el pasado, solía almacenar datos privados, contraseñas obviamente, pero a partir de hoy debería preocuparse más/etc/shadow
: la mayoría de los sistemas Linux en la actualidad usan unshadow
conjunto de utilidades para mantener una contraseña codificada y salada/etc/shadow
, que a diferencia de/etc/passwd
no es el mundo -legible. (a menos que use elpwunconv
comando, que en realidad mueve las contraseñas hash de nuevo a `/ etc / passwd).La única información más o menos sensible son los nombres de usuario. Si tiene
sshd
otelnet
en el servidor y un nombre de usuario con contraseña débil, existe la posibilidad de un ataque de fuerza bruta.Por cierto, tu misma pregunta ya se ha hecho antes . Aquí me limité a repetir algunos de los conceptos mencionados allí.
Pequeña adición: esto es un poco exagerado, pero he notado que tiene
bash
como shell raíz. Ahora, supongamos que tiene un usuario en el sistema que tienebash
como caparazón, aún peor: ese usuario es sudoer. Ahora, si bash está desactualizado o sin parchear, un atacante podría tratar de explotar la vulnerabilidad Shellshock para robar datos o ejecutar una bomba tenedor que derribe su sistema temporalmente. Entonces sí, técnicamente/etc/passwd
no es un gran problema, pero le da al atacante una idea de parte de la información sobre qué intentarEdición adicional, 18/11/2016
Después de haber usado un servidor Ubuntu en Digital Ocean durante un tiempo, me llamó la atención que la mayoría de los ataques de fuerza bruta contra mi servidor se llevaron a cabo para el
root
usuario: el 99% de las entradas para la contraseña fallida/var/log/auth.log
fueron pararoot
./etc/password
, como mencioné antes, el atacante observa la lista de usuarios, y no solo los usuarios del sistema, sino también los usuarios humanos, lo que significa más lugares potenciales para el ataque. Recordemos que no todos los usuarios son conscientes de la seguridad y no siempre crean una contraseña segura, por lo que la apuesta de un atacante por error humano o exceso de confianza tiene una probabilidad bastante alta de ser un premio gordo.fuente
testuser1:x:1001:1001:,,,:/home/testuser:/bin/bash
. Después de ejecutarsudo usermod testuser1 -l testuser2 sudo usermod testuser1 -l testuser2
, la entrada tiene otro nombre de usuario, pero GID y UID son los mismos:testuser2:x:1001:1001:,,,:/home/testuser:/bin/bash
. Si la contraseña no se modifica, el atacante puede adivinar y aún así descifrar el sistema. Requerir que la contraseña caduque y se cambie de vez en cuando es un mejor enfoque, pero tampoco es a prueba de balas.Para iniciar sesión en una máquina, debe conocer tanto el nombre de usuario como la contraseña.
/etc/passwd
proporciona información sobre los usuarios que le brinda la mitad de la información que necesita y solía incluir un hash de su contraseña.Un hash es algo calculado a partir de su contraseña. Es difícil encontrar una contraseña de un hash pero no al revés. Si tiene ambos, puede intentar intentos de fuerza bruta para encontrar la contraseña fuera de línea y luego solo intente conectarse a la computadora una vez que la haya encontrado.
Hoy la seguridad se mejora porque los hashes se almacenan en un archivo diferente
/etc/shadow
que, de manera predeterminada, la mayoría de los usuarios no pueden leer.Pero, si tuviera acceso a ambos
/etc/passwd
y/etc/shadow
probablemente podría encontrar su contraseña usando un ataque de 'diccionario' de fuerza bruta. Como puedo hacer esto localmente en mi máquina, no notaría muchos intentos fallidos de encontrar su contraseña y solo necesitaría conectarme a su máquina nuevamente una vez que supiera la contraseña. Entonces soy libre de hacer lo que quiera.Hay más información aquí en Wikipedia
fuente