CVE-2023-34455 json
snappy-java's unchecked chunk length leads to DoS
published 2023-06-15 3 y ago modified 2026-09-10 1 mo ago also GHSA-qcwq-55hx-v3vh , EUVD-2023-1867
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.8%
- EPSS 1.8% chance of exploitation in 30 days, percentile 78%
- public exploits
- 0
- none known
Summary
snappy-java is a fast compressor/decompressor for Java. Due to use of an unchecked chunk length, an unrecoverable fatal error can occur in versions prior to 1.1.10.1.
The code in the function hasNextChunk in the fileSnappyInputStream.java checks if a given stream has more chunks to read. It does that by attempting to read 4 bytes. If it wasn’t possible to read the 4 bytes, the function returns false. Otherwise, if 4 bytes were available, the code treats them as the length of the next chunk.
In the case that the `compressed` variable is null, a byte array is allocated with the size given by the input data. Since the code doesn’t test the legality of the `chunkSize` variable, it is possible to pass a negative number (such as 0xFFFFFFFF which is -1), which will cause the code to raise a `java.lang.NegativeArraySizeException` exception. A worse case would happen when passing a huge positive value (such as 0x7FFFFFFF), which would raise the fatal `java.lang.OutOfMemoryError` error.
Version 1.1.10.1 contains a patch for this issue.
Patch / fix
- maven org.xerial.snappy:snappy-java 1.1.10.1
- xerial snappy-java 1.1.10.1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-34455 updated cvss 5.9
snappy-java: Unchecked chunk length leads to DoS
-
Red Hat OpenShift Serverless snappy-javaaffected: no fix planned “Will not fix”
-
Red Hat build of Debezium 1 snappy-java Red Hat build of Debezium 2 snappy-java Red Hat build of OptaPlanner 8 snappy-javaaffected: no fix available
-
Red Hat Decision Manager 7 snappy-java Red Hat Enterprise Linux 8 log4j, log4j-jcl, log4j-web, log4j-slf4j Red Hat Enterprise Linux 9 log4j, log4j-jcl, log4j-slf4jaffected: no fix planned “Will not fix”
-
Red Hat Integration Camel Quarkus 2 snappy-javaaffected: no fix available
-
Red Hat JBoss Data Grid 7 snappy-java Red Hat JBoss Enterprise Application Platform 6 snappy-java Red Hat JBoss Fuse Service Works 6 snappy-javaaffected: no fix planned “Out of support scope”
-
Red Hat OpenShift Application Runtimes snappy-javaaffected: no fix planned “Will not fix”
-
Red Hat OpenShift Container Platform 3.11 openshift3/ose-metrics-cassandraaffected: no fix planned “Out of support scope”
-
Red Hat Process Automation 7 snappy-java Red Hat Software Collections snappy-javaaffected: no fix planned “Will not fix”
show 9 moreshow fewer
-
Red Hat streams for Apache Kafka snappy-javaaffected: no fix available
-
Red Hat AMQ Broker 7fixed: vendor fix RHSA-2024:6893
-
Red Hat AMQ Streams 2.5.0fixed: vendor fix RHSA-2023:5165
-
Red Hat build of Quarkus 2.13.9fixed: vendor fix RHSA-2023:7700
-
Red Hat RHINT Camel-K 1.10.5fixed: vendor fix RHSA-2024:0148
-
Red Hat RHINT Camel-Springboot 3.18.3.2fixed: vendor fix RHSA-2023:5147
-
Red Hat RHINT Camel-Springboot 3.20.2fixed: vendor fix RHSA-2023:5148
-
Red Hat RHINT Service Registry 2.5.4 GAfixed: vendor fix RHSA-2023:7653
-
Red Hat A-MQ Clients 2 snappy-java Red Hat Logging Subsystem for Red Hat OpenShift openshift-logging/elasticsearch6-rhel8 Red Hat Data Grid 8 snappy-java Red Hat Fuse 7 snappy-java Red Hat JBoss Enterprise Application Platform 7 snappy-java Red Hat JBoss Enterprise Application Platform 8 snappy-javanot affected: vulnerable code not present
+2 more productsfewer
Red Hat JBoss Enterprise Application Platform Expansion Pack snappy-java Red Hat JBoss Fuse 6 snappy-java
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 22 mo ago
Exploit prediction
1.76% chance of exploitation in the next 30 days, higher than 78% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/xerial/snappy-java/security/advisories/GHSA-qcwq-55hx-v3vh referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | org.xerial.snappy:snappy-java | <1.1.10.1 |
1.1.10.1 |
Affected products
- xerial snappy-java
Classification
- Weakness
-
- CWE-770 Allocation of Resources Without Limits or Throttling
References
-
github.com
/xerial/snappy-java/commit/3bf67857fcf70d9eea56eed4af7c925671e8eaea
web, patch
-
github.com
/xerial/snappy-java/security/advisories/GHSA-qcwq-55hx-v3vh
web, exploit, vendor-advisory
-
github.com
/xerial/snappy-java/blob/05c39b2ca9b5b7b39611529cc302d3d796329611/src/main/java/org/xerial/snappy/SnappyInputS
web, issue-tracking
-
github.com
/xerial/snappy-java/blob/master/src/main/java/org/xerial/snappy/SnappyInputStream.java
web, issue-tracking
-
security.netapp.com
/advisory/ntap-20230818-0009/
third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2023-34455
advisory
-
github.com
/xerial/snappy-java
package
-
security.netapp.com
/advisory/ntap-20230818-0009
web
Sources
- CVE List CVE-2023-34455
- GitHub Advisory GHSA-qcwq-55hx-v3vh
- NVD CVE-2023-34455
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.