Secretos olvidados
El sysadmin de la Fábrica de Galletas Crumiro está de vacaciones y ha dejado el panel de despliegue protegido por una contraseña que nadie conoce. Pero quien tiene prisa deja huellas: busca en el historial de comandos y en los archivos del servicio, y entra en el panel.
Laboratorio 2 de 5 de la ruta Privilege Escalation. Si te atascas tienes 3 pistas, de la más vaga a la más precisa: cuestan 0, 50 y 150 XP.
Qué aprendes
Los objetivos se completan solos mientras trabajas en el terminal; cada uno vale puntos de experiencia:
- Leer el historial de comandos (100 XP)
- Buscar "password" en los archivos del servicio (150 XP)
- Entrar en el panel de despliegue con la credencial correcta (200 XP)
Temas: privesc, secrets, history, audit.
Los comandos que usarás
El terminal es simulado y entiende unos cuarenta comandos de Linux. En este laboratorio te servirán sobre todo estos:
history: muestra el historial de los comandos escritos: cuenta quién hizo qué, a veces con contraseñas escritas en la línea de comandos.grep: busca las líneas que contienen una palabra, incluso en carpetas enteras con -r. Es la herramienta principal para analizar texto y registros.cat: muestra el contenido de un archivo: la forma más directa de leer configuraciones, notas y registros.curl: hace peticiones HTTP desde el terminal y muestra la respuesta en bruto del servidor, cabeceras incluidas.
El entorno simulado
Trabajas en una shell de Linux simulada, en la carpeta personal del usuario runner: archivos y carpetas inventados, ningún objetivo en red.
Además de la carpeta personal hay un sistema simulado completo, con archivos de configuración, registros, usuarios y permisos que examinar.
En la máquina también funcionan servicios locales:
- Web (HTTP): un servidor web con páginas, API o paneles de gestión: la parte más expuesta de casi cualquier organización.
- Base de datos: una base de datos (MySQL, MariaDB o PostgreSQL), que solo debería responder a los servicios que la usan y nunca a toda la red.
La lección de defensa
Con el laboratorio resuelto, el informe explica qué falló y cómo protegerse:
Las credenciales acaban donde no deberían: archivos de configuración legibles por todos, scripts, el historial de la shell (una contraseña escrita en la línea de comandos se queda en .bash_history). Lección defensiva: los secretos van en un gestor de secretos o en archivos con permisos 600, nunca en el código; se rotan en cuanto quedan expuestos y se buscan uno mismo (secret scanning, un grep -r periódico) antes de que lo haga otro.
Antes y después de este laboratorio
Para abrirlo debes haber resuelto:
- ¿Quién soy y qué puedo hacer? (Privilege Escalation, medio)
- Entorno e historial (Fundamentos de Linux, medio)
Después de este laboratorio puedes pasar a:
- Secretos en procesos y servicios locales (Privilege Escalation, medio)
La ruta Privilege Escalation
Privilege Escalation es aquí una ruta de auditoría: estás en un servidor como usuario normal y compruebas si alguna configuración errónea permite obtener más privilegios de los debidos. Examinas las reglas de sudo, los programas con el bit SUID, las credenciales olvidadas en el historial y en archivos, y los secretos pasados como argumentos de los procesos. Son los mismos controles que hace quien asegura un sistema, y cada laboratorio termina con el principio que los resume todos: mínimo privilegio.