🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónVariables de entorno y lo que filtran en registros
5 tareas · 35 min · Principiante
Las credenciales de un pipeline suelen viajar como variables de entorno, y de ahí pasan, sin que nadie lo pretenda, a los registros del trabajo, a la lista de procesos y a los volcados de depuración. Con la evidencia del trabajo 7310 de Molinos Zarzuela, una empresa ficticia, aprendes a rastrear una clave por todos los sitios donde acaba. El valor sensible es un marcador evidente, no una credencial real.
Objetivo de la sala
Las credenciales de un pipeline suelen viajar como variables de entorno, y de ahí pasan, sin que nadie lo pretenda, a los registros del trabajo, a la lista de procesos y a los volcados de depuración. Con la evidencia del trabajo 7310 de Molinos Zarzuela, una empresa ficticia, aprendes a rastrear una clave por todos los sitios donde acaba. El valor sensible es un marcador evidente, no una credencial real.Una variable de entorno la heredan los procesos hijos: lo que lanza el script, y lo que ese programa lance a su vez, la ven. Es cómodo y es lo que hace que una credencial puesta en el entorno del trabajo esté al alcance de cada herramienta que el trabajo ejecute, incluidas las que no la necesitan.
Las plataformas de CI añaden el enmascarado: sustituyen por asteriscos, en el registro, el valor exacto de los secretos que conocen. Ayuda, pero tiene límites: solo cubre los valores que la plataforma tiene declarados como secretos y solo cuando el texto coincide exacto (una versión recortada o transformada no se reconoce).
Responde para continuar
¿Qué implica que una variable de entorno se defina en el script de un trabajo?
Ver pista de ayuda
Piensa en padres e hijos: ¿qué recibe un proceso hijo?
Abre el volcado de env del trabajo 7310. Hay variables cuyo valor aparece como *** y otra cuyo valor sale tal cual: nadie la declaró como secreto en la plataforma, así que no se enmascaró.
Responde para continuar
Escribe el nombre de la variable de entorno cuyo valor aparece sin enmascarar en el volcado.
Ver pista de ayuda
Ejecuta cat entorno-trabajo-7310.txt y busca la línea sin asteriscos que parezca una clave.
Pasar un secreto como argumento de un programa (--clave valor) lo deja visible: en la configuración habitual de Linux, cualquier usuario del equipo puede ver las líneas de comandos de los procesos de otros con ps, salvo que /proc se monte con restricciones. Los programas bien hechos aceptan el secreto por archivo o por entrada estándar, como hace el que notifica en este ejemplo.
Mira la lista de procesos del ejecutor mientras corre el trabajo 7310.
Responde para continuar
Escribe el PID del proceso que lleva el valor sensible dentro de su línea de comandos.
Ver pista de ayuda
Ejecuta ps y lee el final de cada comando.
El script paso-firmar.sh empieza con set -x, que imprime cada comando con sus variables ya sustituidas. Es una ayuda de depuración excelente y una fuga fácil: lo que va en el comando va al registro. Cuenta cuántas líneas del registro del trabajo 7310 contienen el valor sensible, tanto las del rastro como las de otras etapas.
Responde para continuar
¿En cuántas líneas del registro trabajo-7310.log aparece el valor sensible sin enmascarar?
Ver pista de ayuda
grep CLAVE-FICTICIA trabajo-7310.log te enseña las líneas; cuéntalas.
El secreto ya está en un registro que otras personas leen. Quitar el set -x evita fugas futuras, pero no limpia lo ya escrito. Y confiar en el enmascarado no es una defensa: es una red por si algo se escapa.
Responde para continuar
¿Qué orden de correcciones propones para esta fuga?
Ver pista de ayuda
Una clave que se ha visto en un registro ya no es privada.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.