{"id":2402,"date":"2026-08-18T06:09:00","date_gmt":"2026-08-18T06:09:00","guid":{"rendered":"https:\/\/thedigitalfortress.us\/?p=2402"},"modified":"2026-08-18T06:09:00","modified_gmt":"2026-08-18T06:09:00","slug":"geoserver-zero-day-targeted-in-active-exploitation-attempts-can-lead-to-rce","status":"publish","type":"post","link":"https:\/\/thedigitalfortress.us\/?p=2402","title":{"rendered":"GeoServer Zero-Day Targeted in Active Exploitation Attempts, Can Lead to RCE"},"content":{"rendered":"<div id=\"articlebody\">\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjBHrFMdn5ekgZuyeE4m-ez0biA_lSQ3abNCs7s0YNhWXi-MvjTNhJBgQtjTw_j9zNfDNtp0DtDC6wH9lJcD7obhh9ujkfuk6E0FiX9qH3njE5mcNrtyaxWR3E2RO1ROmlx4B4YbjBtby_P9FXXpl-Be9voGWxC7PbkyVpBrk1zB3KanenH2jVRf_Uv48s4\/s1700-e365\/geo.jpg\" style=\"clear: left; display: block; float: left;  text-align: center;\"><\/a><\/div>\n<p>A newly disclosed zero-day flaw in GeoServer is seeing active exploitation efforts, per watchTowr.<\/p>\n<p>The vulnerability, which has yet to be assigned a CVE identifier, is an SQL injection vulnerability in the open-source platform that can lead to remote code execution (RCE). The security defect remains unpatched.<\/p>\n<p>It was <a href=\"https:\/\/x.com\/q1uf3ng\/status\/2087490992723407096\" target=\"_blank\">first disclosed<\/a> on August 12, 2026, at 10:46 UTC, by a researcher named @q1uf3ng on X. \u00abGeoServer jsonArrayContains unauthorized SQL injection, and in the case of the sa [system administrator] database, it&#8217;s naturally possible to achieve RCE,\u00bb the researcher said.<\/p>\n<p>The threat intelligence and exposure management platform said it began to observe exploitation attempts within hours of public disclosure, and that it has seen hundreds of attempts originating from a small pool of IP addresses. <\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/corelight-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Cybersecurity\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjuvAqH13TTYyJD3aI-pJcYl54BoxQWMHc2aFwW2HbYUa5IKCjvHlzpzkFwXLTuV8aytky8kqLBgkoOtC8VQM5CGR0N5BXBl8RSXl-PYx_vIPbiLywiqXIvTPmm18cdEm_C0heVB-3U8zfG7K27RCAurtJ7OvxEyfQ0sVV_RRx1N4ZMWkqKgEBmkcDgjD6I\/s728-e100\/code-d.png\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>\u00abCurrently, we&#8217;re seeing attackers probe to identify vulnerable systems across the internet, triggering errors and not proceeding further,\u00bb Jake Knott, principal security researcher at watchTowr, told The Hacker News in a statement.<\/p>\n<p>\u00abHowever, this is unlikely to remain the case for long: GeoServer has a track record of being targeted and exploited at scale, with multiple vulnerabilities listed in CISA&#8217;s Known Exploited Vulnerabilities catalog. More importantly, under certain configurations, this latest vulnerability could ultimately lead to remote code execution.\u00bb<\/p>\n<p>In the absence of a patch, organizations running GeoServer are advised to identify exposed instances, restrict public access, and monitor for a vendor fix.<\/p>\n<p>In 2024, a critical security flaw impacting GeoServer GeoTools (CVE-2024-36401, CVSS score: 9.8) came under active exploitation to turn compromised devices into DDoS and cryptocurrency mining botnets, and residential proxies.<\/p>\n<h3>Update<\/h3>\n<p>GeoServer has released versions <a href=\"https:\/\/geoserver.org\/announcements\/vulnerability\/2026\/08\/14\/geoserver-3-0-1-released.html\" target=\"_blank\">3.0.1<\/a>, <a href=\"https:\/\/geoserver.org\/announcements\/vulnerability\/2026\/08\/14\/geoserver-2-28-5-released.html\" target=\"_blank\">2.28.5<\/a>, and <a href=\"https:\/\/geoserver.org\/announcements\/vulnerability\/2026\/08\/14\/geoserver-2-27-6-released.html\" target=\"_blank\">2.27.6<\/a> to address the critical SQL injection vulnerability, which has now been assigned the GitHub security advisory identifier \u00abGHSA-mqjf-5f49-2fjh.\u00bb It carries a CVSS score of 9.8 out of 10.0.<\/p>\n<p>\u00abAn SQL injection vulnerability has been found when executing OGC Filters with PostGIS DataStore implementation: jsonArrayContains function,\u00bb the project maintainers <a href=\"https:\/\/github.com\/geotools\/geotools\/security\/advisories\/GHSA-mqjf-5f49-2fjh\" target=\"_blank\">said<\/a> in an alert, adding it requires PostGIS 12 or greater with a String or JSON field.<\/p>\n<p>\u00abFor PostGIS 12 and greater, jsonArrayContains(<column>, <pointer>, <value>) function writes <value> into generated SQL without escaping.\u00bb<\/value><\/value><\/pointer><\/column><\/p>\n<p>The issue impacts the following versions of the Maven package \u00aborg.geotools:gt-jdbc-postgis\u00bb &#8211;<\/p>\n<ul>\n<li>35.0 (Fixed in 35.1)<\/li>\n<li>&gt;=34.0 (Fixed in 34.5)<\/li>\n<li>&gt;=33.1 (Fixed in 33.6)<\/li>\n<\/ul>\n<p>The maintainers also noted that the vulnerability is a regression of <a href=\"https:\/\/geoserver.org\/vulnerability\/2023\/02\/20\/ogc-filter-injection.html\" target=\"_blank\">CVE-2023-25158<\/a> (CVSS score: 9.8), another <a href=\"https:\/\/github.com\/murataydemir\/CVE-2023-25157-and-CVE-2023-25158\" target=\"_blank\">critical SQL injection vulnerability<\/a> that was addressed alongside CVE-2023-25157 in February 2023.<\/p>\n<p>When reached for comment, Jody Garnett, a project owner at GeoCat, told The Hacker News the vulnerability was a known issue in the GeoTools library and that it has been addressed in the aforementioned three versions of GeoServer.<\/p>\n<p>Hadrian has since published additional details of the vulnerability, stating it resides in the GeoTools code responsible for translating Common or Contextual Query Language (<a href=\"https:\/\/geoserver.org\/tutorials\/2024\/11\/11\/geospatial-techno.html\" target=\"_blank\">CQL<\/a>) filters into SQL for PostGIS-backed datastores.<\/p>\n<p>\u00abAn attacker-controlled value is interpolated directly into a PostgreSQL jsonb_path_exists() expression without escaping,\u00bb security researcher Melvin Lammerts <a href=\"https:\/\/hadrian.io\/blog\/here-be-dragons-geoserver-pre-auth-sql-injection-to-rce#s-from-injection-to-rce\" target=\"_blank\">said<\/a>.<\/p>\n<p>Specifically, the vulnerable function directly drops a user-supplied value that originates from an HTTP request into an SQL literal with no sanitization and input escaping, thereby opening the door to SQL injection. This, in turn, can be turned into RCE by leveraging Web Feature Service (<a href=\"https:\/\/www.ogc.org\/standards\/wfs\/\" target=\"_blank\">WFS<\/a>) 1.0, which provides a path where a second PostgreSQL statement executes at the top level of the query.<\/p>\n<p>\u00abIf GeoServer connects to PostgreSQL using a superuser or a role with pg_execute_server_program, this escalates to OS command execution on the database host,\u00bb Lammerts explained. \u00abWithout those elevated PostgreSQL privileges, the SQL injection still works and can be used to access data available to the database user.\u00bb<\/p>\n<p><em>(The story has been updated to include details of the fix.)<\/em><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>A newly disclosed zero-day flaw in GeoServer is seeing active exploitation efforts, per watchTowr. The vulnerability, which has yet to be assigned a CVE identifier, is an SQL injection vulnerability&hellip;<\/p>\n","protected":false},"author":1,"featured_media":2403,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[64,1202,65,3049,2950,316,113,126],"class_list":["post-2402","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-active","tag-attempts","tag-exploitation","tag-geoserver","tag-lead","tag-rce","tag-targeted","tag-zeroday"],"_links":{"self":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/2402","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2402"}],"version-history":[{"count":0,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/2402\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/media\/2403"}],"wp:attachment":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2402"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}