chore(security): clear the trivy CVE backlog (direct bumps + tracked ignores) - #598
Open
jdoucy wants to merge 6 commits into
Open
chore(security): clear the trivy CVE backlog (direct bumps + tracked ignores)#598jdoucy wants to merge 6 commits into
jdoucy wants to merge 6 commits into
Conversation
The three deferred CVE exceptions (picomatch, torch, pillow) expired on 2026-06-30, so trivy has been failing on every PR since. Extend to early September; the torch/pillow refresh (pending GCP/CUDA validation) remains the real fix, tracked separately. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Trivy has been red on every PR for a month. This clears it: - Direct fixes (verified, lockfile refreshed, rollup-linux binaries intact): @opentelemetry/sdk-node 0.214->0.217 (+exporter-prometheus), axios ->1.18.1, next ->15.5.22 - The remaining HIGH/CRITICAL are transitive (overrides banned by repo policy), npm-bundled in the base node image, or the docling/torch Python chain — ignored with a 2026-09-05 expiry, each with a reason, tracked for real remediation in #601 (transformers RCE, tar CRITICAL, base-image bump, transitive sweep) - Also extends the 3 previously-expired ignores (picomatch/torch/pillow) to the same date Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Trivy echoed the ignorefile but suppressed nothing (even non-expired entries), which points to date-only expired_at not being honored by trivy v0.69. Switch to full RFC3339 (…T00:00:00Z).
'reason' is not a field in trivy's YAML ignore schema; a strict parse drops the whole file, so nothing was ever suppressed (trivy still echoes the raw text, which masked it). The correct note field is 'statement'.
…lean Local trivy (v0.69.3, exact CI flags) on api/cpu-workers/gpu-workers images now reports zero HIGH/CRITICAL: - npm update lifted the transitive protobufjs 7.6.0 -> 7.6.5 - the 8.0.1 copy is pinned exactly by @opentelemetry/otlp-transformer (overrides banned); its 4 CVEs (CVE-2026-44289/44290/44291/44293, fixed in 8.0.2) are ignored to 2026-09-05, tracked in #601. Telemetry serialization only, no attacker-controlled decoding. The prior reds were these protobufjs CVEs, absent from the scan snapshot the ignore list was first built from.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Trivy has been failing on every PR for ~a month (visible on #585, #582, #570). This clears it, splitting real fixes from tracked deferrals.
Direct fixes (verified locally)
Lockfile refreshed with
--package-lock-only; the 39@rollup/rollup-linux-*optional binaries are intact (the documented CI-breakage trap), API typecheck green.@opentelemetry/sdk-node0.214 → 0.217.0 (+ transitiveexporter-prometheus0.217) — clears CVE-2026-44902axios→ 1.18.1 — clears GHSA-gcfj-64vw-6mp9next→ 15.5.22 — clears the three SSRF/DoS CVEs (64641/64645/64649)Deferred, ignored to 2026-09-05, tracked in #601
Each entry has a reason. Grouped:
transformers4.57.6 RCE (CVE-2026-4372, 5241) andpillow12.2→12.3 (10 HIGH) — pinned by the torch/GCP-CUDA chain. The RCE is only reachable via untrusted remote-code model loading (not our docling path), assessment noted in Security: remediate the HIGH/CRITICAL CVE backlog (transformers RCE, tar CRITICAL, base image, transitive deps) #601 — flagged here explicitly, not ignored silently.tarCRITICAL gzip-bomb DoS +sigstore,brace-expansion— build-time tooling, real fix is a base-image bump (Security: remediate the HIGH/CRITICAL CVE backlog (transformers RCE, tar CRITICAL, base image, transitive deps) #601).Standalone so it lands ahead of the feature PRs it unblocks.