CVE-2026-54354

Source
https://cve.org/CVERecord?id=CVE-2026-54354
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54354.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-54354
Aliases
  • GHSA-xp29-8wp5-wc3p
Downstream
Published
2026-09-17T20:22:57Z
Modified
2026-10-28T11:14:35Z
Severity
  • 8.2 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L CVSS Calculator
Summary
MapServer: PostGIS Numeric Filter Value SQL Injection in MapServer Runtime Query Translation
Details

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__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.

Database specific
{
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
        "CWE-89"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54354.json"
}
References

Affected packages

Git / github.com/mapserver/mapserver

Affected ranges

Type
GIT
Repo
https://github.com/mapserver/mapserver
Events
Database specific
Show details
{
    "extracted_events": [
        {
            "range": [
                {
                    "introduced": "8.4.0"
                },
                {
                    "fixed": "8.6.4"
                }
            ],
            "source": "AFFECTED_FIELD",
            "strategy": "StringRangeExpression"
        },
        {
            "range": [
                {
                    "fixed": "65f1b53c258df2abdf6ce1f437c29e75e9976247"
                }
            ],
            "source": "REFERENCES_COMMIT"
        },
        {
            "range": [
                {
                    "fixed": "bd59d49779d2ecc64ca8dc1281c53231a50b698e"
                }
            ],
            "source": "REFERENCES_COMMIT"
        },
        {
            "original_tag": "rel-8-6-4",
            "range": [
                {
                    "fixed": "b7896ad27b553403868e2cbb2710cc4b5fdcd4c8"
                }
            ],
            "source": "REFERENCES_TAG"
        }
    ]
}

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54354.json"
vanir_signatures
[
    {
        "deprecated": false,
        "digest": {
            "function_hash": "21919640198858715266269917705077281424",
            "length": 6952
        },
        "id": "CVE-2026-54354-003de6c5",
        "signature_type": "Function",
        "signature_version": "v1",
        "source": "https://github.com/mapserver/mapserver/commit/bd59d49779d2ecc64ca8dc1281c53231a50b698e",
        "target": {
            "file": "src/mappostgis.cpp",
            "function": "msPostGISLayerTranslateFilter"
        }
    },
    {
        "deprecated": false,
        "digest": {
            "line_hashes": [
                "140942032694489371263620092263471853304",
                "46250810330554396202363394228243311600",
                "190494282828173871236755074535432126737",
                "200033069491127039541767514037755964540"
            ],
            "threshold": 0.9
        },
        "id": "CVE-2026-54354-2eb1c83d",
        "signature_type": "Line",
        "signature_version": "v1",
        "source": "https://github.com/mapserver/mapserver/commit/bd59d49779d2ecc64ca8dc1281c53231a50b698e",
        "target": {
            "file": "src/mappostgis.cpp"
        }
    },
    {
        "deprecated": false,
        "digest": {
            "line_hashes": [
                "140942032694489371263620092263471853304",
                "46250810330554396202363394228243311600",
                "190494282828173871236755074535432126737",
                "200033069491127039541767514037755964540"
            ],
            "threshold": 0.9
        },
        "id": "CVE-2026-54354-860884d3",
        "signature_type": "Line",
        "signature_version": "v1",
        "source": "https://github.com/mapserver/mapserver/commit/65f1b53c258df2abdf6ce1f437c29e75e9976247",
        "target": {
            "file": "src/mappostgis.cpp"
        }
    },
    {
        "deprecated": false,
        "digest": {
            "function_hash": "21919640198858715266269917705077281424",
            "length": 6952
        },
        "id": "CVE-2026-54354-f9ddb0fb",
        "signature_type": "Function",
        "signature_version": "v1",
        "source": "https://github.com/mapserver/mapserver/commit/65f1b53c258df2abdf6ce1f437c29e75e9976247",
        "target": {
            "file": "src/mappostgis.cpp",
            "function": "msPostGISLayerTranslateFilter"
        }
    }
]
vanir_signatures_modified
"2026-10-28T11:14:35Z"