Other
CVE-2026-9147 high CVSS 7.8

uproot dynamically generates Python class source code from ROOT TStreamerInfo records in a file...

Summary

uproot dynamically generates Python class source code from ROOT TStreamerInfo records in a file...

Original description

The description as published by the source.

uproot dynamically generates Python class source code from ROOT TStreamerInfo records in a file and compiles it at runtime. Some file-controlled streamer metadata fields (for example, streamer element names) are interpolated into the generated Python source without safe quoting via repr() or the !r format specifier. An attacker who can supply a crafted ROOT file can place Python expression-breaking content into a streamer metadata field. When uproot generates and invokes the corresponding reader method, the injected Python expression is evaluated in the context of the process opening the file, resulting in arbitrary Python code execution in applications that open or process attacker-controlled ROOT files with affected uproot code paths.

Source: NIST National Vulnerability Database NVD GitHub Advisory

AI summary

Written by an external AI model and may contain mistakes. Check the original description and references below before acting on it.

uprootは、ROOTファイルのTStreamerInfoレコードからPythonクラスのソースコードを動的に生成し、実行時にコンパイルします。この過程で、ストリーマのメタデータのフィールドが不適切に取り扱われており、特にPythonの表現破壊コンテンツを挿入することで、任意のコードが実行される可能性があります。攻撃者が細工したファイルを使用することで、プロセスのコンテキストで意図しないコードが実行されるリスクがあります。

❓ What is the problem

uprootは、Pythonコードを動的に生成し、任意のコード実行を招く脆弱性がある。

📍 Affected scope

uprootのROOTファイルのTStreamerInfoレコード処理中。

🔥 Severity

攻撃者が任意のPythonコードを注入し実行可能なため、高リスク。

🔧 How to fix

ストリーマメタデータを安全に取り扱うためにrepr()や!rフォーマット指定子を使用して対策。

🛡️ Workaround

パッチが出るまでは、信頼できるソース以外のROOTファイルを開かないこと。

🔍 Detection

影響を受けるコードを含んでいるか、パッケージのバージョンを確認。

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details