snappy-java's unchecked chunk length leads to DoS
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Partial Red Hat: 7 fixed, 16 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-770.
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| xerial | snappy-java | before 1.1.10.1 | 1.1.10.1 | Patch available | CNA |
| — | org.xerial.snappy:snappy-java (Maven) | before 1.1.10.1 | 1.1.10.1 | Patch available | GHSA-qcwq-55hx-v3vh |
- snappy-java Vendorxerial Affected before 1.1.10.1 Fixed in 1.1.10.1 Patch available CNA
- org.xerial.snappy:snappy-java (Maven) Vendor— Affected before 1.1.10.1 Fixed in 1.1.10.1 Patch available GHSA-qcwq-55hx-v3vh
Remediation
- Fix · CNA snappy-java (xerial) Fixed in 1.1.10.1
- Fix · GHSA-qcwq-55hx-v3vh org.xerial.snappy:snappy-java (Maven) Fixed in 1.1.10.1 Advisory →
Red Hat 7 advisories
- RHSA-2024:6893 Released 2024-09-19 · Red Hat rating ModerateRed Hat AMQ Broker 7.12.0 release and security update
- Red Hat AMQ Broker 7
- RHSA-2024:0148 Released 2024-01-10 · Red Hat rating ImportantRed Hat Integration Camel K 1.10.5 release and security update
- RHINT Camel-K 1.10.5
- RHSA-2023:7700 Released 2023-12-07 · Red Hat rating ImportantRed Hat build of Quarkus 2.13.9 release and security update
- Red Hat build of Quarkus 2.13.9
Show 4 more Red Hat advisories
- RHSA-2023:7653 Released 2023-12-05 · Red Hat rating ImportantService Registry (container images) release and security update [2.5.4 GA]
- RHINT Service Registry 2.5.4 GA
- RHSA-2023:5165 Released 2023-09-14 · Red Hat rating ImportantRed Hat AMQ Streams 2.5.0 release and security update
- Red Hat AMQ Streams 2.5.0
- RHSA-2023:5148 Released 2023-09-13 · Red Hat rating ImportantRed Hat Integration Camel for Spring Boot 3.20.2 release and security update
- RHINT Camel-Springboot 3.20.2
- RHSA-2023:5147 Released 2023-09-13 · Red Hat rating ImportantRed Hat Integration Camel for Spring Boot 3.18.3.2 release and security update
- RHINT Camel-Springboot 3.18.3.2
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| OpenShift Serverless | Affected | No fix planned: Will not fix |
| Red Hat Decision Manager 7 | Affected | No fix planned: Will not fix |
| Red Hat Enterprise Linux 8 | Affected | No fix planned: Will not fix |
| Red Hat Enterprise Linux 9 | Affected | No fix planned: Will not fix |
| Red Hat Integration Camel Quarkus 2 | Affected | No fix yet |
| Red Hat JBoss Data Grid 7 | Affected | No fix planned: Out of support scope |
| Red Hat JBoss Enterprise Application Platform 6 | Affected | No fix planned: Out of support scope |
| Red Hat JBoss Fuse Service Works 6 | Affected | No fix planned: Out of support scope |
| Red Hat OpenShift Application Runtimes | Affected | No fix planned: Will not fix |
| Red Hat OpenShift Container Platform 3.11 | Affected | No fix planned: Out of support scope |
| Red Hat Process Automation 7 | Affected | No fix planned: Will not fix |
| Red Hat Software Collections | Affected | No fix planned: Will not fix |
| Red Hat build of Debezium 1 | Affected | No fix yet |
| Red Hat build of Debezium 2 | Affected | No fix yet |
| Red Hat build of OptaPlanner 8 | Affected | No fix yet |
| streams for Apache Kafka | Affected | No fix yet |
| RHINT Camel-K 1.10.5 | Fixed | RHSA-2024:0148 |
| RHINT Camel-Springboot 3.18.3.2 | Fixed | RHSA-2023:5147 |
| RHINT Camel-Springboot 3.20.2 | Fixed | RHSA-2023:5148 |
| RHINT Service Registry 2.5.4 GA | Fixed | RHSA-2023:7653 |
| Red Hat AMQ Broker 7 | Fixed | RHSA-2024:6893 |
| Red Hat AMQ Streams 2.5.0 | Fixed | RHSA-2023:5165 |
| Red Hat build of Quarkus 2.13.9 | Fixed | RHSA-2023:7700 |
Not affected: 8 products
- A-MQ Clients 2
- Logging Subsystem for Red Hat OpenShift
- Red Hat Data Grid 8
- Red Hat Fuse 7
- Red Hat JBoss Enterprise Application Platform 7
- Red Hat JBoss Enterprise Application Platform 8
- Red Hat JBoss Enterprise Application Platform Expansion Pack
- Red Hat JBoss Fuse 6
Timeline
- 2026-10-02 Threatist record created from CVE-2023-34455
- 2026-10-03 Alias added: GHSA-qcwq-55hx-v3vh
- 2026-10-09 Fix available: Red Hat build of Quarkus 2.13.9 · Red Hat
References
Advisory 2
Other 4
- https://github.com/xerial/snappy-java/blob/05c39b2ca9b5b7b39611529cc302d3d796329611/src/main/java/org/xerial/snappy/SnappyInputStream.java#L388
- https://github.com/xerial/snappy-java/blob/master/src/main/java/org/xerial/snappy/SnappyInputStream.java
- https://github.com/xerial/snappy-java
- https://security.netapp.com/advisory/ntap-20230818-0009
More xerial Snappy-java vulnerabilities
- TI-2023-23368 Missing upper bound check on chunk length in snappy-java CVSS 3.1HIGH 7.5
- TI-2023-17280 snappy-java's Integer Overflow vulnerability in compress leads to DoS CVSS 3.1HIGH 7.5
- TI-2023-17279 snappy-java's Integer Overflow vulnerability in shuffle leads to DoS CVSS 3.1HIGH 7.5
Sources
- CVE-2023-34455 · CVE Program
- CVE-2023-34455 · NVD
- FIRST EPSS
- GHSA-qcwq-55hx-v3vh · GitHub Advisory Database · CC BY 4.0
- CVE-2023-34455 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences