Entorno e historial
Has sustituido a un compañero y te ha dejado su shell. Consulta el entorno y el historial de comandos para recuperar las credenciales de la base de datos de producción... y descubre por qué nunca deben escribirse en la línea de comandos.
Laboratorio 9 de 9 de la ruta Fundamentos de Linux. 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:
- Listar las variables de entorno con env (100 XP)
- Leer una variable con echo $NOMBRE (120 XP)
- Consultar el historial de comandos (130 XP)
Temas: linux, ambiente, history.
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:
cat: muestra el contenido de un archivo: la forma más directa de leer configuraciones, notas y registros.env: lista las variables de entorno de la shell, donde a veces acaban configuraciones y credenciales.echo: muestra un texto o el valor de una variable, como $HOME.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.|: la barra vertical | encadena comandos: la salida del primero se convierte en la entrada del siguiente, y así pequeñas herramientas forman un análisis completo.
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.
La lección de defensa
Con el laboratorio resuelto, el informe explica qué falló y cómo protegerse:
El entorno y el historial cuentan mucho: quién ha usado la shell, con qué usuarios y a veces con qué contraseñas. Escribir una contraseña en la línea de comandos (-p'...') la deja en ~/.bash_history y en la lista de procesos (ps), visible para otros usuarios. Defensa: deja vacía la opción (-p: la contraseña se escribe en el prompt), usa archivos con permisos 600 o un gestor de secretos; con HISTCONTROL=ignorespace un comando que empieza por un espacio no se guarda; y cambia enseguida toda contraseña que haya acabado en un historial.
Antes y después de este laboratorio
Para abrirlo debes haber resuelto:
- Permisos y propietarios (Fundamentos de Linux, medio)
Después de este laboratorio puedes pasar a:
- Secretos olvidados (Privilege Escalation, medio)
La ruta Fundamentos de Linux
Fundamentos de Linux es el punto de partida. Casi todos los servidores, los dispositivos de red y las herramientas de seguridad funcionan con Linux, y quien defiende un sistema (o lo pone a prueba con permiso) pasa gran parte del tiempo en un terminal. Aquí aprendes a moverte por el sistema de archivos, a encontrar archivos ocultos, a leer por partes registros larguísimos, a buscar palabras con grep, a encadenar comandos con tuberías y a entender permisos, variables de entorno e historial: la base que usarás en todas las demás rutas.