Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/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ソース生成を介したコードインジェクション

リポジトリを見る

人気

すべて見る →

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

すべてのツールを探索

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

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

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

重大度: 高, CVSS 4.0 8.5, CVSS 3.1 7.8(VulnCheck(CNA)によって割り当て)

ベクター(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

CNA: VulnCheck

公開日: 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 メソッドを呼び出して、マーカーファイルの証拠を検証します。

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

root@kitploit:~
python -m venv .venv
.venv\Scripts\activate
python -m pip install -r requirements.txt
python -B run_poc.py

脆弱なバージョンで期待される出力:

root@kitploit:~
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

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

root@kitploit:~
executed through uproot generated read_members

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

修復策

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

直ちにアップグレードできない場合:

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

開示タイムライン

日付出来事
2026年5月20日VulnCheck に脆弱性を提出

クレジット

Sai Teja Erukude によって発見・報告され、VulnCheck を通じて調整されました。

参考情報

  • CVE レコード
  • NVD
  • VulnCheck アドバイザリ
  • GitHub アドバイザリ
  • パッチコミット
  • uproot プロジェクト
ツールをダウンロード
2026年5月20日VulnCheck がアウトリーチを開始。CVE-2026-9147 が暫定的に割り当てられる
2026年7月5日パッチを含む uproot 5.7.5 がリリース
2026年7月18日CVE-2026-9147 が公開