Qt 5 Core Compatibility API群(Qt5Compatモジュール)の QTextCodec::codecForName() 関数に、範囲外読み取り(バッファオーバーリード)の脆弱性が発見され、CVE ID CVE-2026-9499 が割り当てられました。
影響を受けるバージョン: Qt 4.0.0 から 6.8.7、および Qt 6.9.0 から 6.11.0
この不具合は Qt5Compat モジュールの導入時(Qt 6.0.0)から存在しています。また、同等のコードパスは Qt 4.0.0 から Qt 5.15.19 LTS(Qt Core / qtbase)にも存在します。
影響: NUL終端されていない QByteArray(例えば QByteArray::fromRawData() で生成されたもの)を QTextCodec::codecForName() に渡すと、コーデック名の照合処理がバッファの終端を超えて読み取りを行う可能性があります。これにより、誤ったコーデックが一致してしまう、あるいは最悪の場合アプリケーションがクラッシュする(サービス拒否)おそれがあります。範囲外読み取りは最も長いコーデック名候補の長さに制限されており、読み取られたバイトはQtの固定内部コーデックリストとの比較にのみ使用されるため、アプリケーションやユーザーのデータが攻撃者に露出することはありません。
CVSS 4.0 スコア: 6.3(MEDIUM)
ベクター文字列: 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
緩和策: パッチの適用またはアップグレード以外に、実用的な回避策はありません。QByteArray::fromRawData() を使用してコーデック名の QByteArray を構築していないアプリケーションは、この問題の影響を受けません。
対応方法: 以下のパッチを適用するか、Qt 6.8.8、Qt 6.11.1、またはそれ以降のバージョンにアップデートしてください。
パッチ: