🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónGit en la terminal y fuga de secretos
4 tareas · 20 min · Principiante
Git es el estándar absoluto para gestionar versiones de código y colaborar en proyectos. Sin embargo, para un analista de seguridad, un repositorio Git es también una fuente inagotable de hallazgos: los desarrolladores cometen el error habitual de subir contraseñas y claves de API y luego creen que borrarlas en el commit siguiente soluciona el problema. En esta sala aprenderás los comandos básicos de Git y cómo inspeccionar el historial forense.
Objetivo de la sala
Git es el estándar absoluto para gestionar versiones de código y colaborar en proyectos. Sin embargo, para un analista de seguridad, un repositorio Git es también una fuente inagotable de hallazgos: los desarrolladores cometen el error habitual de subir contraseñas y claves de API y luego creen que borrarlas en el commit siguiente soluciona el problema. En esta sala aprenderás los comandos básicos de Git y cómo inspeccionar el historial forense.Git gestiona los cambios en tres zonas: 1) El directorio de trabajo (Working Directory), donde editas los archivos con tu editor. 2) El área de preparación (Staging Area / Index), donde seleccionas qué cambios incluirás con git add. 3) El repositorio local, donde se sellan los cambios con git commit -m 'mensaje'. Cada commit genera un hash criptográfico SHA-1 o SHA-256 único que identifica el estado exacto del código en ese instante.
Responde para continuar
¿Qué comando de Git traslada los archivos modificados desde el directorio de trabajo hacia el área de preparación (Staging Area)?
Ver pista de ayuda
Añade los ficheros modificados a la lista de cambios que formarán parte del próximo commit.
Un desarrollador pega por error su clave de AWS en un script, hace commit y push a GitHub. Al notar el error cinco minutos después, borra la línea de la clave, hace un segundo commit ('fix: remove secret') y respira aliviado creyendo que la clave desapareció. Grave error: Git está diseñado para recordar toda la historia. La clave sigue intacta y visible para cualquiera que clone el repositorio e inspeccione los commits anteriores.
Responde para continuar
¿Por qué eliminar una contraseña en un commit posterior no protege la credencial que fue subida a un repositorio Git?
Ver pista de ayuda
El historial de versiones almacena cada estado previo del código sin destruirlo.
Para buscar secretos en un proyecto recién recibido, el auditor utiliza el comando git log -p: muestra la lista cronológica de commits junto con el diff línea a línea de todo lo añadido (+) y borrado (-). Combinando git log -p -S 'password' o git log -p -G '(api_key|secret)', Git busca instantáneamente en todos los commits del proyecto cualquier línea donde se haya introducido o eliminado esa palabra clave.
Responde para continuar
¿Qué parámetro del comando git log permite ver las diferencias detalladas de código (diff) introducidas en cada commit?
Ver pista de ayuda
Genera el parche visual de modificaciones para cada confirmación de la historia.
La prevención en Git se apoya en dos pilares: 1) El archivo .gitignore: lista qué archivos y carpetas locales (como .env, node_modules/ o carpetas de claves .pem) NUNCA deben añadirse al control de versiones. 2) Ganchos de pre-commit (Pre-commit hooks) y herramientas automatizadas (como TruffleHog o Gitleaks) que escanean los archivos antes de confirmar el commit, bloqueando la acción si detectan entropía o patrones de tokens privados.
Responde para continuar
¿Cuál es la función del archivo .gitignore en la raíz de un proyecto?
Ver pista de ayuda
Evita que archivos de configuración local o secretos se incorporen por descuido al repositorio.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio y la seguridad de tu sesión y, solo si lo autorizas, analítica. Puedes aceptar, rechazar o personalizar. Política de Cookies · 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
Medimos con Google Analytics cómo se usa la plataforma; solo si lo aceptas
Google Analytics (cookies _ga) nos dice qué páginas se usan y dónde se atascan las personas. No enviamos tu nombre ni tu correo. Sin tu permiso no se carga, y puedes cambiarlo cuando quieras desde «Cookies» al final de la página.
Marketing
Hoy no usamos cookies de marketing; si algún día lo hacemos, será 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.