Stored cross-site scripting in QGIS Server WFS3 feature pages
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
QGIS before 3.44.12 and 4.0.0 through 4.2.3 writes feature attribute values into WFS3 HTML pages without escaping them (CWE-79). An attacker who controls values in a published writable vector layer can store script that runs in the QGIS Server origin when a user opens an items HTML page. Such script can read the viewer's session data or make authenticated requests with the viewer's privileges.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
QGIS is a free, open source, cross-platform geographic information system. Prior to 3.44.12 and 4.0.0 through 4.2.3, QGIS Server renders feature data in WFS3 (OGC API Features) HTML responses without HTML escaping. Attacker-controlled feature.properties values from a published writable vector layer reach resources/server/api/ogc/templates/wfs3/getFeatures.html through QgsServerOgcApiHandler::htmlDump and the if_nullptr_null_str callback. A user who opens an items HTML page can execute stored markup or script in the QGIS Server origin, which can expose the viewer's session data or issue authenticated requests with the viewer's privileges. This issue is fixed in version 3.44.12.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
QGIS 3.44.12 fixes this issue. The sources list no fixed version for QGIS.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA QGIS (qgis) Fixed in 3.44.12
Vendor assessments
Timeline
- 2026-10-12 Threatist record created from CVE-2026-104140
- 2026-10-13 Affected versions changed · Red Hat
- 2026-10-13 CVSS score added · Red Hat
- 2026-10-13 CISA SSVC decision points changed
References
Other 6
- https://github.com/qgis/QGIS/security/advisories/GHSA-cr49-pm9v-m788
- https://github.com/qgis/QGIS/pull/66616
- https://github.com/qgis/QGIS/pull/67044
- https://github.com/qgis/QGIS/commit/1930e81c918818a4f5412219f8f7e470d2709f91
- https://github.com/qgis/QGIS/commit/ca76fcac616dbf1c0446514fd6517296eb7c6904
- https://github.com/qgis/QGIS/releases/tag/final-3_44_12
More qgis vulnerabilities
- TI-2026-19734 QGIS had validated RCE and Repository Takeover via GitHub Actions CVSS 4.0HIGH 8.7
- TI-2025-10245 Cross-Site Scripting Vulnerability in QWC2 CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-104140 · CVE Program
- CVE-2026-104140 · NVD
- FIRST EPSS
- CVE-2026-104140 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences