Saltar al contenido principal

3 min
[Espacio publicitario — AdSense]

Trivy: Seguridad de Contenedores y DevSecOps con un Solo Comando

El escáner de seguridad que necesitas en tu pipeline

Trivy es el escáner de seguridad de código abierto más popular para contenedores y cloud native. Desarrollado por Aqua Security, hace lo que otras herramientas necesitan múltiples binarios para lograr: escanea vulnerabilidades, configuraciones inseguras, secrets y licencias con un solo comando.

Qué puede escanear Trivy

Target Qué detecta
Imágenes Docker CVEs en paquetes OS y librerías
Repositorios Git Vulnerabilidades de dependencias, secrets
Kubernetes Imágenes de pods con vulnerabilidades
Terraform/CloudFormation Configuraciones IaC inseguras
Dockerfile Mejores prácticas de seguridad

Instalación

# macOS
brew install trivy

# Ubuntu/Debian
sudo apt-get install trivy

# Docker
docker pull aquasec/trivy

Escaneo básico

# Escanear una imagen Docker
trivy image nginx:latest

# Filtrar por severidad
trivy image --severity HIGH,CRITICAL nginx:latest

# Ignorar vulnerabilidades sin fix
trivy image --ignore-unfixed nginx:latest

Escaneo de repositorios

# Escanear código fuente
trivy fs --security-checks vuln,secret,config .

# Detectar secrets
trivy fs --security-checks secret .

# Generar SBOM
trivy image --format cyclonedx --output sbom.json nginx:latest

Integración con CI/CD

GitHub Actions

name: Trivy Security Scan
on: [push, pull_request]
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run Trivy
        uses: aquasecurity/trivy-action@master
        with:
          image-ref: 'mi-app:latest'
          severity: 'CRITICAL,HIGH'
          exit-code: '1'  # Falla el pipeline si hay CRITICAL

GitLab CI

trivy-scan:
  stage: test
  image: aquasec/trivy
  script:
    - trivy image --exit-code 1 --severity CRITICAL $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA

SBOM: Software Bill of Materials

Un SBOM es un inventario completo de todos los componentes de software en una aplicación. Es requerido por regulaciones como el Executive Order 14028 y el EU Cyber Resilience Act.

# Generar SBOM en formato CycloneDX
trivy image --format cyclonedx --output sbom.json mi-app:latest

# Generar SBOM en formato SPDX
trivy image --format spdx --output sbom.spdx mi-app:latest

Escaneo en producción

# Escanear todos los containers en ejecución
for container in $(docker ps --format '{{.Names}}'); do
    image=$(docker inspect --format '{{.Config.Image}}' $container)
    trivy image --severity HIGH,CRITICAL $image
done

# Escanear clúster de Kubernetes
trivy k8s --report summary cluster

Personalización con .trivyignore

# Ignorar CVEs específicos con justificación
cat > .trivyignore << 'EOF'
# CVE-2024-12345: Falso positivo, función no se usa
CVE-2024-12345
EOF

trivy image --ignorefile .trivyignore mi-app:latest

Conclusión

Trivy hace que la seguridad de contenedores sea simple. Un solo comando, múltiples tipos de escaneo, integración nativa con CI/CD. Si todavía no lo tienes en tu pipeline, es hora de agregarlo.


Herramientas relacionadas: OPNsense (firewall), Wireshark (análisis de red)

Artículos relacionados:

Aviso legal: Este contenido es estrictamente educativo. CyberFlows no apoya actividades ilegales. Úsalo solo en entornos autorizados.

[Espacio publicitario — AdSense]

Artículos Relacionados

Newsletter de Ciberseguridad

Resumen semanal con los mejores artículos, CVEs críticos y tendencias del mercado. Sin spam.

🔒 Tu email no se compartirá. Puedes darte de baja en cualquier momento.