Saltar al contenido
Lectura5 minPreview

Bienvenida al curso

"Tranquilo, ya la borré", dice el practicante de Cafetal Digital (caso inventado) cuando usted le pregunta por la llave de AWS que subió ayer al repositorio público de scripts. En la versión actual del archivo ya no está. Pero Git no olvida:

$ git log -S "AKIA" --oneline
9c1e2f4 quitar credenciales
3a7b0d1 conexion a S3 para respaldos
$ git show 3a7b0d1:config.py | grep AKIA
AWS_ACCESS_KEY_ID = "AKIAIOSFODNN7EXAMPLE"

Dos comandos y la llave aparece completa. (Esa es la de ejemplo de la documentación de AWS; la del practicante no lo era.) Lo correcto era revocarla de inmediato y limpiar después: en los repositorios públicos hay bots buscando claves con ese formato, y el orden importa más que la limpieza.

Bienvenido a Git y GitHub para ciberseguridad. Aprenderá Git como lo usa un equipo de seguridad: para versionar scripts y reglas de detección, colaborar sin pisar el trabajo de nadie y cuidar el repositorio mismo, que también es un blanco.

Qué va a lograr

  • Explicar qué es el control de versiones y en qué se diferencian Git y GitHub.
  • Usar el ciclo init, add, commit, log, diff y un .gitignore que impida subir lo que no debe.
  • Trabajar con ramas, resolver conflictos y proponer cambios con pull requests revisados.
  • Detectar secretos con gitleaks, responder en el orden correcto y bloquearlos con un hook pre-commit.
  • Proteger cuenta y repositorio con commits firmados, 2FA, ramas protegidas, Dependabot y GitHub Actions.

Para quién es y qué necesita

Es para quien nunca ha usado Git, o lo usa copiando comandos sin saber qué hacen. Conviene haber hecho Linux básico: 15 comandos para empezar. No necesita saber programar.

Necesita Linux, macOS o Windows (con Git Bash o WSL2) y una cuenta gratuita de GitHub creada por usted. Active la verificación en dos pasos de esa cuenta antes del módulo 2: el curso la da por hecha.

Cómo está organizado

MóduloQué aprendeLaboratorio
1. Control de versiones con GitQué es el control de versiones, instalar y configurar Git, el ciclo init, add, commit, log y diffSu primer repositorio de scripts con .gitignore
2. Ramas y colaboraciónswitch, branch y merge, conflictos, remotos con clone, push y pullPull request y revisión de código
3. Seguridad del repositorioSecretos en el historial, commits firmados, 2FA, permisos y ramas protegidasCazar secretos con gitleaks y un hook pre-commit
4. Git en el trabajo de seguridadReglas Sigma y YARA versionadas, Dependabot, leer repositorios ajenos, más la conclusiónGitHub Actions con un linter
Evaluación6 preguntas sobre todo el cursoAprueba con 70 %

Cómo aprovecharlo

Lea la salida de git status cada vez. Casi todos los sustos de quien empieza, como un commit en la rama equivocada, se ven venir ahí una línea antes.

El primer conflicto de merge del módulo 2 suele asustar: Git llena el archivo de marcas raras. No se rompió nada; resuélvalo a mano, despacio. El laboratorio de gitleaks pide instalar una herramienta y escribir un hook que hay que probar fallando antes de darlo por bueno: resérvele una sesión completa.

Al aprobar la evaluación final recibe el certificado y la insignia del curso.

Tiempo estimado

Unas 5 horas, hora y media en laboratorios. Haga el módulo 1 en días seguidos, para que add, commit y log se vuelvan automáticos antes de meter ramas.