CVE-2026-46487: 
Java vulnerability analysis and mitigation

Overview

CVE-2026-46487 is an authorization bypass vulnerability in GeoNetwork's Elasticsearch-backed search API, classified as "ACL bypass on Elasticsearch search when request body omits query field." It affects GeoNetwork versions 4.0.0-alpha.1 through 4.0.6-0, 4.2.0 through 4.2.15, and 4.4.0 through 4.4.10, all under the Maven package org.geonetwork-opensource:geonetwork. The vulnerability was published and disclosed on July 1, 2026, with patched versions released the same day. It carries a CVSS v3.1 base score of 7.5 (High) (GitHub Advisory, GeoNetwork Advisory).

Technical details

The root cause is CWE-862 (Missing Authorization): GeoNetwork's search proxy layer is responsible for injecting access-control and visibility filter clauses into every Elasticsearch request before forwarding it to the underlying index. A flaw in how the filter-injection step is triggered allows it to be bypassed when the client-supplied request body omits the query field. Under this condition, the request reaches Elasticsearch without GeoNetwork's access restrictions applied, exposing records that should be restricted. The bypassed filter step enforces group-based record visibility, draft record exclusion, record ownership checks, and portal-specific filtering simultaneously (GitHub Advisory, GeoNetwork Advisory).

Impact

Successful exploitation allows an unauthenticated remote attacker to retrieve the full contents of metadata records that should not be publicly visible, including records restricted to specific user groups, draft records, and portal-specific content. The impact is limited to confidentiality — integrity and availability are not affected. Any public-facing GeoNetwork 4.x instance through version 4.4.10 is at risk of exposing sensitive geospatial metadata to unauthorized parties (GitHub Advisory).

Exploitability

The vulnerability requires no authentication, no user interaction, and low attack complexity, making it trivially exploitable by any network-accessible attacker. No public proof-of-concept exploit code or evidence of in-the-wild exploitation has been reported as of the disclosure date. The CVE status is listed as "Reserved" and no EPSS score or CISA KEV catalog entry has been identified for this vulnerability (GitHub Advisory, GeoNetwork Advisory).

Exploitation steps

  1. Reconnaissance: Identify public-facing GeoNetwork 4.x instances (versions 4.0.0-alpha.1 through 4.4.10) using search engines like Shodan or Censys, or by directly probing known GeoNetwork API endpoints.
  2. Craft a bypass request: Construct an HTTP POST request to GeoNetwork's Elasticsearch search API endpoint (e.g., /geonetwork/srv/api/search/records/_search) with a request body that omits the query field entirely.
  3. Submit the request unauthenticated: Send the crafted request without any authentication credentials or session tokens.
  4. Receive unrestricted results: Because the filter-injection step is skipped, Elasticsearch returns metadata records without applying group-based visibility, draft exclusion, ownership, or portal filters — exposing restricted records in the response (GitHub Advisory, GeoNetwork Advisory).

Indicators of compromise

  • Network: Unusual or repeated unauthenticated POST requests to GeoNetwork's Elasticsearch search API endpoint (e.g., /geonetwork/srv/api/search/records/_search) with request bodies lacking a query field; large volumes of search responses returned to unauthenticated clients.
  • Logs: GeoNetwork access logs showing search API calls from unauthenticated sessions returning high volumes of metadata records; absence of expected filter clauses in proxied Elasticsearch queries logged at the application layer.
  • Application Behavior: Elasticsearch query logs showing requests without GeoNetwork's standard access-control filter clauses appended, particularly from external IP addresses.

Mitigation and workarounds

GeoNetwork has released patched versions 4.2.16 and 4.4.11, which fix the filter-injection flaw. Administrators running any GeoNetwork 4.x instance (4.0.0-alpha.1 through 4.4.10) should upgrade to the patched versions immediately. No specific configuration-based workaround has been published; upgrading is the recommended remediation. Instances in the 4.0.x branch (up to 4.0.6-0) should migrate to a supported and patched release (GitHub Advisory, GeoNetwork Advisory).

Additional resources


Source: This report was generated using AI

Related Java vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-61586HIGH8.2
  • Java logoJava
  • eu.copernik:copernik-xml-factory
NoYesOct 30, 2026
CVE-2026-46487HIGH7.5
  • Java logoJava
  • org.geonetwork-opensource:geonetwork
NoYesNov 03, 2026
CVE-2026-63224HIGH7.2
  • Java logoJava
  • io.openremote:openremote-manager
NoYesOct 30, 2026
CVE-2026-39379HIGH7.1
  • Java logoJava
  • org.geonetwork-opensource:geonetwork
NoYesNov 03, 2026
CVE-2026-54442MEDIUM4.8
  • Java logoJava
  • gov.nsa.emissary:emissary
NoYesOct 30, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management