Saltar al contenido principal

Seguridad en DevOps

DevOps optimizó la velocidad de entrega. Y al hacerlo dejó al descubierto un problema: el proceso de seguridad tradicional no aguanta ese ritmo.

Si despliegas una vez al trimestre, puedes permitirte una auditoría de dos semanas antes de cada release. Si despliegas quince veces al día, esa auditoría es imposible. La opción que eligen muchos equipos es la peor de todas: dejar de hacerla.

El coste de llegar tarde

Desarrollo (3 meses) → QA → 🔒 Auditoría → 😱 → Producción

Tres problemas con este modelo:

  • Arreglar es carísimo. Un fallo detectado en diseño se corrige cambiando un párrafo. El mismo fallo en producción implica rehacer código, migrar datos y gestionar un incidente.
  • La seguridad se convierte en "el que dice que no". Un obstáculo burocrático que los equipos aprenden a esquivar.
  • No escala. Tres personas de seguridad no pueden revisar a mano lo que producen cien desarrolladores.

Shift-left

DevSecOps es la respuesta: integrar la seguridad en cada etapa en lugar de dejarla al final. Y shift-left es su idea central — si dibujas el ciclo de vida de izquierda a derecha, se trata de mover la seguridad hacia la izquierda, lo más cerca posible de donde se escribe el código.

No es una frase motivacional, es aritmética: cuanto antes encuentras un fallo, más barato es arreglarlo.

Qué cambia respecto a DevOps

DevOpsDevSecOps
ObjetivoEntregar rápido y de forma fiableLo mismo, sin regalar fallos
ResponsabilidadDev y Ops comparten la entregaTodos comparten también la seguridad
Cuándo se revisaAntes de la releaseEn cada commit
Qué rompe el pipelineUn test que fallaUn test o un CVE crítico
MétricasLead time, MTTRLas anteriores + tiempo hasta parchear

Fíjate en que no es un stack distinto ni un equipo aparte. Es el mismo pipeline con controles añadidos.

Las herramientas, por etapa

FamiliaQué haceCuándo actúaEjemplo
Secret scanningBusca credenciales en el códigoAntes del commitgitleaks
SASTAnaliza el código sin ejecutarloEn cada pushSemgrep, SonarQube
SCARevisa tus dependenciasEn cada pushTrivy, Dependabot
Escaneo de imágenesBusca CVEs en el contenedorAl construirTrivy, Grype
SBOM y firmaInventaría y firma el artefactoEn cada releaseSyft, Cosign
IaC scanningAudita tu TerraformAntes de desplegarCheckov, tfsec
DASTAtaca la aplicación en marchaSobre un entorno desplegadoOWASP ZAP

Ninguna encuentra todo. Cada una mira desde un ángulo distinto, y por eso se combinan.

Los dos principios que evitan el fracaso

Si te llevas solo dos ideas de este capítulo, que sean estas.

1. Informar de todo, bloquear por poco. Un pipeline que falla por doscientas vulnerabilidades de severidad baja se ignora en una semana, y entonces no proteges nada. Reporta absolutamente todo, pero bloquea únicamente lo crítico que tenga parche disponible.

2. La seguridad es responsabilidad de todos. Si el desarrollador piensa que "ya lo mirará el equipo de seguridad", el modelo no funciona. Y cuando un control frene a alguien, ayúdale a arreglarlo: esa primera vez decide si el equipo lo percibe como ayuda o como obstáculo.

Continúa en el curso de DevSecOps

Este capítulo es solo el mapa. Cada una de estas etapas tiene su capítulo con laboratorio propio en el curso de DevSecOps:

  1. Qué es DevSecOps — cultura y pipeline seguro
  2. Secretos en el código — gitleaks, pre-commit e historial
  3. Dependencias y SCA — Trivy, Dependabot y Renovate
  4. SAST — análisis estático con Semgrep
  5. Imágenes de contenedor — escaneo con Trivy y gates
  6. SBOM y firma — Syft y Cosign
  7. Seguridad en IaC — Checkov y Policy as Code
  8. Secretos en producción — Vault y External Secrets
  9. DAST — OWASP ZAP
  10. Pipeline completo — juntarlo todo en GitHub Actions

Para la seguridad específica de Kubernetes (RBAC, NetworkPolicies, Falco, OPA), el sitio es el curso de Kubernetes.

Resumen

  • El proceso de seguridad tradicional no aguanta el ritmo de DevOps
  • Shift-left: cuanto antes detectas un fallo, más barato es arreglarlo
  • DevSecOps no es otro stack: es el mismo pipeline con controles en cada etapa
  • Cada familia de herramientas cubre un ángulo distinto y ninguna lo ve todo
  • Informa de todo, bloquea por poco, y ayuda a quien bloquees

💡 Recuerda: la seguridad no es un checkpoint, es algo que ocurre en cada commit.

Continúa en el curso de DevSecOps, donde cada etapa tiene su laboratorio.