0Pricing
Cyber Security Academy · Lección

SAST y DAST en pipelines de CI/CD

Integre SonarQube, Semgrep o Bandit para el análisis estático, y OWASP ZAP para el análisis dinámico en los pipelines.

SAST y DAST en pipelines de CI/CD es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.

¿Qué son las pruebas de seguridad de aplicaciones?

Las pruebas de seguridad de aplicaciones identifican vulnerabilidades antes de que el código llegue a producción. Hay dos enfoques complementarios: SAST (estático, sin ejecutar el código) y DAST (dinámico, mediante pruebas sobre una aplicación en ejecución). Ambos pueden integrarse en canalizaciones de CI/CD para aplicar la seguridad desde etapas tempranas.

SAST: análisis estático de seguridad de aplicaciones

SAST analiza el código fuente, el bytecode o los binarios en busca de vulnerabilidades de seguridad sin ejecutar el código. Puede ejecutarse con cada commit para proporcionar comentarios rápidos.

Ventajas: detecta errores pronto, ofrece una cobertura completa del código y no necesita un entorno en ejecución.

Desventajas: presenta una alta tasa de falsos positivos, depende del lenguaje y no detecta problemas de configuración en tiempo de ejecución.

Herramientas SAST populares

Herramientas SAST de código abierto:

# Semgrep (multi-language, rule-based):
semgrep --config auto ./src

# Bandit (Python):
bandit -r ./src

# ESLint security plugin (JavaScript):
npx eslint --plugin security ./src

# SpotBugs + FindSecBugs (Java):
mvn spotbugs:check

Integración de SAST en CI/CD

Ejemplo de paso de SAST en GitHub Actions:

# .github/workflows/security.yml
- name: Run Semgrep
  uses: returntocorp/semgrep-action@v1
  with:
    config: p/owasp-top-ten
    auditOn: push
# Fail build if HIGH severity findings present

DAST: pruebas dinámicas de seguridad de aplicaciones

DAST prueba una aplicación en ejecución desde el exterior, simulando a un atacante. Detecta vulnerabilidades que solo son visibles en tiempo de ejecución: problemas de autenticación, fallos de gestión de sesiones y errores de validación de entradas.

Ventajas: pocos falsos positivos, independencia del lenguaje y detección de problemas de configuración en tiempo de ejecución.

Desventajas: necesita un entorno en ejecución y puede no cubrir algunas rutas de código.

Herramientas DAST populares

Herramientas DAST para CI/CD:

# OWASP ZAP (free, scriptable):
docker run -t owasp/zap2docker-stable zap-baseline.py -t https://staging.app.com

# Nikto:
nikto -h https://staging.app.com

# Nuclei (template-based):
nuclei -u https://staging.app.com -t cves/

IAST: pruebas interactivas de seguridad de aplicaciones

IAST instrumenta la aplicación en tiempo de ejecución mediante agentes que supervisan la ejecución del código durante las pruebas funcionales. Combina la precisión de SAST con la cobertura de DAST. Ejemplos: Contrast Security, Seeker. Requiere agentes específicos para cada lenguaje y pruebas en ejecución.

Adelantar la seguridad en el ciclo de desarrollo

Shift left significa adelantar las pruebas de seguridad en el ciclo de desarrollo, idealmente hasta el IDE del desarrollador y la etapa del commit, en lugar de realizarlas como una etapa independiente antes de la publicación. Detectar antes los problemas significa que las correcciones son más baratas.

Multiplicador de costo: un error en desarrollo cuesta 1x; en preproducción, 10x; en producción, 100x.

Gestión de falsos positivos

Las herramientas SAST producen falsos positivos. Para gestionarlos:

  • Use nosec (Bandit) o comentarios de supresión en línea para los casos confirmados como no problemáticos
  • Ajuste los conjuntos de reglas al contexto de la aplicación
  • Documente el motivo de la supresión en comentarios del código
  • Revise periódicamente las supresiones

Arquitectura de la canalización de seguridad de CI/CD

Una canalización de seguridad completa:

  1. Hooks previos al commit: análisis de secretos (gitleaks), SAST (semgrep)
  2. Comprobaciones de PR: resultados de SAST, análisis de dependencias (Dependabot)
  3. Implementación en preproducción: análisis DAST (ZAP baseline)
  4. Producción: supervisión en tiempo de ejecución (RASP, WAF)

Medición de la eficacia de AppSec

Métricas clave de AppSec en CI/CD:

  • Tiempo medio de corrección de los hallazgos de seguridad
  • Tasa de hallazgos por cada 1000 líneas de código
  • Tasa de falsos positivos (influye en la confianza de los desarrolladores)
  • Tasa de vulnerabilidades que llegan a producción (detectadas en preproducción frente a producción)

Comprobación rápida: SAST frente a DAST

¿Qué tipo de pruebas de seguridad analiza el código fuente sin ejecutarlo y proporciona comentarios directamente en la canalización de CI con cada commit?

Repaso de la lección

SAST analiza el código de forma estática (proporciona comentarios pronto, pero presenta muchos falsos positivos); DAST prueba aplicaciones en ejecución de forma dinámica (ofrece precisión en tiempo de ejecución, pero necesita un entorno). Ambos deben formar parte de las canalizaciones de CI/CD. Adelantar la seguridad permite detectar vulnerabilidades cuando las correcciones son más baratas. Herramientas populares: Semgrep y Bandit (SAST); OWASP ZAP y Nuclei (DAST). Ajuste los conjuntos de reglas y documente las supresiones para gestionar los falsos positivos.

Preguntas frecuentes

¿La lección «SAST y DAST en pipelines de CI/CD» es gratis?

Sí — el texto completo de «SAST y DAST en pipelines de CI/CD» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.

¿Qué aprenderé en «SAST y DAST en pipelines de CI/CD»?

Integre SonarQube, Semgrep o Bandit para el análisis estático, y OWASP ZAP para el análisis dinámico en los pipelines. Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cyber Security Academy?

No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «SAST y DAST en pipelines de CI/CD»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?

Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. SAST y DAST en pipelines de CI/CD
  2. Análisis de composición de software (SCA)
  3. Análisis de secretos y credenciales codificadas
  4. Security Champions y modelado de amenazas
← Volver a Cyber Security Academy