---
id: CVE-2026-54354
title: MapServer is a system for developing web-based GIS applications
summary: >-
  MapServer is a system for developing web-based GIS applications. Prior to
  8.6.4, MapServer's PostGIS runtime filter translation in src/mappostgis.cpp
  and msPostGISLayerTranslateFilter() treats a filteritem as numeric when
  CONNECTIONTYPE …
severity: high
cvss: 8.2
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L'
cwe:
  - CWE-89
vendor: MapServer
product: MapServer
affected:
  - 'MapServer >= 8.4.0, < 8.6.4'
published: '2026-09-17'
updated: '2026-09-24'
sourceUpdated: '2026-09-24T21:19:05.340'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-54354'
references:
  - url: >-
      https://github.com/MapServer/MapServer/commit/65f1b53c258df2abdf6ce1f437c29e75e9976247
    label: security-advisories@github.com
  - url: >-
      https://github.com/MapServer/MapServer/commit/bd59d49779d2ecc64ca8dc1281c53231a50b698e
    label: security-advisories@github.com
  - url: 'https://github.com/MapServer/MapServer/pull/7516'
    label: security-advisories@github.com
  - url: 'https://github.com/MapServer/MapServer/releases/tag/rel-8-6-4'
    label: security-advisories@github.com
  - url: >-
      https://github.com/MapServer/MapServer/security/advisories/GHSA-xp29-8wp5-wc3p
    label: security-advisories@github.com
  - url: >-
      https://mapserver.org/development/changelog/changelog-8-6.html#changelog-8-6
    label: security-advisories@github.com
tags:
  - nvd
  - cve.org
epss: 0.00684
epssPercentile: 0.5053
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-18T14:39:52.709916Z'
ingestedAt: '2026-09-17T21:29:16.981Z'
---

## Overview

MapServer is a system for developing web-based GIS applications. Prior to 8.6.4, MapServer's PostGIS runtime filter translation in src/mappostgis.cpp and msPostGISLayerTranslateFilter() treats a filteritem as numeric when CONNECTIONTYPE POSTGIS and metadata such as gml_<item>_type=Integer are configured, but it does not verify that attacker-controlled CGI qstring or OGC API Features featureId input is a numeric literal. The unquoted input is concatenated into the generated PostgreSQL/PostGIS predicate, allowing an unauthenticated remote attacker with access to an affected query endpoint to bypass predicates, enumerate unintended records, perform boolean-based or time-based SQL injection, and increase database load. The issue does not by itself establish database modification capabilities. This issue is fixed in version 8.6.4.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
