Vigilbase CVEConnect your agent

OSGeo GeoServer GeoTools Eval Injection Vulnerability

Exploited · KEV 2024-07-15Metasploit moduleCVE-2024-36401CWE-95

Exploited since 2024-07-15. 1 of 8 rule sources name it. Our CRS test: partly blocked.

Edge rules
1/8
Our test
Partly blocked
CVSS
9.8
EPSS
99.8% Top 0.1%
Posts, 14d
02026-10-20: 0 posts2026-10-21: 0 posts2026-10-22: 0 posts2026-10-23: 0 posts2026-10-24: 0 posts2026-10-25: 0 posts2026-10-26: 0 posts2026-10-27: 0 posts2026-10-28: 0 posts2026-10-29: 0 posts2026-10-30: 0 posts2026-10-31: 0 posts2026-11-01: 0 posts2026-11-02: 0 posts
Published
2024-07-01
GeoServer is an open source server that allows users to share and edit geospatial data. Prior to versions 2.22.6, 2.23.6, 2.24.4, and 2.25.2, multiple OGC request parameters allow Remote Code Execution (RCE) by unauthenticated users… More

GeoServer is an open source server that allows users to share and edit geospatial data. Prior to versions 2.22.6, 2.23.6, 2.24.4, and 2.25.2, multiple OGC request parameters allow Remote Code Execution (RCE) by unauthenticated users through specially crafted input against a default GeoServer installation due to unsafely evaluating property names as XPath expressions. The GeoTools library API that GeoServer calls evaluates property/attribute names for feature types in a way that unsafely passes them to the commons-jxpath library which can execute arbitrary code when evaluating XPath expressions. This XPath evaluation is intended to be used only by complex feature types (i.e., Application Schema data stores) but is incorrectly being applied to simple feature types as well which makes this vulnerability apply to **ALL** GeoServer instances. No public PoC is provided but this vulnerability has been confirmed to be exploitable through WFS GetFeature, WFS GetPropertyValue, WMS GetMap, WMS GetFeatureInfo, WMS GetLegendGraphic and WPS Execute requests. This vulnerability can lead to executing arbitrary code. Versions 2.22.6, 2.23.6, 2.24.4, and 2.25.2 contain a patch for the issue. A workaround exists by removing the `gt-complex-x.y.jar` file from the GeoServer where `x.y` is the GeoTools version (e.g., `gt-complex-31.1.jar` if running GeoServer 2.25.1). This will remove the vulnerable code from GeoServer but may break some GeoServer functionality or prevent GeoServer from deploying if the gt-complex module is needed.

Ask Vigil

AI · answers from this page
Ask about CVE-2024-36401: who's covered, what to patch first, how vendors compare. I cite sources and won't help with attacks.

Workers AI (Llama 3.3). Can be wrong: check the cited source.

Severity, decoded

CVSS 3.1
Critical · 9.8 / 10

Exploitable over the network, with no privileges and no user interaction, leading to full loss of confidentiality, integrity and availability.

Over the internetNo login neededNo user actionWorks reliablyFull compromise
How the score is built8 metrics
  • Attack vectorAn attacker can reach it over the internet; no access to your network needed.
    Network
  • Attack complexityNo special conditions are needed; the attack works reliably.
    Low
  • Privileges requiredNo account or login is needed.
    None
  • User interactionNo one has to click or open anything; the attack works on its own.
    None
  • ScopeThe damage stays within the vulnerable component.
    Unchanged
  • Confidentiality impactAn attacker can read all data the affected component holds, or the most sensitive parts of it.
    High
  • Integrity impactAn attacker can change any data or files the affected component protects.
    High
  • Availability impactAn attacker can take the component down completely or keep it from serving anyone.
    High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CISA's assessmentSSVC, from the CVE record
ExploitationActive

Attackers are exploiting this in the wild.

AutomatableYes

Attackers can script the attack end to end and hit many targets at once.

Technical impactTotal

A successful attack gives full control over the affected software or all of its data.

Public exploits

2 found
1 Metasploit0 Exploit-DB1 Scanner template0 GitHub PoCs

Links are to third-party code: never run it outside an isolated lab.

Timeline

  1. 2024-07-01
    CVE published
    CVE List
  2. 2024-07-01
    Metasploit module published
    Geoserver unauthenticated Remote Code Execution
  3. 2024-07-15
    Added to CISA KEV
    Confirmed exploitation in the wild
  4. 2024-09-17
    F5 ships a rule
    GeoServer Unauthenticated Remote Code Execution
  5. 2026-11-02
    Our test: OWASP Core Rule Set blocked part of it
    paranoia level 1, anomaly threshold 5, default CRS settings
  6. 2026-11-02
    Our test: OWASP Core Rule Set blocked part of it
    paranoia level 2, anomaly threshold 5, default CRS settings

Social

2026-10-20: 0 posts2026-10-21: 0 posts2026-10-22: 0 posts2026-10-23: 0 posts2026-10-24: 0 posts2026-10-25: 0 posts2026-10-26: 0 posts2026-10-27: 0 posts2026-10-28: 0 posts2026-10-29: 0 posts2026-10-30: 0 posts2026-10-31: 0 posts2026-11-01: 0 posts2026-11-02: 0 posts

No posts seen yet on X, Bluesky, Mastodon, Hacker News or GitHub.

Vendor statements

Quoted
CloudflareWAF Managed RulesBefore feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

AWSAWS WAF Managed RulesNo public claim

We found no public statement from this vendor naming this CVE. That is not proof of no protection: generic rules may still catch it. AWS often describes a vulnerability without naming its CVE (for example "Log4j"). We count only entries that name the CVE, so AWS coverage is understated.

Microsoft AzureFront Door and Application Gateway WAF (DRS)No public claim

We found no public statement from this vendor naming this CVE. That is not proof of no protection: generic rules may still catch it. The rule tables name CVEs but carry no dates, so Azure is left out of every time-to-rule figure.

Google CloudCloud Armor preconfigured WAF rulesNo public claim

We found no public statement from this vendor naming this CVE. That is not proof of no protection: generic rules may still catch it. Google names few CVEs: the release notes start in May 2024 and the rules reference lists CVEs without dates. Its cve-canary rules are opt-in.

FastlyNext-Gen WAF virtual patchesBefore feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

F5Attack signatures (Distributed Cloud WAF)1 quoteRule published

First rule 2024-09-17, 78 days after the CVE was published.

2024-09-17New rule200103550Source
Added: signature 200103550 "GeoServer Unauthenticated Remote Code Execution" (Command Execution, risk High), systems: Other Web Server. References: CVE-2024-36401.
AkamaiApp & API Protector (Adaptive Security Engine)No public source

This vendor publishes no machine-readable rule changelog we can check.

OWASP CRSCore Rule Set (open source, used inside many WAFs)No public claim

We found no public statement from this vendor naming this CVE. That is not proof of no protection: generic rules may still catch it. CRS rarely names CVEs: it relies on generic detections. Our own lab measures what it actually blocks.