Skip to content

Document the mc-image-helper CVEs as assessed and accepted - #18

Merged
OpenSource-For-Freedom merged 1 commit into
mainfrom
docs/cve-risk-acceptance
Aug 14, 2026
Merged

Document the mc-image-helper CVEs as assessed and accepted#18
OpenSource-For-Freedom merged 1 commit into
mainfrom
docs/cve-risk-acceptance

Conversation

@OpenSource-For-Freedom

Copy link
Copy Markdown
Owner

Six open Trivy findings, one critical. All are inside the base image mc-image-helper, none are dependencies this repo chooses or can upgrade.

CVE Severity Library
CVE-2022-36944 CRITICAL scala-library 2.13.1
CVE-2026-54513 / 54512 HIGH jackson-databind 3.1.3
CVE-2026-40984 / 40983 HIGH micrometer-core 1.16.5
GHSA-r7wm-3cxj-wff9 error jackson-core 3.1.3

Bumping again will not help, and I checked rather than assuming

PR #16 bumped the base image specifically to clear the micrometer pair, and said in advance that the Trivy scan would be the verdict. The verdict is in: they are still here.

Checked again today: a newer java21 build exists, but MC_HELPER_VERSION on itzg master is still 1.66.0, which is what we already run. A further digest bump would change the image without changing a single affected library. That is churn dressed as remediation.

The fix has to come from upstream updating mc-image-helper dependencies.

The assessment is not uniform, because the CVEs are not

  • micrometer: needs a Micrometer-instrumented gRPC or HTTP endpoint. mc-image-helper serves neither and never listens. Not exploitable.
  • scala-library: needs deserialization of attacker-controlled Java serialized data. It never accepts that. Not exploitable in this configuration, but it carries the top score so it gets reviewed, not waved away.
  • jackson: this one is different and is written up as such. mc-image-helper does parse JSON fetched from remote APIs at container start, so remote data really does reach a vulnerable parser. Mitigated by HTTPS, immutable pinned URLs, and a single parse at boot rather than continuous exposure. Narrow, but not zero. Saying otherwise would have been the comfortable answer rather than the true one.

Container hardening bounds all of it: read-only rootfs, uid 1000, all caps dropped, no-new-privileges, pids capped, no Docker socket.

Explicitly not adding a Trivy ignore file

Suppressing these hides the critical and trains everyone to ignore the scanner, which matters far more the day something lands in our own code. Six assessed, documented findings beat zero findings and a suppression list nobody rereads. The noise is the price of the signal.

Review trigger

MC_HELPER_VERSION moving past 1.66.0, not a calendar date, with a backstop review at 2026-11-14.

Next action is an upstream report to itzg/mc-image-helper, which fixes this for every user of the image rather than just us.

Six open Trivy findings, one critical, all inside the base image's
mc-image-helper and none of them dependencies this repo chooses or can
upgrade: scala-library 2.13.1 (CVE-2022-36944, critical), jackson-databind
3.1.3 (two highs), jackson-core 3.1.3, and micrometer-core 1.16.5 (the
two highs PR #16 tried and failed to clear).

Bumping the base image again would be churn, not a fix. MC_HELPER_VERSION
on itzg's master is still 1.66.0, the version already running here, so a
newer digest would change the image without changing a single affected
library. PR #16 said the Trivy scan would be the verdict on that bump;
the verdict is in and it did not carry the fix.

The exposure assessment is deliberately not uniform, because the CVEs are
not equivalent. micrometer needs a gRPC or HTTP endpoint that
mc-image-helper does not serve, and scala needs Java deserialization it
never performs. But jackson is different and is written up as such: the
tool does parse JSON fetched from remote APIs at container start, so
there is a real if narrow path there. Calling that zero-exposure would
have been the comfortable answer rather than the true one.

Deliberately NOT adding a Trivy ignore file. Suppressing these hides the
critical and trains everyone to ignore the scanner, which matters far
more the day a finding lands in our own code. Six assessed and documented
findings beat zero findings and a suppression list nobody rereads.

Trigger for re-evaluation is MC_HELPER_VERSION moving past 1.66.0, not a
calendar date, with a backstop review at 2026-11-14.
@OpenSource-For-Freedom
OpenSource-For-Freedom merged commit 7b7c394 into main Aug 14, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant