CVE-2018-10237 — guava
MEDIUMCVE-2018-10237 is a medium-severity (CVSS 5.9) CWE-770 vulnerability in com.google.guava:guava. A fix is available for com.google.guava:guava — see the affected versions and patch details below.
Denial of Service in Google Guava
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
CVE-2018-10237 by exploitation likelihood (EPSS) against impact (CVSS). Outside the shaded patch-first corner.
Where this sits among everything scored
Of 396,257 CVEs with a current EPSS score, this one falls in the < 10% band (highlighted). Counts from FIRST.org, log-scaled.
Real-World Exposure
com.google.guava:guava☕com.google.guava:guava-jdk5☕com.googlecode.guava-osgi:guava-osgi☕de.mhus.ports:vaadin-shared-deps☕org.hudsonci.lib.guava:guava☕org.sonatype.sisu:sisu-guavaReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.
Description
Unbounded memory allocation in Google Guava 11.0 through 24.x before 24.1.1 allows remote attackers to conduct denial of service attacks against servers that depend on this library and deserialize attacker-provided data, because the AtomicDoubleArray class (when serialized with Java serialization) and the CompoundOrdering class (when serialized with GWT serialization) perform eager allocation without appropriate checks on what a client has sent and whether the data size is reasonable.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| ☕Maven | com.google.guava:guava | ≥ 11.0&&< 24.1.1-android | 24.1.1-androidcom.google.guava:guava:24.1.1-android |
| ☕Maven | com.google.guava:guava-jdk5 | all versions | No fix |
| ☕Maven | com.googlecode.guava-osgi:guava-osgi | all versions | No fix |
| ☕Maven | de.mhus.ports:vaadin-shared-deps | all versions | No fix |
| ☕Maven | org.hudsonci.lib.guava:guava | all versions | No fix |
| ☕Maven | org.sonatype.sisu:sisu-guava | all versions | No fix |
Affected Products
guavagooglebanking paymentsoraclecommunications ip service activatororaclecustomer management and segmentation foundationoracledatabase serveroracleflexcube investor servicingoracleDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for com.google.guava:guava, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update com.google.guava:guava to 24.1.1-android or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2018-10237 is resolved across your whole dependency graph.
Workarounds
Do not deserialise data from untrusted sources: where the format allows it, restrict deserialisation to an explicit allowlist of expected types, and prefer a data-only format (JSON, Protobuf) over one that can reconstruct arbitrary objects until you can upgrade.
Fixing This On Your OS
If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.
Red Hat Openshift Application Runtimes: Eclipse Vert.x is not exploitable by this flaw, though the vulnerable code is a transient dependency to the product. This issue may be addressed in a future release.
| Product | Fixed in | Advisory |
|---|---|---|
| Red Hat JBoss EAP 7.1 | guava | RHSA-2018:2425 |
| Red Hat JBoss Enterprise Application Platform 6.4 | guava | RHSA-2018:2740 |
| Red Hat JBoss Enterprise Application Platform 6.4 for RHEL 5 | codehaus-jackson-0:1.9.9-14.redhat_7.1.ep6.el5 | RHSA-2018:2742 |
| Red Hat JBoss Enterprise Application Platform 6.4 for RHEL 6 | codehaus-jackson-0:1.9.9-14.redhat_7.1.ep6.el6 | RHSA-2018:2743 |
| Red Hat JBoss Enterprise Application Platform 6.4 for RHEL 7 | codehaus-jackson-0:1.9.9-14.redhat_7.1.ep6.el7 | RHSA-2018:2741 |
| Red Hat JBoss Enterprise Application Platform 7.1 for RHEL 6 | eap7-activemq-artemis-0:1.5.5.013-1.redhat_1.1.ep7.el6 | RHSA-2018:2423 |
| Red Hat JBoss Enterprise Application Platform 7.1 for RHEL 7 | eap7-activemq-artemis-0:1.5.5.013-1.redhat_1.1.ep7.el7 | RHSA-2018:2424 |
| Red Hat JBoss Enterprise Application Platform Continuous Delivery | guava | RHSA-2020:2562 |
Frequently Asked Questions
Is CVE-2018-10237 in your dependencies?
Find it across Maven, including transitive dependencies.