Tinypool: Prototype Pollution in Worker-Optionen ermöglicht Codeausführung
Zusammenfassung
Tinypool, eine Worker-Thread-Pool-Bibliothek für Node.js, die häufig in Build- und Testpipelines eingesetzt wird, übernimmt geerbte Werte aus einem manipulierten Object.prototype in die Worker-Optionen execArgv und env. Ein Angreifer, der zuerst eine dieser Eigenschaften manipulieren kann, kann dafür sorgen, dass jeder neu gestartete Worker vom Angreifer gewähltes JavaScript mit den Rechten des Host-Prozesses lädt. Voraussetzung ist eine bestehende Prototype-Pollution-Schwachstelle in derselben Anwendung oder Toolchain; die Auswirkungen können den Zugriff auf CI-Secrets, Signaturschlüssel und Build-Artefakte umfassen.
Betroffen
- tinylibs Tinypool, Versionen vor 2.1.1 (CNA-Eintrag: < 2.1.1; GitHub-Advisory: <= 2.1.0)
- Transitive Abhängigkeiten, zum Beispiel über vitest 3.x, das tinypool ^1.1.1 fixiert
Behoben in
- Tinypool 2.1.1 (laut Herstellerhinweis GHSA-5gmw-xhrv-c9v3, Fix-Commit 24df4e7, PR #134)
- Ein zweiter Hinweis, CVE-2026-104849, wird als in 2.1.2 behoben gemeldet (nicht durch Herstellerdaten verifiziert)
Umgehung
- Keine Workaround des Herstellers dokumentiert. Die Abhilfe ist ein Update.
- Bis zum Update CI-Secrets und Signaturschlüssel nur auf die Jobs beschränken, die sie benötigen.
Ausnutzung
- CISA-SSVC-Bewertung: Ausnutzung 'poc' (Proof of Concept vorhanden), nicht automatisierbar, totale technische Auswirkung.
- Öffentliche technische Details sind in der Herstellerwarnung verfügbar.
- In den geprüften Quellen nicht als aktiv ausgenutzt gelistet (CISA KEV nicht direkt geprüft).
- EPSS 0,00497 (geringe vorhergesagte Ausnutzungswahrscheinlichkeit).
Unsere Empfehlung
- Alle Projekte und CI-Runner ermitteln, die tinypool verwenden, einschliesslich transitiver Abhängigkeiten (zum Beispiel über vitest), etwa mit npm ls tinypool.
- tinypool auf 2.1.2 oder neuer aktualisieren, mindestens auf 2.1.1. vitest 3.x erfordert unter Umständen ein Override oder ein Upgrade auf vitest 4.x; dies vor dem Rollout testen.
- CI-Runner neu aufsetzen und Secrets rotieren, wenn nicht vertrauenswürdiger Code oder Prototype Pollution Builds beeinflusst haben könnte.
Öffentliche Exploits
In PoC-in-GitHub, Metasploit und Exploit-DB ist für diese CVE nichts verzeichnet.
Quellen der Recherche
- GitHub Security Advisory GHSA-5gmw-xhrv-c9v3 github.com
- Tinypool release v2.1.1 github.com
- Fix commit 24df4e7 github.com
- Pull Request #134 github.com
- GitHub Advisory Database GHSA-5gmw-xhrv-c9v3 github.com
- GitLab Advisory CVE-2026-104848 advisories.gitlab.com
- Vulners CVELIST:CVE-2026-104848 vulners.com
Recherchiert und auf Deutsch und Englisch aufbereitet von einer KI (Claude von Anthropic) auf Basis von NVD, CISA, EPSS und den genannten Quellen. Massgebend sind die Angaben des Herstellers. Recherche vom 30.10.2026 23:34.
Referenzen der NVD (5)
- https://github.com/tinylibs/tinypool/commit/24df4e730e7d0857a6d226c9b58f8924227404fd
- https://github.com/tinylibs/tinypool/pull/134
- https://github.com/tinylibs/tinypool/releases/tag/v2.1.1
- https://github.com/tinylibs/tinypool/security/advisories/GHSA-5gmw-xhrv-c9v3
- https://github.com/tinylibs/tinypool/security/advisories/GHSA-5gmw-xhrv-c9v3
Quellen
Der Tracker verbindet offizielle, frei nutzbare Datenquellen – laufend aktualisiert:
- NVD (NIST) – CVE, Bewertung (CVSS), betroffene Produkte
- CISA KEV – von der CISA bestätigt aktiv ausgenutzte Lücken
- CISA Vulnrichment – Einschätzung der CISA (SSVC) im offiziellen CVE-Eintrag
- FIRST EPSS – Wahrscheinlichkeit einer Ausnutzung
- Microsoft MSRC – Patch Tuesday: Lücken, Schweregrad, Updates
- PoC-in-GitHub – öffentliche Proof-of-Concept-Repositories
- Metasploit (Rapid7) – Module des Metasploit Framework
- Exploit-DB (OffSec) – Archiv öffentlicher Exploits (nur Verweise)
- Patch-Tage: offizielle Seiten der Hersteller (je Hersteller verlinkt) (Patch-Tage der Hersteller)
Dieses Angebot nutzt Daten der NVD-API, ist aber von der NVD weder unterstützt noch zertifiziert. EPSS-Daten © FIRST.org.
Betroffen? Wir helfen.
Wir prüfen, ob Ihre Systeme betroffen sind, spielen Updates ein und schliessen die Lücke – auf Wunsch auch laufend mit dem System Health Checker.
