CVE-2026-104849
Tinypool is a minimal Node.js worker thread pool implementation. Prior to 2.1.2, Tinypool reads filename from a caller-supplied options object in pool.run(task, options) without requiring an own property, so a polluted Object.prototype.filename can replace the intended worker module. Applications are affected only when they pass their own second-argument options object to pool.run(); calls without that argument use the trusted default options object. An attacker who can first pollute the prototype can cause the worker pool to load attacker-selected JavaScript and can read or modify task data with the host process's privileges. This issue is fixed in version 2.1.2.
Package Versions Affected
Automatically patch vulnerabilities without upgrading
CVSS Version



Related Resources
References
https://github.com/tinylibs/tinypool/releases/tag/v2.1.2, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/104xxx/CVE-2026-104849.json, https://github.com/tinylibs/tinypool/security/advisories/GHSA-85c8-ppgw-ccpr, https://nvd.nist.gov/vuln/detail/CVE-2026-104849, https://github.com/tinylibs/tinypool/commit/f41411a3e23324c674f35a19a3240f7a7c40ffbf, https://github.com/tinylibs/tinypool/pull/135