脆弱性・CVE速報深刻度: 高

PyMoDAQ・pymodaq_data などの CVE-2026-120859: 細工した HDF5・dock・XML 設定ファイルを開くだけで任意の Python コードが動く恐れ(VulnCheck 評価 CVSS v3.1 7.8)

目次(5)

CVE-2026-120859

実験装置の制御・データ取得用の Python フレームワーク PyMoDAQ と、その部品である pymodaq_data・pymodaq_gui・pymodaq_utils に、ファイルの内容を検証せず復元するため、細工したファイルを開くだけで任意の Python コードが実行される恐れのある欠陥(CVE-2026-120859)が報告されました。NVD への登録は 2026-11-05、状態は Received(評価前)で、登録元は VulnCheck です。

何が起きるか

  • 信頼できないデータの復元(CWE-502)と、文字列を式として実行する処理(eval)の 2 種類の経路があります。いずれも、悪意あるファイルを開いたユーザーの権限でコードが動きます。
  • 経路は次の 4 つです。
    1. HDF5 の文字列ノードを StringARRAY.array_to_string() が pickle.loads() に渡す。h5browser で開く、またはデータローダーで読み込むと動く。
    2. HDF5 の属性に書かれた Python の式を JsonConverter.json2object() が評価する。
    3. Dashboard の「Load layout」で読み込む .dock ファイルを load_layout_state() が pickle で復元する。
    4. XML の設定ファイルの値を elt_to_dict()・set_txt_from_elt() が評価する。
  • 前提として、被害者が悪意あるファイルを自分で開く必要があります(UI:R)。共同研究者から受け取ったファイルや、ダウンロードしたデータが入口になり得ます。ネットワーク越しに直接攻撃されるものではありません(AV:L)。
  • 開発元の GitHub アドバイザリには、上記のほか Data Mixer 拡張の数式エディタも対象として書かれています。

影響を受ける版

対象影響する版(NVD の記載)
PyMoDAQ(4.4 系の単一パッケージ)4.4.13 より前
pymodaq_data・pymodaq_gui・pymodaq_utils5.1.15 より前、5.2 系は 5.2.14 より前、5.3 系は 5.3.10 より前

修正版として 4.4.13、5.1.15、5.2.14、5.3.10 のリリースが NVD の参照先にあります。GitHub のアドバイザリでは、部品ごとに修正版の番号が細かく分かれて書かれており(5.0 系・5.1 系の番号が NVD の記載と一部異なります)、使っている部品ごとに確認が必要です。

評価

評価元版点数ベクター
VulnCheckCVSS v3.17.8(High)AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
VulnCheckCVSS v4.08.5(High)AV:L/AC:L/AT:N/PR:N/UI:P、機密性・完全性・可用性とも高
  • 認証は不要ですが、ローカルでファイルを開く操作が前提で、9 未満のため、基準に沿い severity は high を案とします(確定はオーナーの判断待ち)。
  • CISA の KEV には載っていません。FIRST の EPSS は取得時点(2026-11-06)でまだ値がありません。

対策として考えられること

  1. PyMoDAQ を 4.4.13 以降、部品は 5.1.15・5.2.14・5.3.10 以降のうち使っている系統の修正版へ更新します。
  2. 更新するまでは、出所の分からない .h5・.dock・XML 設定ファイルを PyMoDAQ で開かないようにします。共有されたデータを開く場合は、送り主を確かめます。
  3. 実験用の PC では、PyMoDAQ を専用の低権限アカウントで動かし、装置制御用の資格情報や重要なデータを同じアカウントに置かないようにします。

未確認の点

  • 実際の悪用の有無と、概念実証の公開状況。
  • 5.0 系を含む、部品ごとの正確な影響範囲と修正版の対応(NVD と GitHub のアドバイザリで記載が異なる)。
  • 同じ HDF5 を扱う他のソフトウェアへの波及。
  • NVD の最終評価(現状は評価前)。

この記事について

AI の利用
本記事は AI が NVD などの公開情報をもとに作成しました。数値は取得時点(2026-11-06)のもので、未確認の点は本文に明記しています。

出典

この記事を共有