Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-9147-uproot-rce — uproot <= 5.7.4 Code-Injektion durch unsichere Generierung von Python-Quellcode aus ROOT-TStreamerInfo-Metadaten. | Kitploit
Tools/GitHubGitHub/saiteja-erukude/cve-2026-9147-uproot-rce
Payload-GenerierungSchwachstellenanalyseExploitation
GitHubsaiteja-erukude/cve-2026-9147-uproot-rce

CVE-2026-9147-uproot-rce

uproot <= 5.7.4 Code-Injektion durch unsichere Generierung von Python-Quellcode aus ROOT-TStreamerInfo-Metadaten.

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
2vor 25 TagenNoch nicht geprüft
Teilen

CVE-2026-9147: Code-Injektion in uproot über TStreamerInfo-Metadaten

Schweregrad: Hoch, CVSS 4.0 8.5, CVSS 3.1 7.8 (vergeben von VulnCheck, der CNA)

Vektor (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

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

Betroffen: uproot <= 5.7.4

Behoben in: 5.7.5 / Commit c045c28

CWE: CWE-94 (Unsachgemäße Kontrolle der Generierung von Code, Code-Injektion); sekundär CWE-95 (Eval-Injektion)

Gemeldet von: Sai Teja Erukude

CNA: VulnCheck

Veröffentlicht: 18. Juli 2026


Zusammenfassung

uproot und frühere Versionen generieren dynamisch Python-Klassenquellcode aus ROOT--Metadaten und kompilieren ihn zur Laufzeit.

5.7.4
TStreamerInfo

Einige dateigesteuerte Streamer-Metadatenfelder werden ohne sichere Quotierung in den generierten Python-Quellcode interpoliert. Ein Angreifer, der eine manipulierte ROOT-Datei bereitstellen kann, kann ausdruckbrechenden Inhalt in Streamer-Metadaten injizieren, beispielsweise einen manipulierten Elementnamen.

Wenn eine betroffene Anwendung die manipulierte ROOT-Datei öffnet und uproot die entsprechende Read-Methode generiert und aufruft, kann der injizierte Python-Ausdruck im Kontext des Host-Prozesses ausgeführt werden.

Auswirkungen

Ein Angreifer kann beliebigen Python-Code in Anwendungen ausführen, die angreiferkontrollierte ROOT-Dateien mit betroffenen uproot-Codepfaden öffnen oder verarbeiten.

Je nach Anwendung kann dies Folgendes ermöglichen:

  • Lesen oder Ändern von Dateien, auf die der Prozess zugreifen kann.
  • Zugriff auf Umgebungsvariablen und Anwendungsgeheimnisse.
  • Aufrufen interner Dienste, die vom Host aus erreichbar sind.
  • Stören von Datenverarbeitungsaufträgen oder des Anwendungsverhaltens.

Technisches Detail

Das Problem liegt im generierten-Quellcode-Pfad von uproot für ROOT-Streamer-Metadaten.

Der PoC erstellt eine ROOT-Datei, die manipulierte TStreamerInfo-Metadaten für eine ExploitTarget-Klasse enthält. Der manipulierte Streamer-Elementname bricht aus dem generierten Ausdruck aus und injiziert einen harmlosen pathlib-Aufruf.

Das gemeldete Verhalten ist:

  1. uproot öffnet die manipulierte ROOT-Datei.
  2. uproot liest dateigestützte TStreamerInfo-Metadaten.
  3. uproot generiert Python-Klassenquellcode für ExploitTarget.
  4. Der generierte Klassenquellcode enthält den injizierten Ausdruck.
  5. Das Aufrufen der generierten read_members-Methode führt den injizierten Ausdruck aus.

Proof of Concept

root_file_builder.py erstellt malicious_tstreamerinfo.root mit manipulierten Streamer-Metadaten.

run_poc.py öffnet die Datei mit uproot, erzwingt die Generierung der dateigestützten ExploitTarget-Klasse, ruft die generierte read_members-Methode auf und überprüft die Marker-Datei-Nachweise.

Nur in einer lokalen Testumgebung ausführen:

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

Erwartete Nachweise bei verwundbaren Versionen:

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

Der Payload ist absichtlich harmlos. Er schreibt lediglich diese lokale Marker-Zeichenfolge:

root@kitploit:~
executed through uproot generated read_members

Er startet keine Shell, verbindet sich nicht mit einem Netzwerkdienst, liest keine Geheimnisse, löscht keine Daten und ändert keine Dateien außerhalb des PoC-Verzeichnisses.

Abhilfe

Aktualisieren Sie auf uproot 5.7.5 oder höher.

Wenn ein sofortiges Update nicht möglich ist:

  • Verarbeiten Sie keine ROOT-Dateien von nicht vertrauenswürdigen Benutzern.
  • Isolieren Sie ROOT-Datei-Verarbeitungsaufträge mit minimalen Berechtigungen.
  • Validieren oder verwerfen Sie unerwartete TStreamerInfo-Metadaten vor der Verarbeitung.
  • Vermeiden Sie Arbeitsabläufe, die hochgeladene oder extern bereitgestellte ROOT-Dateien automatisch öffnen.

Offenlegungszeitplan

DatumEreignis
20. Mai 2026Schwachstelle bei VulnCheck eingereicht
20. Mai 2026VulnCheck nahm Kontakt auf; CVE-2026-9147 vorläufig vergeben
5. Juli 2026uproot 5.7.5 mit Patch veröffentlicht
18. Juli 2026CVE-2026-9147 veröffentlicht

Anerkennung

Entdeckt und gemeldet von Sai Teja Erukude, koordiniert über VulnCheck.

Referenzen

  • CVE-Eintrag: https://www.cve.org/CVERecord?id=CVE-2026-9147
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-9147
  • VulnCheck-Advisory: https://www.vulncheck.com/advisories/uproot-and-before-code-injection-via-tstreamerinfo-metadata
  • GitHub-Advisory: https://github.com/scikit-hep/uproot5/security/advisories/GHSA-6946-mq52-g438
  • Patch-Commit: https://github.com/scikit-hep/uproot5/commit/c045c2824295d907d2e705f31110c742928e50e7
  • uproot-Projekt: https://github.com/scikit-hep/uproot5
Tool herunterladen