Tinypool: Prototype Pollution führt zu Codeausführung über run()-Optionen
Zusammenfassung
Tinypool ist eine Worker-Thread-Pool-Bibliothek für Node.js. Versionen vor 2.1.2 lesen den Worker-Dateinamen aus einem vom Aufrufer gelieferten Optionsobjekt, ohne eigene Eigenschaften zu prüfen. Ein manipulierter Object.prototype.filename kann dadurch das vorgesehene Worker-Modul ersetzen. Ein Angreifer, der zuerst den Prototyp manipulieren kann, kann den Pool dazu bringen, von ihm gewählten JavaScript-Code zu laden und Aufgabendaten mit den Rechten des Host-Prozesses zu lesen oder zu verändern. Betroffen sind nur Anwendungen, die bei pool.run() ein eigenes zweites Optionsobjekt übergeben.
Betroffen
- tinypool (npm) Versionen vor 2.1.2
- Nur betroffen, wenn pool.run() mit einem eigenen zweiten Optionsobjekt aufgerufen wird
- In der Regel eine transitive Abhängigkeit in Build-, Test- und Entwicklungswerkzeugen
Behoben in
- Version 2.1.2 (Fix-Commit f41411a, PR #135)
- Version 2.1.2 deckt auch CVE-2026-104848 (GHSA-5gmw-xhrv-c9v3) ab
Umgehung
- Aufrufe von pool.run(task) ohne zweites Argument sind nicht betroffen; dies reduziert die Exposition, ist aber kein Fix
- Abhängigkeiten prüfen und patchen, die Prototypen manipulieren können (zum Beispiel lodash.merge oder qs.parse)
Ausnutzung
- Aktiv ausgenutzt: Unbekannt. In den geprüften Quellen gibt es keine Hinweise.
- Öffentlicher Proof of Concept: Ja, im GitHub-Advisory referenziert (nicht reproduziert).
- CISA SSVC: Exploitation poc, automatisierbar ja, technische Auswirkung total.
- Ein Angreifer muss zuerst Object.prototype über eine separate Schwachstelle manipulieren.
Unsere Empfehlung
- Lockfiles (package-lock.json, yarn.lock, bun.lock) und CI-/Build-Umgebungen auf tinypool unter 2.1.2 prüfen, einschliesslich transitiver Kopien.
- Auf tinypool 2.1.2 oder neuer aktualisieren.
- Quellen für Prototype Pollution in Node.js-Anwendungen und Abhängigkeiten identifizieren und beheben.
- Öffentlich erreichbare Node.js-Dienste, die nicht vertrauenswürdige Eingaben verarbeiten, priorisieren.
- Build-Pipelines auf unerwartetes Laden von Worker-Modulen und Auffälligkeiten überwachen.
Öffentliche Exploits
Links zu fremden Seiten, von uns nicht geprüft – Exploit-Code kann Schadsoftware enthalten. Nur in isolierten Testumgebungen verwenden.
- Proof of Concept auf GitHub (1 Repositories)
CompleteTech-Security/tinypool-options-rce-check
Quellen der Recherche
- Fix commit f41411a (tinypool) github.com
- Pull request #135 (tinypool) github.com
- Release v2.1.2 (tinypool) github.com
- GitHub Security Advisory GHSA-85c8-ppgw-ccpr (vendor) github.com
- GitHub Advisory Database GHSA-85c8-ppgw-ccpr github.com
- Related advisory GHSA-5gmw-xhrv-c9v3 github.com
- Kodem CVE archive CVE-2026-104849 www.kodemsecurity.com
- VulnCheck/Vulners VULNRICHMENT:CVE-2026-104849 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:35.
Referenzen der NVD (5)
- https://github.com/tinylibs/tinypool/commit/f41411a3e23324c674f35a19a3240f7a7c40ffbf
- https://github.com/tinylibs/tinypool/pull/135
- https://github.com/tinylibs/tinypool/releases/tag/v2.1.2
- https://github.com/tinylibs/tinypool/security/advisories/GHSA-85c8-ppgw-ccpr
- https://github.com/tinylibs/tinypool/security/advisories/GHSA-85c8-ppgw-ccpr
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.
