The vulnerability CVE-2026-55864 describes an unauthenticated Server-Side Request Forgery (SSRF) in the GeoNetwork Web Module's SLD tooling endpoint. Specifically, the POST /api/tools/ogc/sld endpoint accepted a caller-supplied WMS server URL and performed an unvalidated server-side HTTP GET request to it. This allowed an anonymous attacker to force the GeoNetwork server to make arbitrary HTTP requests, potentially to internal network resources.
My analysis focused on the provided GitHub pull request (PR #9343), which serves as the security patch. The key commit cc96ed7f8997c5d91385d1825c1223f81aac21df clearly shows the removal of the vulnerable functionality.
org.fao.geonet.api.sld.SldApi.buildSLD: This method, previously mapped to POST /api/tools/ogc/sld, was the public-facing API endpoint. The patch completely removes this method, indicating it was the entry point for the vulnerability. It accepted the serverURL parameter directly from the request.
org.geonetwork.map.wms.SLDUtil.parseSLD: This method was called by SldApi.buildSLD and was responsible for constructing and executing the HTTP GET request to the user-provided serverURL. The patch removes this method entirely from SLDUtil.java, confirming it contained the core logic for performing the unvalidated outbound request.
During exploitation, an attacker would send a POST request to the /api/tools/ogc/sld endpoint, providing a malicious URL in the serverURL parameter. This request would be handled by SldApi.buildSLD, which in turn would call SLDUtil.parseSLD. The parseSLD method would then execute the HTTP GET request to the attacker-controlled URL, leading to the SSRF. The removal of these two functions directly addresses the vulnerability by eliminating both the entry point and the execution mechanism of the SSRF.