CVE-2026-15037 PUBLISHED

XML injection vulnerability in QDom comment, CDATA and processing-instruction serialization

Assigner: TQtC
Reserved: 08.07.2026 Published: 23.07.2026 Updated: 23.07.2026

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.

Metrics

CVSS Vector: 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
CVSS Score: 2.9

Product Status

Vendor Qt
Product Qt
Versions Default: unaffected
  • affected from 4.0.0 to 6.12.0 (excl.)

Workarounds

On all affected versions, set the invalid-data policy before building documents:QDomImplementation::setInvalidDataPolicy(QDomImplementation::ReturnNullNode); (or DropInvalidChars). With ReturnNullNode, the QDom factory functions return a null node when given data that is invalid per XML 1.0 — check the return value. As additional defence-in-depth, validate untrusted input before inserting it and do not treat QDom output as trusted structure downstream.

Solutions

Update to Qt 6.12 or later.

References

Problem Types

  • CWE-91 XML injection (aka blind XPath injection) CWE

Impacts

  • CAPEC-250 XML Injection