【活用ガイド】

JVNDB-2022-001706

Qt 製 Windows アプリケーションにおける権限昇格の脆弱性

概要

The Qt Company が提供する Qt はマルチプラットフォーム向けアプリケーションフレームワークです。Qt で作成されたWindowsアプリケーションでは、 Qt 開発ツールのインストールパスが qt_prfxpath にハードコードされており、当該アプリケーションはこれらのパスから必要なモジュールをロードしようとします。

qt_prfxpath が指しているディレクトリは、例えば Qt の Windows インストーラーの初期設定では C:\Qt\ のサブディレクトリとなっており、Windows システムの一般ユーザがこのディレクトリを作成して悪意あるファイルを置き、Qt アプリケーションに読み込ませることが可能となっている場合があります。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 8.2 (重要) [NVD値]
  • 攻撃元区分: ローカル
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 高
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更あり
  • 機密性への影響(C): 高
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
影響を受けるシステム

以下の Qt 開発環境およびデプロイツール windeployqt を使用して作成されたアプリケーション

The Qt Company
  • Qt 5.14より前のバージョン
  • windeployqt commit:c2952ff8df1e18fe0120d8b29901b0b794afccc7 以降を取り込んでいないバージョン

想定される影響

Qt で作成された Windows アプリケーションが特権を使用して実行される場合、Windows システムの一般ユーザが qt_prfxpath が指しているディレクトリに悪意をもったファイルを用意しておくことで、当該 Qt アプリの権限で任意のコードを実行させる可能性があります。
対策

Qt を利用した Windows アプリケーションの開発者は、以下のどちらかを実施してください。

[Qt をアップデートしてアプリケーションを作成し直す]
The Qt Company が提供する情報をもとに、Qt 開発環境を最新版へアップデートし、アプリケーションを作成し直してください。
Qt プロジェクトによると、Qt 5.14 以降では本脆弱性の対策が行われているとのことです。

[最新の windeployqt ツールを使ってアプリケーションを作成し直す]
Qt 開発環境を最新版に更新できない場合でも、アプリケーションのパッケージ化を行うツール windeployqt の commit:c2952ff8df1e18fe0120d8b29901b0b794afccc7 以降を含む最新版を使用することで、Qt5Core.dll に含まれる qt_prfxpath の値を削除できるとのことです。
ベンダ情報

The Qt Company
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 境界外書き込み(CWE-787) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2022-26873
参考情報

  1. JVN : JVNVU#92669710
  2. National Vulnerability Database (NVD) : CVE-2022-26873
  3. US-CERT Vulnerability Note : VU#411271
更新履歴

  • [2022年05月10日]
      掲載
  • [2024年06月12日]
      CVSS による深刻度:内容を更新
      CWE による脆弱性タイプ一覧:内容を更新
      参考情報:National Vulnerability Database (NVD) (CVE-2022-26873) を追加