Google Guava: Denial of service via eager array allocation during deserialization
Summary
Google Guava allocates memory based on a size value in serialized data when deserializing CompactHashMap, CompactHashSet and MapMakerInternalMap objects, without limits. An attacker who can supply crafted Java serialization data to an application can exhaust memory and cause an OutOfMemoryError, resulting in a denial of service. Confidentiality and integrity are not affected. The issue is only reachable if the application deserializes untrusted data.
Affected
- Google Guava 4.0 through 33.7.1 (per the CVE description; the GHSA states all -jre and -android editions are affected)
Fixed in
- Google Guava 33.7.2 (-jre and -android)
- Distributions: SUSE SUSE-SU-2026:24263-1 ships the fix; some SUSE products were still shown as affected or in progress at the time of the snapshot
- HeroDevs NES for Google Guava v31.0.3 (paid extended support for legacy line)
- Debian fix status: Unknown.
Workaround
- Unknown beyond upgrading.
- If an upgrade is blocked, stop deserializing Java serialized data from untrusted sources or apply an allowlist deserialization filter.
Exploitation
- CISA SSVC: exploitation status PoC, not automatable.
- Feedly: public proof of concept; no confirmed in-the-wild exploitation.
- Not listed in CISA KEV.
- Reports of Metasploit modules and nuclei templates are unverified.
Our recommendation
- Inventory all Guava copies, including transitive dependencies, fat JARs and vendor applications, using an SBOM or scanner.
- Upgrade to Guava 33.7.2 or a vendor build that includes the fix; prioritise internet-facing or partner-facing Java services that deserialize data.
- If patching is delayed, block or restrict untrusted Java serialization input.
- Check vendor and framework updates, as they may lag behind.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- GitHub commit b931fe9 (fix) github.com
- Guava release 33.7.2 github.com
- GitHub Security Advisory GHSA-xxph-c9ww-hj94 github.com
- SUSE CVE tracker www.suse.com
- SUSE advisory SUSE-SU-2026:24263-1 linuxsecurity.com
- Tenable CVE record www.tenable.com
- HeroDevs NES vulnerability directory www.herodevs.com
- OpenCVE record app.opencve.io
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 16:45.
Original description (NVD)
Allocation of resources without limits or throttling (CWE-770) during Java object deserialization in Google Guava versions 4.0 through 33.7.1 allows an attacker to cause a Denial of Service via OutOfMemoryError. When deserializing CompactHashMap, CompactHashSet, or MapMakerInternalMap instances, Guava eagerly allocates an array based on a caller-specified size parameter without throttling, permitting memory exhaustion from crafted serialization streams.
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
