CVE-2026-9499 PUBLISHED

Out-of-bounds read in QTextCodec::codecForName() in Qt

Assigner: TQtC
Reserved: 25.05.2026 Published: 21.07.2026 Updated: 21.07.2026

An out-of-bounds read (buffer over-read) vulnerability exists in QTextCodec::codecForName() in Qt. When the function is called with a QByteArray that is not NUL-terminated (for example, one created with QByteArray::fromRawData()), the codec-name matching routine reads past the end of the supplied buffer. In most cases this results in an incorrect text codec being selected; in the worst case, if the over-read reaches unmapped memory, the process crashes (denial of service). The over-read is bounded by the length of the longest codec-name candidate, and the out-of-bounds bytes are only compared internally against Qt's fixed list of codec names, so no data is disclosed to an attacker. Applications that do not pass non-NUL-terminated QByteArrays to QTextCodec::codecForName() are not exposed. The affected code resides in the Qt5Compat module from Qt 6.0.0 onward, and in Qt Core (qtbase) in Qt 4.x and Qt 5.x.

Metrics

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

Product Status

Vendor Qt
Product Qt
Versions Default: unaffected
  • affected from 6.0.0 to 6.8.8 (excl.)
  • affected from 6.9.0 to 6.11.1 (excl.)
Vendor Qt
Product Qt
Versions Default: unaffected
  • affected from 4.0.0 to 6.0.0 (excl.)

Solutions

Update to Qt 6.8.8, Qt 6.11.1, Qt 6.12.0, or later, or apply the referenced patch.

References

Problem Types

  • CWE-125 Out-of-bounds Read CWE

Impacts

  • CAPEC-540 Overread Buffers