CVE-2026-90559
large5· 3 readsOut-of-bounds write in snappy-java uncompress() enables remote JVM crash (DoS)
snappy-java through 1.1.10.8 contains an out-of-bounds write (CWE-787) because Snappy.uncompress(ByteBuffer, ByteBuffer) never validates that the destination buffer's capacity can hold the decompressed output. An attacker who can supply compressed data to an application that calls this overload with a too-small destination buffer can send a valid Snappy stream that expands past the buffer's boundaries, causing out-of-bounds writes and terminating the JVM. The documented impact is denial of service — CVSS 4.0 rates it 8.7 (high) because it is remotely reachable with no privileges or user interaction and has high availability impact — although no confidentiality or integrity impact is documented. Any Java application embedding snappy-java up to and including 1.1.10.8 that decompresses untrusted input via this overload is affected, a pattern common in big-data middleware (e.g., Kafka, Spark, Hadoop, Cassandra) that links snappy-java as a dependency. No public proof of concept exists, the flaw is not on the CISA KEV, and no exploitation in the wild is known.
What to do: Upgrade snappy-java to the latest available release, since every version through 1.1.10.8 is vulnerable. If you cannot upgrade immediately, add a call-site check that the compressed stream's advertised uncompressed length does not exceed the destination buffer's capacity before invoking Snappy.uncompress(ByteBuffer, ByteBuffer), and reject oversized inputs. Audit services that accept Snappy-compressed payloads from untrusted clients — such as message brokers, RPC frameworks, and network decompression paths — as these represent the realistic attack surface.
| Xerial (snappy-java open source project) snappy-java | All versions through 1.1.10.8 (inclusive) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
snappy-java through 1.1.10.8 contains an out-of-bounds write vulnerability in Snappy.uncompress(ByteBuffer, ByteBuffer) because destination buffer capacity is never validated against decompressed size. Attackers can supply valid compressed data that decompresses larger than the destination buffer, causing writes past buffer boundaries and JVM termination.
- Weakness
- CWE-787
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
In the news0 stories
No ingested article mentions this CVE yet.