Skip to main content

Qt XML CVE-2026-15037

| EUVDEUVD-2026-48254 LOW
XML Injection (aka Blind XPath Injection) (CWE-91)
2026-07-23 TQtC GHSA-7xx4-xq65-r6v3
2.9
CVSS 4.0 · Vendor: TQtC
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify Qt application serializing untrusted content
  2. Delivery
    Supply input containing XML node terminator sequence
  3. Exploit
    Application passes raw string to QDom comment/CDATA/PI node
  4. Execution
    QDom writes terminator unescaped under AcceptInvalidChars policy
  5. Persist
    XML node boundary broken, arbitrary markup injected
  6. Impact
    Downstream consumer processes attacker-influenced XML structure

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization XPath query parameterization
Exploitation Conditions

Exploitation requires three concurrent application-layer conditions: (1) the application uses Qt 4.0.0 through 6.11 and calls QDom serialization APIs to write comment, CDATA, or processing-instruction nodes; (2) the content of those nodes originates from or is influenced by attacker-controlled input (e.g., user-supplied strings, external data feeds, network-received content); and (3) the application has not overridden the default InvalidDataPolicy from AcceptInvalidChars to a stricter mode. The AT:P (Attack Timing: Prerequisite) metric in the provided CVSS 4.0 vector formally encodes these prerequisites. Exploitation is bounded to integrity impact only - there is no path to confidentiality disclosure or denial of service from this vulnerability alone. Applications that use Qt for GUI rendering, multimedia, or network protocols without invoking QDom serialization on untrusted data are not exploitable. The vulnerability does not exist at the Qt library loading or linking layer - only at the serialization call site.

Impact

Multiple signals converge on a low-to-moderate real-world risk rating. The CVSS 4.0 base score of 2.9 incorporates AT:P (Attack Timing: Prerequisite), explicitly modeling that exploitation depends on a specific application-layer condition - the target application must serialize attacker-supplied text through one of the three vulnerable QDom node types. The threat metric E:P ('proof-of-concept exists') slightly elevates risk above purely theoretical, but no KEV listing confirms mass or targeted exploitation. EPSS data was not provided. The CVSS 4.0 impact metrics confirm the scope is narrow: VI:L (low integrity impact) with no confidentiality or availability impact (VC:N, VA:N). The practical risk to any given organization is therefore a function of their Qt application portfolio: organizations shipping Qt-based software that processes untrusted XML or user content through QDom have genuine integrity risk (malformed or malicious XML documents produced); organizations using Qt only for internal tooling or GUI rendering with no untrusted serialization path face negligible exposure. No conflicting signals are present - all available data consistently points to a low-severity, context-dependent issue.

Exploit ScenarioDerived

An attacker interacts with a network-facing Qt application that accepts user-supplied text and serializes it into an XML document using QDom - for example, a CDATA section in a configuration or data export feature. By including the string ']]><maliciousElement/><![CDATA[' in their input, the attacker causes the CDATA terminator to be written unescaped, closing the legitimate CDATA node and injecting an arbitrary XML element into the document before reopening a new CDATA section. The E:P threat metric in the CVSS 4.0 vector suggests proof-of-concept code exists, making this a well-understood injection class that requires no advanced tradecraft once a vulnerable serialization path is identified.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 23, 2026

XML injection in Qt's QDom serialization component (versions 4.0.0 through 6.11) allows untrusted text passed to comment, CDATA, and processing-instruction nodes to break out of those structures and inject arbitrary XML markup into serialized output, because the default InvalidDataPolicy (AcceptInvalidChars) does not escape node terminators such as '-->', ']]>', or '?>'. The CVSS 4.0 score of 2.9 reflects an attack timing prerequisite (AT:P) - only applications that actively pass attacker-controlled content through QDom serialization are exploitable; the Qt library itself is not a standalone attack surface. No public exploit is identified at time of analysis, and this vulnerability is not listed in the CISA KEV catalog, though the CVSS 4.0 threat metric E:P suggests proof-of-concept code may exist.

RemediationAI

Upgrade to Qt 6.12 or later, which resolves the missing escape logic for node terminator sequences in QDom comment, CDATA, and processing-instruction serialization. The patch is visible at https://codereview.qt-project.org/c/qt/qtbase/+/748323; note that this is a Qt code review submission - the packaged Qt 6.12 release should be sourced from the official Qt distribution channels. For applications that cannot upgrade immediately, apply input sanitization at the application boundary before passing untrusted data to QDom APIs: strip or reject '-->' sequences from content destined for comment nodes, ']]>' from CDATA content, and '?>' from processing-instruction data. As an alternative, consider switching the QDom InvalidDataPolicy away from the default AcceptInvalidChars mode so that invalid characters cause an error or are dropped - this prevents injection but may surface previously silent data quality issues. Applications that exclusively serialize trusted, internally generated content with no user-controlled values flowing into QDom comment, CDATA, or PI nodes are not at risk and do not require emergency remediation.

Affected VersionsENISA

Qt 4.0.0 <6.12.0

Affected Packages

euvd qt fix: 6.12.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Qt's QDom module provides a W3C DOM-level API for constructing and serializing XML documents. Three node types - comments (<!-- -->), CDATA sections (<![CDATA[ ]]>), and processing instructions (<?target data?>) - each have specific ASCII terminator sequences that must be absent from their content to preserve well-formed XML structure. Qt's serializer defaults to the AcceptInvalidChars mode of InvalidDataPolicy, which writes user-supplied content verbatim without escaping or rejecting these terminators. CWE-91 (XML Injection, also known as Blind XPath Injection in its broader form) precisely captures this root cause: user-controlled data flows into an XML-generating function without proper output neutralization, enabling structural injection. The affected CPE is cpe:2.3:a:qt:qt:*:*:*:*:*:*:*:*, spanning all Qt releases from 4.0.0 through 6.11 across every platform Qt supports (Linux, Windows, macOS, embedded targets).

Know when Qt gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (TQtC) PRIMARY 2.9 LOW
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 3.7 LOW

AC:H captures that exploitation depends on the application serializing attacker-controlled data through QDom, a condition beyond the attacker's direct control; no confidentiality or availability impact applies.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (TQtC).

CVSS VectorVendor: TQtC

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Improper output neutralization (XML injection) in QDom comment, CDATA, and processing-instruction serialization in Qt XML from 4.0.0 through 6.11 allows untrusted text serialized by an application into those nodes to inject arbitrary XML markup, because the node terminators are not escaped under the default InvalidDataPolicy (AcceptInvalidChars). Fixed in Qt 6.12.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
High
Qt deployed widely in desktop, embedded, and automotive software globally
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

14
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +14
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

More in Qt

View all
CVE-2020-12267 CRITICAL POC
9.8 Apr 27

setMarkdown in Qt before 5.14.2 has a use-after-free related to QTextMarkdownImporter::insertBlock. Rated critical sever

CVE-2023-37369 HIGH POC
7.5 Aug 20

In Qt before 5.15.15, 6.x before 6.2.9, and 6.3.x through 6.5.x before 6.5.2, there can be an application crash in QXmlS

CVE-2020-13962 HIGH POC
7.5 Jun 09

Qt 5.12.2 through 5.14.2, as used in unofficial builds of Mumble 1.3.0 and other products, mishandles OpenSSL's error qu

CVE-2020-0570 HIGH POC
7.3 Sep 14

Uncontrolled search path in the QT Library before 5.14.0, 5.12.7 and 5.9.10 may allow an authenticated user to potential

CVE-2023-51714 CRITICAL
9.8 Dec 24

An issue was discovered in the HTTP2 implementation in Qt before 5.15.17, 6.x before 6.2.11, 6.3.x through 6.5.x before

CVE-2024-36048 CRITICAL
9.8 May 18

QAbstractOAuth in Qt Network Authorization in Qt before 5.15.17, 6.x before 6.2.13, 6.3.x through 6.5.x before 6.5.6, an

CVE-2017-10904 CRITICAL
9.8 Dec 16

Qt for Android prior to 5.9.0 allows remote attackers to execute arbitrary OS commands via unspecified vectors. Rated cr

CVE-2018-19873 CRITICAL
9.8 Dec 26

An issue was discovered in Qt before 5.11.3. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploita

CVE-2016-10040 MEDIUM POC
5.5 Mar 07

Stack-based buffer overflow in QXmlSimpleReader in Qt 4.8.5 allows remote attackers to cause a denial of service (applic

CVE-2026-95509 HIGH
8.8 Sep 29

Out-of-bounds read in Qt for MCUs occurs when an application passes a Latin-1-optimized string containing Latin-1 charac

CVE-2018-19870 HIGH
8.8 Dec 26

An issue was discovered in Qt before 5.11.3. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,

CVE-2018-15518 HIGH
8.8 Dec 26

QXmlStream in Qt 5.x before 5.11.3 has a double-free or corruption during parsing of a specially crafted illegal XML doc

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy