CVE-2026-6210 PUBLISHED

Type confusion and heap-buffer-overflow in Qt SVG marker handling causing application crash

Assigner: TQtC
Reserved: 13.04.2026 Published: 06.05.2026 Updated: 06.05.2026

A type confusion vulnerability in Qt SVG allows an attacker to cause an application crash via a crafted SVG image.

When processing SVG marker references, the renderer retrieves a node by its id attribute and casts it to QSvgMarker* without verifying the node type. A non-marker element (such as a <line> element) that references itself as a marker triggers an out-of-bounds heap read due to the object size difference between QSvgLine and QSvgMarker, followed by an endless recursion that bypasses the marker recursion guard through incorrect virtual dispatch. The result is an application crash (denial of service).

This issue affects Qt SVG:  from 6.7.0 before 6.8.8, from 6.9.0 before 6.11.1.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS Score: 8.7

Product Status

Vendor The Qt Company
Product Qt
Versions Default: unaffected
  • affected from 6.7.0 to 6.8.8 (excl.)
  • affected from 6.9.0 to 6.11.1 (excl.)

Solutions

Apply fix: https://codereview.qt-project.org/c/qt/qtsvg/+/724887

References

Problem Types

  • CWE-843 Access of Resource Using Incompatible Type ('Type Confusion') CWE
  • CWE-122 Heap-based Buffer Overflow CWE

Impacts

  • Application crash (denial of service)
  • Heap-based buffer overflow via out-of-bounds field access on miscast pointer
  • Endless recursion due to recursion guard bypass on miscast vtable dispatch