El comando que delata la intención
Hay comandos que cambian de significado dependiendo de quién los ejecuta. passwd en manos de un administrador es rutina. En manos de un atacante recién autenticado, es una declaración: no vine a robar datos, vine a quedarme. La diferencia entre reconocimiento y persistencia cabe en tres comandos.
El uname y el id son reconocimiento de último segundo — confirmar que el servidor es Linux y que se tiene acceso root. Luego, directamente, passwd. Sin exploración, sin descargas, sin comandos de exfiltración. El guion es corto porque el objetivo es simple.
Por qué es más peligroso que instalar malware
El detalle técnico que lo hace difícil de detectar: passwd no escribe ningún fichero en rutas inusuales, no abre puertos de red, no crea procesos nuevos. Los escáneres de malware buscan artefactos — binarios sospechosos, entradas en crontab, servicios instalados. Un cambio de contraseña no deja ninguno de esos rastros.
- Bloqueo del propietario: si el cambio tiene éxito, el administrador legítimo pierde acceso por contraseña. Las claves SSH siguen funcionando — pero si el servidor solo tiene password auth, el propietario queda fuera.
- Persistencia sin artefactos: no hay fichero que escanear, no hay proceso que matar, no hay entrada de crontab que eliminar. La única huella es en
/etc/shadow, y solo si sabes buscarla. - Indicador de compromiso definitivo: encontrar la contraseña root cambiada sin que ningún administrador lo haya hecho no es ambiguo. Alguien estuvo allí.
Lo que el honeypot vio — y el atacante no
El honeypot acepta el passwd con normalidad: muestra el prompt de cambio, el atacante introduce la nueva contraseña, recibe confirmación. Todo parece funcionar.
El cambio queda registrado — pero no persiste en el sistema real. El honeypot devuelve confirmación al atacante; en la siguiente sesión, las credenciales originales siguen siendo válidas. La firma queda en el log, no en el sistema.
Detección
Las señales son claras. El problema es que requieren logging activo — la mayoría de servidores no alertan sobre ejecuciones de passwd por defecto.
- Alerta sobre
passwden sesiones SSH: ningún script legítimo de CI/CD ejecutapasswd. Si el comando aparece en logs de una sesión interactiva SSH, es una alerta de nivel alto. - Cubre también
chpasswdyusermod -p: un atacante con acceso a shell puede cambiar credenciales sin prompt interactivo:echo 'root:nueva' | chpasswdno genera el mismo patrón de sesión quepasswd. La única detección fiable es a nivel de sistema de ficheros — no de comportamiento de sesión. - Autenticación solo por clave: si
PasswordAuthentication noestá en/etc/ssh/sshd_config, cambiar la contraseña root no le da acceso adicional a nadie que no tenga ya la clave privada.
La única defensa que cubre todas las variantes — passwd, chpasswd, usermod -p — es monitorizar el fichero directamente. Dos líneas de auditd en Debian/Ubuntu:
Esta regla registra cualquier modificación del fichero de contraseñas independientemente del método empleado. No importa si el atacante usó passwd interactivo, chpasswd desde script, o usermod: si tocó /etc/shadow, auditd lo vio.
El comando passwd no deja binarios. No abre puertos. No instala servicios. Lo que deja es silencio — y el silencio, en ciberseguridad, es la señal más difícil de detectar. La diferencia entre un sistema comprometido y uno limpio cabe en un campo de /etc/shadow. Ese campo no tiene alarma por defecto. Ahora puede tenerla.
Datos recopilados con fines de investigación en ciberseguridad. Toda la información procede de actividad no solicitada registrada en infraestructura propia.
honeypot CipherSentry · 2026-06-26 a 2026-06-28