Evaluación de Herramientas para la Evaluación de Seguridad en Soluciones Desarrolladas

Se evaluaron ocho herramientas: Trivy, Grype + Syft, SonarQube, OWASP ZAP, Semgrep, Checkov, Snyk y Falco. Las herramientas open source ofrecen un ecosistema robusto y gratuito para cubrir distintos aspectos del ciclo de vida del desarrollo seguro. Se recomienda combinar varias de ellas según la fase del pipeline y el tipo de solución.

Tabla de contenido

  1. Introducción.

  2. Metodología y Criterios para la Evaluación de Herramientas de Seguridad en el Desarrollo de Soluciones Digitales del Estado Dominicano.

    • Objetivo del Documento.

    • Metodología de Evaluación.

    • Criterios de Evaluación.

  3. Análisis de Herramientas.
    • Trivy.
    • Grype + Syft.
    • SonarQube.
    • OWASP ZAP.
    • Semgrep.
    • Checkov.
    • Snyk.
    • Falco.
    • Faraday
  4. Comparativa Gráfica.
  5. Recomendaciones.
  6. Conclusión. 
  7. Bibliografía.

Introducción

En el marco de la transformación digital del sector público, garantizar la seguridad de las soluciones desarrolladas es fundamental para proteger la integridad, confidencialidad y disponibilidad de los servicios digitales del Estado. La Dirección de Arquitectura Digital Gubernamental tiene como responsabilidad adoptar herramientas y prácticas que integren la seguridad como un componente esencial desde las primeras etapas del ciclo de vida del software.

Este informe proporciona un análisis comparativo y técnico de herramientas de evaluación de seguridad que pueden ser integradas en un enfoque DevSecOps en el ámbito gubernamental.

Metodología y Criterios para la Evaluación de Herramientas de Seguridad en el Desarrollo de Soluciones Digitales del Estado Dominicano

Objetivo del Documento

Seleccionar y recomendar herramientas de evaluación de seguridad que permitan fortalecer el desarrollo seguro de soluciones digitales, alineadas con estándares internacionales y buenas prácticas del sector.

Metodología de Evaluación

Se identificaron y evaluaron ocho herramientas reconocidas en la industria, considerando criterios relevantes definidos por el equipo de arquitectura digital. La información fue extraída de documentación oficial, comunidades técnicas, y pruebas en entornos de laboratorio.

Criterios de Evaluación

  1. ¿Open Source?: Disponibilidad del código y posibilidad de uso sin licencia comercial.

  2. Alcance de evaluación de seguridad: Cuales componentes o capas analiza (código, dependencias, contenedores, IaC, ejecución, etc.).

  3. Integración con procesos DevSecOps: Facilidad para integrarse en flujos CI/CD.
  4. Tipo de vulnerabilidades detectadas: Si realiza análisis SAST, DAST, SCA, IaC, runtime, secretos.

  5. Facilidad de configuración y mantenimiento: Curva de aprendizaje y operatividad diaria

  6. Soporte activo o comunidad: Existencia de soporte empresarial o comunidad activa.

  7. Reportes comprensibles para Stakeholders: Facilidad de comprensión por distintos perfiles (técnicos, gerenciales).
  8. Automatización en CI/CD: Si es posible su ejecución automatizada en pipelines.

  9. Costo: Si tiene versiones gratuitas o es de pago.

  10. Integración con herramientas usadas: Compatibilidad con herramientas como GitHub, Teams, Plane, Jira, etc.
  11. Personalización de reglas o políticas: Posibilidad de definir reglas propias.
  12. Cumplimiento de estándares: Si se alinea con OWASP, NIST, ISO 27001, etc

Análisis de Herramientas

Análisis de Herramientas

Trivy (by Aqua Security)

Descripción

Trivy es un escáner de seguridad todo en uno para contenedores, código, repositorios Git y más. Identifica vulnerabilidades (CVE), secretos expuestos y configuraciones erróneas.

Uso local
# Escanear una imagen Docker
trivy image nginx:latest

# Escanear archivos o repositorios
trivy fs .

# Escanear un repositorio remoto
trivy repo https://github.com/usuario/proyecto
Reportes
Integración en CI/CD
      - name: Generate Trivy Vulnerability Report
        uses: aquasecurity/trivy-action@master
        with:
          scan-type: "fs"
          output: trivy-report.json
          format: json
          scan-ref: .
          exit-code: 0
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares
Análisis de Herramientas

Grype + Syft (by Anchore)

Descripción
Uso local
# Syft - generar SBOM
syft nginx:latest -o json > sbom.json

# Grype - escanear imagen
grype nginx:latest

# Escanear SBOM generado
grype sbom:sbom.json
Reportes
Integración en CI/CD
- name: Scan current project
  uses: anchore/scan-action@v6
  with:
    path: "."
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:

Análisis de Herramientas

SonarQube

Descripción

SonarQube es una herramienta de análisis estático de código para detectar bugs, vulnerabilidades, y code smells en más de 25 lenguajes.

Uso local
# Análisis local con CLI
sonar-scanner -Dsonar.projectKey=myproject -Dsonar.sources=. -Dsonar.host.url=http://localhost:9000
Reportes
Integración en CI/CD
    - name: SonarQube Scan
      uses: SonarSource/sonarqube-scan-action@<action version> # Ex: v4.1.0, See the latest version at https://github.com/marketplace/actions/official-sonarqube-scan
      env:
        SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
        SONAR_HOST_URL: ${{ vars.SONAR_HOST_URL }}
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:
Análisis de Herramientas

OWASP ZAP

Descripción

OWASP ZAP es una herramienta de escaneo de seguridad para aplicaciones web, mantenida por OWASP. Detecta vulnerabilidades como XSS, SQLi, etc.

Uso local
# Interfaz gráfica
zap.sh

# Escaneo desde CLI
zap-baseline.py -t http://localhost:8080 -r reporte.html
Reportes
Integración en CI/CD
      - name: ZAP Scan
        uses: zaproxy/action-baseline@v0.14.0
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          docker_name: 'ghcr.io/zaproxy/zaproxy:stable'
          target: 'https://www.zaproxy.org'
          rules_file_name: '.zap/rules.tsv'
          cmd_options: '-a'
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:
Análisis de Herramientas

Semgrep

Descripción

Semgrep es un escáner de análisis estático que detecta vulnerabilidades, errores de seguridad, problemas de estilo, etc., mediante reglas personalizables.

Uso local
# Escaneo básico
semgrep scan --config=p/ci .

# Escaneo con reglas personalizadas
semgrep scan --config=rules/mi_regla.yml .
Reportes
Integración en CI/CD
- uses: returntocorp/semgrep-action@v1
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:
Análisis de Herramientas

Checkov

Descripción

Checkov es un escáner de infraestructura como código (IaC) que detecta configuraciones inseguras en Terraform, CloudFormation, Kubernetes, etc.

Uso local
checkov -d .    # Escanea el directorio actual
Reportes
Integración en CI/CD

      - name: Run Checkov action
        id: checkov
        uses: bridgecrewio/checkov-action@master
        with:
          directory: .
          soft_fail: true
          download_external_modules: true
          github_pat: ${{ secrets.GH_PAT }}
        env:
          GITHUB_OVERRIDE_URL: true  # optional: this can be used to instruct the action to override the global GIT config to inject the PAT to the URL
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:

Análisis de Herramientas

Snyk

Descripción

Snyk es una herramienta para detectar vulnerabilidades en dependencias, contenedores, código IaC y código fuente.

Uso local
snyk test     # Escaneo de dependencias
snyk code test  # Escaneo de código fuente
Reportes
Integración en CI/CD
      - name: Run Snyk to check for vulnerabilities
        uses: snyk/actions/node@master
        env:
          SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
        with:
          command: monitor

Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:
Análisis de Herramientas

Falco

Descripción

Falco es un sistema de detección de intrusos para Kubernetes y contenedores. Monitorea el comportamiento en tiempo real basado en reglas.

Uso local
falco        # Inicia la monitorización
Reportes
Integración en CI/CD
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares:
Análisis de Herramientas

Faraday

Descripción

Faraday es una plataforma de gestión de vulnerabilidades que permite integrar resultados de herramientas de análisis de seguridad y centralizar reportes orientada a equipos de seguridad, pentesters y procesos de DevSecOps.

Permite:

Funciona como un servidor central con una interfaz web y un cliente CLI (faraday-cli) que facilita la autenticación, gestión de workspaces y la carga automática de reportes a la plataforma, lo que permite integrarlo en pipelines de CI/CD. Soporta múltiples formatos de reportes y herramientas de seguridad, como Trivy, OpenVAS, Nessus, Burp Suite, etc.

Uso local

Faraday se puede ejecutar localmente mediante Docker o instalación directa en Linux.
Ejemplo con Docker:

docker run -it -p 5985:5985 -v faraday_data:/home/faraday/.faraday faradaysec/faraday

CLI básico

Iniciar sesión:

faraday-cli auth login --server https://<host>:5985 --username faraday --password <pass>

Subir un reporte:

faraday-cli tool report ./trivy-report.json --workspace <workspace>

Listar workspaces:

faraday-cli workspace list
Reportes

Faraday procesa los reportes de herramientas de seguridad y los almacena en un workspace.

Integración en CI/CD

Faraday puede integrarse en pipelines para subir reportes automáticamente después de un escaneo.

      - name: Generate Trivy Filesystem Report
        uses: aquasecurity/trivy-action@master
        with:
          scan-type: fs
          output: trivy-fs-report.json
          format: json
          scan-ref: .
          exit-code: 0

      - name: Upload Trivy reports
        run: |
          faraday-cli tool report -w "$WORKSPACE" trivy-fs-report.json
Integraciones
UI
Licencia
Facilidad de uso
Cumplimiento con estándares

Faraday no certifica por sí mismo estándares, pero facilita el cumplimiento al centralizar la gestión de vulnerabilidades y permitir auditorías trazables.

Comparativa Gráfica

Herramienta ¿Es Open Source? Alcance de evaluación Integrable en DevSecOps Tipo de vulnerabilidades Facilidad de uso Comunidad / Soporte Reportes comprensibles Automatizable en CI/CD Costo Integraciones Personalización de reglas Cumplimiento de estándares
Trivy ✅ Sí Imágenes Docker, código, IaC ✅ Sí SCA, IaC, secretos, vuln. ⭐⭐⭐⭐ Fácil ✅ Activa (AquaSec) ✅ Claro (CLI/JSON) ✅ Sí ✅ Gratis (OSS) GitHub, GitLab, Jenkins ✅ Parcial (políticas) ✅ OWASP, CIS
Grype + Syft ✅ Sí Análisis de imágenes/SBOM ✅ Sí SCA (dependencias) ⭐⭐⭐ Media ✅ Sí (Anchore) CLI/JSON/SARIF ✅ Sí ✅ Gratis (OSS) GitHub, GitLab ✅ Avanzado (rules.yaml) ✅ Parcial (CIS, OWASP)
SonarQube CE ✅ (CE) / ❌ (EE) Código fuente (SAST) ✅ Sí SAST ⭐⭐⭐⭐ Fácil ✅ Amplia ✅ Muy buenos ✅ Sí ✅ CE gratis / EE pago GitHub, GitLab, Jenkins ✅ Sí ✅ OWASP Top 10
OWASP ZAP ✅ Sí Web apps (DAST) ✅ Sí DAST ⭐⭐ Intermedio ✅ OWASP ✅ GUI + JSON ✅ Sí ✅ Gratis Jenkins, GitHub, Jira ✅ Avanzado ✅ OWASP Top 10
Semgrep ✅ Sí Código (SAST ligero + rules) ✅ Sí SAST ⭐⭐⭐⭐ Fácil ✅ Activa ✅ Personalizables ✅ Sí ✅ Gratis (OSS) / pago GitHub, GitLab, Jira ✅ Muy flexible ✅ OWASP, PCI, etc.
Checkov ✅ Sí Infraestructura como código ✅ Sí IaC (Terraform, etc.) ⭐⭐⭐⭐ Fácil ✅ Activa (Bridgecrew) ✅ CLI/JSON ✅ Sí ✅ Gratis (OSS) GitHub, GitLab, Terraform ✅ Sí ✅ CIS, NIST
Snyk ❌ (pero tiene CLI OSS) Código, IaC, dependencias ✅ Sí SAST, SCA, IaC ⭐⭐⭐⭐ Fácil ✅ Comercial y activa ✅ Excelente GUI/CLI ✅ Sí ❌ Pago (freemium) GitHub, GitLab, Jira ✅ Sí (limitado OSS) ✅ OWASP, NIST
Falco ✅ Sí Tiempo de ejecución (runtime) ✅ Sí Runtime anomalies ⭐⭐ Medio ✅ CNCF, Sysdig Logs + alertas ✅ Sí ✅ Gratis (OSS) SIEM, Prometheus, etc. ✅ Sí (reglas YAML) ✅ CIS Benchmarks

Recomendaciones

Herramientas recomendadas para incluir en el stack tecnológico (open source y gratuitas)

Herramienta Licencia Motivo para incluir
Trivy Apache 2.0 (OSS) Escaneo de imágenes, código fuente, repositorios, configuración IaC, secretos. Rápido y versátil.
Grype + Syft Apache 2.0 (OSS) SBOM + análisis de vulnerabilidades. Ideal para cumplimiento con NIST y gestión de inventario.
OWASP ZAP Apache 2.0 (OSS) Escaneo de aplicaciones web. GUI, CLI y automatizable. 100% alineado con OWASP.
Semgrep LGPL (Free tier) Excelente para escaneo SAST. Reglas YAML personalizadas, muy útil para desarrollo seguro.
Checkov Apache 2.0 (OSS) IaC security. Compatible con Terraform, Kubernetes, CloudFormation, etc.
Falco Apache 2.0 (OSS) Detección de amenazas en tiempo real en contenedores y Kubernetes. Ideal para producción.

Estas herramientas:

Herramientas útiles pero con limitaciones en la versión gratuita.

Herramienta Licencia Uso recomendado / limitación
SonarQube Community Edition OSS Muy útil para SAST. La versión gratuita no incluye todos los lenguajes ni reglas avanzadas. Instalable en VM.
Snyk Gratis con limitaciones Muy potente, pero requiere cuenta. En la versión free se limita el número de escaneos y proyectos privados.

Puedes usarse si:

Herramientas que podrías descartar (para uso exclusivo OSS / sin costo)

Herramienta Motivo para descartar o evitar
Snyk (versión cloud) Aunque potente, sus planes gratuitos son limitados para uso en producción o entornos empresariales. Necesita upgrade para características clave (políticas, tickets en Jira, control RBAC, etc.).
SonarQube (versión Enterprise) Solo necesaria si necesitas análisis profundo de C++, COBOL, Salesforce, o reglas personalizadas complejas.

Recomendaciones según casos de uso:

Stack tecnológico DevSecOps recomendado (100% open source / gratuito)

Fase DevSecOps Herramienta Funcionalidad
SAST Semgrep, SonarQube CE Escaneo de código fuente y detección de bugs
SCA Trivy, Grype + Syft Escaneo de dependencias y vulnerabilidades (CVEs)
IaC Security Checkov, Trivy Revisión de infraestructura como código
DAST OWASP ZAP Escaneo dinámico de aplicaciones web
SBOM Syft Generación de lista de materiales de software
Runtime Security Falco Monitoreo de comportamiento en contenedores/K8s

Conclusión

Para entornos gubernamentales, se recomienda adoptar un stack basado en herramientas open source con amplio soporte comunitario. Luego del análisis técnico de un conjunto de herramientas de seguridad open source, se concluye que el Estado dominicano puede adoptar un stack tecnológico de ciberseguridad moderno, eficaz y sin costos de licenciamiento, alineado con estándares internacionales, con plena capacidad de ser desplegado y operado desde infraestructuras gubernamentales (máquinas virtuales, servidores propios, nubes estatales o ambientes híbridos).

Las herramientas evaluadas —Trivy, Grype + Syft, SonarQube (Community Edition), Semgrep, OWASP ZAP, Checkov y Falco— permiten cubrir de manera integral las distintas capas de seguridad en el ciclo de vida del desarrollo y despliegue de sistemas digitales, incluyendo:

Estas herramientas están alineadas con marcos y normas reconocidas como:

Además, su carácter open source ofrece las siguientes ventajas para el Estado:

En conclusión, se recomienda la incorporación progresiva de este stack de herramientas dentro de una estrategia nacional de DevSecOps y gestión de riesgos digitales, para fortalecer la arquitectura de seguridad de los sistemas gubernamentales, mejorar la capacidad de respuesta ante amenazas cibernéticas y avanzar hacia un ecosistema digital estatal resiliente, sostenible y conforme a las mejores prácticas internacionales. Integrar estas herramientas en pipelines de CI/CD mejora la visibilidad, cumplimiento y mitigación temprana de riesgos.

Bibliografía

Trivy

Aqua Security. (s.f.). Trivy - Escáner de vulnerabilidades. Aqua Security.

Aqua Security. (s.f.). Trivy GitHub Action. GitHub.

Aqua Security. (s.f.). Extensión para Visual Studio Code. GitHub.

DevOps Tales. (2023). Uso de Trivy Operator para validación de imágenes.

Locustbaby. (s.f.). Interfaz gráfica para Trivy. GitHub.

Aqua Security. (2024). Postee v2.9.0.

Aqua Security. (2024). Blueprints para Trivy Operator.

Grype + Syft

Anchore. (s.f.). Grype - Análisis de vulnerabilidades de contenedores.

Anchore. (s.f.). Herramientas de escaneo de seguridad.

SecureCodeBox. (2023). Consumo de SBOM con Grype.

Syft Analytics. (s.f.). Syft - Generador de SBOM.

Anchore. (s.f.). Acción de GitHub para escaneo con Grype.

SonarQube

SonarSource. (s.f.). SonarQube.

SonarSource. (s.f.). Acción GitHub para SonarQube.

SonarSource. (s.f.). Integración con GitHub.

SonarSource. (s.f.). Extensión VSCode.

Atlassian Marketplace. (s.f.). Conector SonarQube para Jira.

Toilatester. (s.f.). Notificador SonarQube para Microsoft Teams.

Semgrep

Semgrep. (s.f.). Documentación general.

Semgrep. (s.f.). Acción GitHub para Semgrep.

Semgrep. (s.f.). Extensión de VSCode.

Semgrep. (s.f.). Integración con Slack.

Semgrep. (s.f.). Integración con Jira.

Semgrep. (s.f.). Referencia CLI y formatos SARIF/JUnit.

OWASP ZAP

OWASP. (s.f.). OWASP ZAP.

OWASP. (s.f.). Escaneo base con Docker.

Zaproxy. (s.f.). GitHub Action oficial.

Zakrush. (s.f.). Scripts de API para ZAP.

Balasooriya, K. (2021). Exportar alertas de ZAP a Jira.

Checkov

Bridgecrew. (s.f.). Checkov.

Bridgecrew. (s.f.). Acción GitHub de Checkov.

Bridgecrew. (s.f.). Extensión de VSCode.

Bridgecrew. (s.f.). Integración con DefectDojo.

Atlassian. (s.f.). REST API Jira.

Checkov. (s.f.). Soporte para SARIF y JUnit.

Checkov. (s.f.). Referencia de CLI.

Checkov. (s.f.). Escaneo de Terraform Plan.

Snyk

Snyk. (s.f.). Página principal.

Snyk. (s.f.). Acción GitHub.

Snyk. (s.f.). Integración con Jira.

Snyk. (s.f.). Integración con Slack.

Snyk. (s.f.). VSCode Extension.

Snyk. (s.f.). CLI y Web UI.

Snyk. (s.f.). Blog sobre buenas prácticas.

Kimpel, H. (2023). Webhooks y suscripciones.

Falco

Falco. (s.f.). Documentación oficial.

Falco. (s.f.). Conceptos: Outputs y Canales.

Falco. (s.f.). GitHub Exporter.

FreeCodeCamp. (2023). Integración con Prometheus, Grafana y Docker.

Elastic. (s.f.). Integración Falco y Elastic Security.

Port. (s.f.). Integraciones webhook de Falco.

Herramientas Complementarias

CrowdStrike Marketplace. (s.f.). Soar actions para Teams.

SendSonar. (s.f.). Integración con Slack.

Digicert. (s.f.). Integración Sonar y Slack.

O’Reilly. (2019). Practical Security Automation.

YouTube. (2023). Integración de DefectDojo.

Grafana. (s.f.). Sitio oficial.

Prometheus. (s.f.). Prometheus + Kubernetes.

Elastic. (s.f.). Elasticsearch.