GHSA-gwq9-9ffj-mvrv

    Dashboard / Vulnerabilities / GHSA-gwq9-9ffj-mvrv

    GHSA-gwq9-9ffj-mvrv

    Published: 27 Oct 2026Last Modified: 27 Oct 2026

    Summary: snappy-java: Heap buffer overflow in Snappy.uncompress*Array typed-array methods

    Details: ### Impact `Snappy.uncompressCharArray`, `uncompressShortArray`, `uncompressIntArray`, `uncompressLongArray`, `uncompressFloatArray` and `uncompressDoubleArray` sized the result array by dividing the declared uncompressed byte length by the element size, but native code wrote the full byte length. If the declared length is not a multiple of the element size, up to 7 bytes are written past the end of the Java array, corrupting the heap. ### Patches Fixed in 1.1.10.9 ([#739](https://github.com/xerial/snappy-java/pull/739)). These methods now reject uncompressed lengths that are not a multiple of the element size with `SnappyIOException`. ### Workarounds Check that `Snappy.uncompressedLength(input)` is a multiple of the element size before calling these methods.

    Affected packages

    Package

    Name: org.xerial.snappy:snappy-java

    Purl: pkg:maven/org.xerial.snappy/snappy-java

    Affected ranges

    Type: ECOSYSTEM

    Events:

    Introduced- 0
    Fixed -1.1.10.9

    Affected versions

    1.0.1-rc1
    1.0.1-rc2
    1.0.1-rc3
    1.0.1-rc4
    1.0.3
    1.0.3-rc1
    1.0.3-rc2
    1.0.3-rc3
    1.0.3-rc4
    1.0.3.1
    1.0.3.2
    1.0.3.3
    1.0.4
    1.0.4.1
    1.0.5
    1.0.5-M1
    1.0.5-M2
    1.0.5-M3
    1.0.5-M4
    1.0.5.1
    1.0.5.2
    1.0.5.3
    1.0.5.4

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High