Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-9147-uproot-rce — uproot <= 5.7.4 における、ROOT TStreamerInfoメタデータからの安全でないPythonソース生成を介したコードインジェクション | Kitploit
ツール/GitHubGitHub/saiteja-erukude/cve-2026-9147-uproot-rce
ペイロード生成脆弱性分析エクスプロイト
GitHubsaiteja-erukude/cve-2026-9147-uproot-rce

CVE-2026-9147-uproot-rce

uproot <= 5.7.4 における、ROOT TStreamerInfoメタデータからの安全でないPythonソース生成を介したコードインジェクション

リポジトリを見る

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
2610日前未レビュー

CVE-2026-9147: TStreamerInfo メタデータを介した uproot のコードインジェクション

深刻度: 高、CVSS 4.0 8.5、CVSS 3.1 7.8(CNA である VulnCheck により割り当て)

ベクター (v4.0): CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

ベクター (v3.1): CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

影響を受けるバージョン: uproot <= 5.7.4

修正済み: 5.7.5 / コミット c045c28

CWE: CWE-94(コード生成の制御不備、コードインジェクション)、副次的な CWE-95(Eval インジェクション)

発見および報告者: Sai Teja Erukude

公開日: 2026年7月18日


概要

uproot 5.7.4 以前のバージョンは、ROOT の TStreamerInfo メタデータから Python クラスのソースコードを動的に生成し、実行時にコンパイルします。

ファイルによって制御される一部のストリーマーメタデータフィールドが、安全な引用符処理なしで生成される Python ソースに埋め込まれます。細工された ROOT ファイルを提供できる攻撃者は、細工された要素名など、ストリーマーメタデータに Python 式を破壊するコンテンツを注入できます。

影響を受けるアプリケーションが細工された ROOT ファイルを開き、uproot が対応するリーダーメソッドを生成して呼び出すと、注入された Python 式がホストプロセスのコンテキストで実行される可能性があります。

影響

攻撃者は、影響を受ける uproot のコードパスを通じて攻撃者が制御する ROOT ファイルを開いたり処理したりするアプリケーションにおいて、任意の Python コードを実行できる可能性があります。

アプリケーションによっては、これにより以下が可能になります:

  • プロセスがアクセス可能なファイルの読み取りまたは変更。
  • 環境変数やアプリケーションのシークレットへのアクセス。
  • ホストから到達可能な内部サービスへの呼び出し。
  • データ処理ジョブやアプリケーションの動作の妨害。

技術的詳細

この問題は、ROOT ストリーマーメタデータに対する uproot の生成ソースパスに存在します。

PoC は、ExploitTarget クラス用に細工された TStreamerInfo メタデータを含む ROOT ファイルを作成します。細工されたストリーマー要素名が生成された式から抜け出し、無害な pathlib 呼び出しを注入します。

報告された動作は以下のとおりです:

  1. uproot が細工された ROOT ファイルを開く。
  2. uproot がファイルに基づく TStreamerInfo メタデータを読み取る。
  3. uproot が ExploitTarget 用の Python クラスソースを生成する。
  4. 生成されたクラスソースに注入された式が含まれる。
  5. 生成された read_members メソッドを呼び出すと、注入された式が実行される。

概念実証

root_file_builder.py は、細工されたストリーマーメタデータを含む malicious_tstreamerinfo.root を作成します。

run_poc.py は、uproot でファイルを開き、ファイルに基づく ExploitTarget クラスの生成を強制し、生成された read_members メソッドを呼び出し、マーカーファイルによる証拠を検証します。

ローカルのテスト環境でのみ実行してください:

python -m venv .venv
.venv\Scripts\activate
python -m pip install -r requirements.txt
python -B run_poc.py

脆弱なバージョンで期待される証拠:

uproot_version: 5.7.4
file_backed_element_name_contains_payload: True
class_code_contains_injected_pathlib_call: True
expected_exception: True
exception_type: DeserializationError
marker_exists: True
marker_contents:
executed through uproot generated read_members
success: True

ペイロードは意図的に無害です。ローカルのマーカー文字列を書き込むだけです:

executed through uproot generated read_members

シェルを起動したり、ネットワークサービスに接続したり、シークレットを読み取ったり、データを削除したり、PoCディレクトリ外のファイルを変更したりすることはありません。

修復

uproot 5.7.5 以降にアップグレードしてください。

即時のアップグレードが不可能な場合:

  • 信頼できないユーザーからのROOTファイルを処理しないでください。
  • ROOTファイル処理ジョブを最小限の権限で分離してください。
  • 処理前に予期しない TStreamerInfo メタデータを検証するか拒否してください。
  • アップロードされた、または外部から提供されたROOTファイルを自動的に開くワークフローを避けてください。

開示タイムライン

日付イベント
2026年5月20日脆弱性がVulnCheckに提出されました
2026年5月20日VulnCheckが働きかけを開始し、CVE-2026-9147 が暫定的に割り当てられました
2026年7月5日パッチを含むuproot 5.7.5 がリリースされました
2026年7月18日CVE-2026-9147 が公開されました

クレジット

Sai Teja Erukude によって発見・報告されました。

開示はVulnCheckを通じて調整されました。

参考情報

  • CVEレコード: https://www.cve.org/CVERecord?id=CVE-2026-9147
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-9147
  • VulnCheckアドバイザリ: https://www.vulncheck.com/advisories/uproot-and-before-code-injection-via-tstreamerinfo-metadata
  • GitHubアドバイザリ: https://github.com/scikit-hep/uproot5/security/advisories/GHSA-6946-mq52-g438
  • パッチコミット: https://github.com/scikit-hep/uproot5/commit/c045c2824295d907d2e705f31110c742928e50e7
  • uprootプロジェクト: https://github.com/scikit-hep/uproot5
ツールをダウンロード