¿Cómo los atacantes abusan del cacheo de sudo para elevar privilegios?

Este artículo explica de forma clara y profunda una técnica muy utilizada para escalación de privilegios en sistemas Linux/macOS: el uso indebido del mecanismo de caché de sudo. Ideal para administradores de sistemas, profesionales de seguridad y entusiastas de TI.

 ¿Qué es el sudo caching y por qué importa?

  • Sudo permite ejecutar comandos con privilegios elevados (p. ej., como root), manteniendo un registro de auditoría. Mitre Att&ck
  • Usa dos configuraciones clave:
    • timestamp_timeout: tiempo en minutos antes de volver a pedir la contraseña.
    • tty_tickets: controla que el timeout aplica por terminal (TTY).
  • El sistema crea un archivo de marca temporal (/var/db/sudo) para saber cuándo volver a solicitar la contraseña

* Dato curioso:
Algunos malware manipulan estas configuraciones para automatizar comandos privilegiados sin pedir contraseña, incluso entre distintas sesiones TTY

¿Quieres reforzar la seguridad sudo en tu infraestructura?

Revisa tu configuración hoy.

Cómo lo usan los atacantes: casos prácticos disruptivos

  • Deshabilitar tty_tickets: aplican

echo 'Defaults !tty_tickets' >> /etc/sudoers

killall Terminal

Esto permite que el sudo cache se valide en todas las terminales, simplificando ataques automatizados.

  • Entradas sin contraseña (NOPASSWD): agregan líneas como

user ALL=(ALL) NOPASSWD: ALL

en /etc/sudoers para evadir por completo el prompt de contraseña. Malware como Dok lo ha hecho en macOS.

Riesgos tácticos: qué habilita esta técnica

  • Permite escalar privilegiadamente sin credenciales.
  • Facilita automatización maliciosa y persistencia.
  • Erosiona el principio de mínimos privilegios.
  • Se usa en ataques sofisticados con herramientas como Cobalt Strike, Dok, Proton.

¿Quieres reforzar la seguridad sudo en tu infraestructura?

Revisa tu configuración hoy.

5. Mitigaciones robustas: configuración defensiva enfática

ConfiguraciónAcción recomendada
tty_ticketsAsegurar que esté habilitado (por defecto en macOS Sierra+) 
timestamp_timeoutAjustarlo a 0 para pedir contraseña cada vez
Archivoetc/sudoersEvitar entradas NOPASSWD, editar con visudo y permisos estrictos

Detección y monitoreo: vigilando desde adentro

  • Comandos sudo sospechosos: vigilar uso irregular del comando sudo.
  • Modificación del archivo sudoers: auditar cambios en /etc/sudoers
  • Procesos y metadatos anómalos: registro de procesos con diferencia entre ID real y efectivo (auditd)
  • Splunk detecta específicamente:
    • Entradas NOPASSWD sospechosas en sudoers
    • Uso de doas.conf o ejecución del comando doas
      Splunk

Suscríbete a Nuestro Blog: Mantente actualizado con las últimas noticias y consejos en ciberseguridad. Suscríbete ahora.