Skip to content

SOLR-18013: Split lz4-java CVEs by fix boundary and emit a matchable org.lz4 purl - #228

Merged
epugh merged 1 commit into
apache:mainfrom
epugh:SOLR-18013-lz4-vex
Aug 13, 2026
Merged

SOLR-18013: Split lz4-java CVEs by fix boundary and emit a matchable org.lz4 purl#228
epugh merged 1 commit into
apache:mainfrom
epugh:SOLR-18013-lz4-vex

Conversation

@epugh

@epugh epugh commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

The three lz4-java CVEs were bundled in a single entry with one range, but CVE-2026-59949 has a different fix boundary than the SOLR-18013 pair, so they need to be separated (per the version-range-driven split convention).

CVE fixed in lz4-java released 9.8.0–10.0.0 (1.8.0) dev branches (fork 1.10.1)
CVE-2025-12183 1.8.1 affected fixed
CVE-2025-66566 1.10.1 affected fixed
CVE-2026-59949 1.11.1 affected still affected (1.10.1 < 1.11.1)

So:

  • New 2026-08-13-cve-2025-12183.mdCVE-2025-12183 + CVE-2025-66566, versions: "9.8.0-10.0.0". Both fixed by the branch_9x/branch_10x/main migration to the community fork at.yawk.lz4:lz4-java 1.10.1, so 9.11/10.1 won't be affected. (This upgrade didn't require Kafka to update first — Solr replaced Kafka's transitive org.lz4:lz4-java with the fork directly.)
  • 2026-07-31-cve-2026-59949.md — reduced to CVE-2026-59949 alone. It needs lz4-java 1.11.1, which is on no branch yet (all three dev branches are on 1.10.1), so 9.11/10.1 will still bundle an affected version and the range will need to extend once they ship.

Also adds org.lz4:lz4-java (9.8.0–10.0.0 → 1.8.0) to solr-dependency-versions.json so both entries now emit a matchable pkg:maven/org.lz4/lz4-java@1.8.0 product purl instead of a bare, unmatchable id.

lz4-java first shipped in Solr 9.8.0 (via the cross-dc module); ≤9.7.0 and 8.x ship none. Disposition stays not_affected (reachable only through the optional cross-dc Kafka client, never from untrusted input). Site builds, all three statements emit the correct purl, vexctl merge passes.

The three lz4-java CVEs were bundled in one entry, but CVE-2026-59949 has a
different fix boundary than the SOLR-18013 pair:

- CVE-2025-12183 (fix 1.8.1) + CVE-2025-66566 (fix 1.10.1): fixed by the
  branch_9x/branch_10x/main migration to the fork at.yawk.lz4:lz4-java 1.10.1,
  so the upcoming 9.11/10.1 are not affected. -> own file, 9.8.0-10.0.0.
- CVE-2026-59949 (fix 1.11.1): NOT fixed by the 1.10.1 fork bump; all three dev
  branches are still on 1.10.1, so 9.11/10.1 will remain affected. -> stays in
  its own file, range will extend once those release.

Also add org.lz4:lz4-java to the dependency map (9.8.0-10.0.0 -> 1.8.0) so these
statements emit a matchable pkg:maven/org.lz4/lz4-java@1.8.0 purl instead of a
bare, unmatchable id.

Disposition unchanged (not_affected; lz4-java is reachable only via the optional
cross-dc Kafka client, not from untrusted input).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@epugh epugh changed the title Split lz4-java CVEs by fix boundary and emit a matchable org.lz4 purl SOLR-18013: Split lz4-java CVEs by fix boundary and emit a matchable org.lz4 purl Aug 13, 2026
@epugh
epugh merged commit e2e945c into apache:main Aug 13, 2026
1 check 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