Grype 0.78.0 Powered by Anchore Vulnerability DB · NVD · GitHub Advisories · OSV
Informe de Vulnerabilidades en Contenedores
DataSphere Analytics v2.4.1 · 7 imágenes escaneadas · 42 CVEs detectados
BUILD BLOQUEADO — CVEs críticos requieren remediación inmediata
18 Jun 2026 · 09:14 UTC
Rama: main · Commit: a3f8c21
Ejecutado por: GitHub Actions / security.yml
Duración escaneo: 2m 47s
Total CVEs
42
7 imágenes · 3 ignorados
Críticos
4
CVSS ≥ 9.0
Altos
11
CVSS 7.0–8.9
Medios
19
CVSS 4.0–6.9
Bajos
8
CVSS < 4.0
Con fix
31
73% resoluble ahora
🐋 Estado por imagen de contenedor
datasphere/api :v2.4.1
CRIT 2 HIGH 4 MED 7 LOW 2
node:18-alpine · OpenSSL 3.0.2 · curl 7.88.1
datasphere/worker :v2.4.1
CRIT 2 HIGH 3 MED 5 LOW 3
python:3.11-slim · libssl 3.0.2 · urllib3 1.26.12
nginx :1.25.3
HIGH 3 MED 4 LOW 2
debian:bookworm-slim · OpenSSL 3.0.11 · zlib 1.2.13
datasphere/frontend :v2.4.1
HIGH 1 MED 2 LOW 1
node:18-alpine · vite 4.3.1 · react 18.2.0
postgres :15.4
MED 1 LOW 0 OK
debian:bookworm · Sin CVEs críticos/altos
node :18-alpine
Sin críticos LOW 0
alpine:3.18 · node 18.19.1 · npm 10.2.4
🔴 CVEs Críticos y Altos — Requieren acción inmediata
Vulnerabilidades prioritarias (CVSS ≥ 7.0) 15 de 42 total · ordenado por CVSS desc · 3 ignorados en .grype.yaml
CVE Severidad CVSS EPSS Paquete Versión actual Fix disponible Imagen afectada Descripción
CVE-2024-0727 Crítico 9.8 38.2% openssl 3.0.2-0ubuntu1.14 3.0.2-0ubuntu1.15 api worker PKCS12 null-pointer dereference → DoS / RCE potencial
CVE-2023-44487 Crítico 9.8 55.7% nghttp2 1.51.0-1 1.57.0-1 api nginx HTTP/2 Rapid Reset Attack (CVSS máximo explorado activamente)
CVE-2023-5363 Crítico 9.1 22.4% openssl 3.0.2 3.1.4 worker Incorrect cipher key and IV length processing en EVP_EncryptInit_ex2
CVE-2024-2408 Crítico 9.1 18.9% curl 7.88.1-10+deb12u4 8.7.1 api HTTP/2 CONTINUATION flood → DoS remoto sin autenticación
CVE-2024-5535 Alto 8.6 8.1% openssl 3.0.11 3.0.14 nginx SSL_select_next_proto buffer overread → info leak / OOB read
CVE-2023-48795 Alto 8.1 12.3% openssh 9.3p1 9.6p1 api worker Terrapin attack — truncación del handshake SSH via ChaCha20-Poly1305
CVE-2023-46218 Alto 8.1 5.6% curl 7.88.1 8.4.0 api Mixed-case cookie injection → cookie exfiltration en requests HTTPS
CVE-2023-45853 Alto 7.8 3.4% zlib 1.2.11 1.3.0 nginx worker MiniZip integer overflow → heap buffer overflow al comprimir archivos
CVE-2024-4603 Alto 7.5 4.8% openssl 3.0.2 3.2.2 api worker Excesivo procesado de parámetros DSA → DoS en TLS handshake
CVE-2023-40217 Alto 7.5 6.2% python3.11 3.11.4 3.11.5 worker SSLSocket pre-close data bypass → elude verificación TLS en servidores
CVE-2024-3094 Alto 7.2 9.0% xz-utils 5.4.5 5.4.6 worker XZ/liblzma supply-chain backdoor (CISA KEV) — remover paquete si no usado
CVE-2023-29491 Alto 7.1 2.1% ncurses 6.4 6.4-20230715 api worker Local memory corruption vía variables TERMINFO malformadas
CVE-2024-28834 Alto 7.0 1.8% gnutls38 3.7.9 3.8.4 nginx Timing side-channel en ECDH con clave privada → key recovery
CVE-2024-1737 Alto 7.0 1.2% bind9 9.18.19 9.18.28 api Resolver cache llenado excesivo → degrado de rendimiento / DoS
CVE-2024-6387 Alto 7.0 14.6% openssh 9.3p1 9.8p1 api worker regreSSHion — race condition en signal handler → RCE remoto sin auth
⚙️ Configuración generada para DataSphere CI/CD
GitHub Actions .github/workflows/security.yml
name: Vulnerability Scan
on: [push, pull_request]
jobs:
  grype-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Build datasphere/api
        run: docker build -t datasphere/api:${{ github.sha }} ./api

      - name: Generate SBOM
        uses: anchore/sbom-action@v0
        with:
          image: datasphere/api:${{ github.sha }}
          output-file: sbom.spdx.json

      - name: Scan vulnerabilities
        uses: anchore/scan-action@v4
        id: scan
        with:
          image: datasphere/api:${{ github.sha }}
          fail-build: true
          severity-cutoff: high
          output-format: sarif

      - name: Upload to GitHub Security
        if: always()
        uses: github/codeql-action/upload-sarif@v3
        with:
          sarif_file: ${{ steps.scan.outputs.sarif }}
Grype Config .grype.yaml
# DataSphere Analytics — Grype config v1.0
fail-on-severity: high

db:
  auto-update: true
  validate-age: true
  max-allowed-built-age: 120h

ignore:
  # CVE-2023-12345 — no usamos la feature afectada
  - vulnerability: CVE-2023-12345
    reason: "Feature no utilizada en datasphere/api"

  # Dependencias solo en tests no llegan a prod
  - package:
      location: "**/test/**"
    reason: "No llegan a la imagen de producción"

  # Aislado en red interna — sin exposición pública
  - vulnerability: CVE-2024-1737
    package:
      name: bind9
    reason: "DNS bind9 solo escucha en red interna Docker"

output:
  - table
  - sarif
  - json
🛠️ Plan de remediación priorizado
P1
Actualizar imagen base api/worker — OpenSSL + nghttp2
CVE-2024-0727 + CVE-2023-44487 (CVSS 9.8 · explotados activamente). Cambiar FROM a node:20-alpine3.19 y python:3.12-slim-bookworm que incluyen las versiones parchadas.
FROM node:20-alpine3.19  # api   |   FROM python:3.12-slim-bookworm  # worker
Esfuerzo
Bajo
~30 min
P1
Parchear OpenSSH — CVE-2024-6387 (regreSSHion) RCE sin auth
Vulnerabilidad crítica OpenSSH 9.3p1. Actualizar a 9.8p1 vía apt-get en Dockerfile. Si OpenSSH no es necesario en el contenedor, eliminar el paquete completamente.
RUN apt-get install -y openssh-server=1:9.8p1-1  # o bien: apt-get remove openssh-server
Esfuerzo
Bajo
~15 min
P1
Eliminar xz-utils del worker — CVE-2024-3094 supply-chain backdoor
xz-utils 5.4.5 contiene backdoor en CISA KEV. Si la compresión XZ es necesaria, usar la versión 5.4.6 limpia. Si no se usa, eliminar el paquete del contenedor.
RUN apt-get remove -y xz-utils && apt-get autoremove -y
Esfuerzo
Bajo
~10 min
P2
Actualizar nginx a 1.26.1 + parchear OpenSSL 3.0.14
CVE-2024-5535 + CVE-2023-44487 en nginx. Usar imagen oficial nginx:1.26.1-alpine que incluye OpenSSL 3.3.0 y nghttp2 actualizado. Validar configuraciones en staging.
FROM nginx:1.26.1-alpine   # resuelve CVE-2024-5535, CVE-2023-44487, CVE-2024-28834
Esfuerzo
Medio
~2h (tests)
P2
Actualizar curl a 8.7.1 en imagen api
CVE-2024-2408 + CVE-2023-46218. Actualizar curl vía apt-get en el Dockerfile o usar una imagen base más reciente que incluya curl parchado.
RUN apt-get update && apt-get install -y --no-install-recommends curl=8.7.1-1
Esfuerzo
Bajo
~20 min
P3
Migrar a imágenes distroless para reducir superficie de ataque
A medio plazo, migrar datasphere/api y datasphere/worker a Google Distroless o Chainguard Images. Reduce el número de paquetes de ~120 a ~15, eliminando la mayoría de CVEs de sistema operativo.
FROM gcr.io/distroless/nodejs20-debian12  # api  |  FROM cgr.dev/chainguard/python:latest-dev  # worker
Esfuerzo
Alto
~1 sprint