fix(commerce-backend): remediar 3/5 CVE CRITICAL, documentar excepcion para 2
Run 138 de build-medusa.yaml encontro 5 CVE CRITICAL reales (no falsos positivos) al escanear la imagen con Trivy: Remediados en el Dockerfile (verificado localmente con Trivy real, exit 0): - CVE-2026-33845 / CVE-2026-42010 (libgnutls30, base Debian): apt upgrade puntual del paquete. - CVE-2026-59873 (tar vendorizado dentro del npm CLI global de la imagen base node:*-slim): se elimina /usr/local/lib/node_modules/npm completo -- no es una dependencia real del proyecto (el CMD nunca invoca npm en runtime), asi que no hay nada que "actualizar". Documentados como excepcion en workloads/commerce-backend/.trivyignore (con --ignorefile solo en este workflow, no afecta a build.yaml ni deploy-docs.yaml): - CVE-2024-24790 / CVE-2025-68121 (Go stdlib embebido en el binario de esbuild que trae [email protected], dependencia interna de @medusajs/admin-sdk). Se probo el fix real (override de esbuild a una version mas nueva) y rompio el build del admin panel -- [email protected] fija "esbuild: ^0.21.3" como dependencia directa, y esbuild >=0.24 cambio el manejo de targets de transpilacion que vite 5 espera. No existe un patch dentro de la serie 0.21.x con un Go toolchain mas nuevo. Requiere subir @medusajs/admin-sdk/vite en un cambio aparte, fuera de alcance de este pipeline de seguridad.
This commit is contained in:
@@ -220,6 +220,10 @@ jobs:
|
||||
# a los 4m52s con el timeout default, en un run donde el host
|
||||
# venía de terminar el docker build (ver hallazgo de rendimiento
|
||||
# de Gitea/runner en docs/playbooks).
|
||||
# --ignorefile: excepciones puntuales y documentadas (ver
|
||||
# workloads/commerce-backend/.trivyignore) para CVEs sin fix de
|
||||
# bajo riesgo disponible hoy. No debilita el gate en general --
|
||||
# cualquier otra CRITICAL sigue bloqueando igual.
|
||||
- name: Escanear imagen (Trivy) — CRITICAL bloquea
|
||||
shell: bash
|
||||
run: |
|
||||
@@ -229,6 +233,7 @@ jobs:
|
||||
--exit-code 1 \
|
||||
--ignore-unfixed \
|
||||
--timeout 15m0s \
|
||||
--ignorefile "${APP_DIR}/.trivyignore" \
|
||||
"${IMAGE_NAME}:${{ steps.vars.outputs.VERSION }}"
|
||||
|
||||
# HIGH solo informa por ahora — mismo criterio que el frontend.
|
||||
|
||||
Reference in New Issue
Block a user