Description
zstd-jni versions 1.5.5-6 through 1.5.7-13 contain an out-of-bounds read vulnerability in Zstd.getFrameContentSize that fails to validate negative srcPosition arguments. Attackers can supply negative offset values that bypass bounds checks and reach the native frame-header parser, causing out-of-bounds memory reads that lead to information disclosure or JVM crashes.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| luben | zstd-jni | 1.5.5-6 – < 1.5.7-14 | 1.5.7-14 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | zstd-jni-java | 1.5.7-23+ds-1 | — |
| Debian 13 | zstd-jni-java | No fix yet | — |
| Debian 12 | zstd-jni-java | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | zstd-jni-java | No fix yet | — |
| Ubuntu 26.04 LTS | zstd-jni-java | No fix yet | — |
| Ubuntu 24.04 LTS | zstd-jni-java | No fix yet | — |
References
- GitHub Security Advisory (GHSA-rm53-6wf5-f34m) vendor-advisory
- Fix commit: reject a negative source position and size patch
- Upper-bound-only bounds check at v1.5.7-13 technical-description
- Native routine that offsets the critical array pointer without re-validating technical-description
- zstd-jni v1.5.7-14 Release Notes release-notes
- luben/zstd-jni product
- VulnCheck Advisory: zstd-jni 1.5.5-6 through 1.5.7-13 Out-of-Bounds Read via Negative Offset third-party-advisory