GitHub Advisoryadvisory · Maven

GHSA-xqrx-qh46-34m7 snappy-java: JVM crash from unchecked ranges in Snappy.arrayCopy and SnappyOutputStream.rawWrite

MEDIUM Published 2026-10-27 Modified 2026-10-27 Official page ↗
Aliases
CVE-2026-116590
Ecosystem
Maven
Packages
org.xerial.snappy:snappy-java
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-129, CWE-787
Reviewed
2026-10-27

Affected packages

• Maven org.xerial.snappy:snappy-java: < 1.1.10.9 → fixed in 1.1.10.9

Description

Impact `Snappy.arrayCopy(Object src, int offset, int byteLength, Object dest, int destOffset)` called a native `memcpy` without validating the ranges. A negative or oversized `byteLength` or offset read or wrote outside the arrays and crashed the JVM. `SnappyOutputStream.rawWrite` and `SnappyInputStream.rawRead`, and therefore the typed-array `write`/`read` methods, pass caller-supplied ranges to this method. Patches Fixed in 1.1.10.9 (#741). `Snappy.arrayCopy` checks both ranges before copying. The stream `read`/`write` methods validate offsets and lengths, and reject typed-array ranges whose byte size overflows `int`. Workarounds Validate offsets and lengths before calling these methods.

Related

Alias · CVE (1)

  • CVE-2026-116590 snappy-java is a Java port of the snappy, a fast C++ compresser/decompresser developed by Google. vulnerability

Weakness · CWE (2)

  • CWE-129 Improper Validation of Array Index weakness
  • CWE-787 Out-of-bounds Write weakness

References