Machine-written summary
Summary written by Claude Haiku from the source advisory. Not reviewed by a person.
Tinypool versions before 2.1.2 are affected. When a caller passes an options object to pool.run(), the filename option is read through the prototype chain, so an attacker who can pollute Object.prototype with a filename property can make tinypool load and run an attacker-controlled worker module. Exploitation requires that prototype pollution exists elsewhere in the application and that the application passes an options object to run(); the attacker can then redirect task data to a malicious worker. Upgrade to tinypool 2.1.2 or later, which contains the fix.
Not analysed yet
We haven’t published our analysis of this Advisory yet. Once a person has reviewed it, this page will say what’s vulnerable, what has to be true for your app to be affected, and how to check.
Severity and exploitation
| Score | Rating | CVSS | Vector | Source |
|---|---|---|---|---|
| 9.5 | Critical | 4.0 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H | CNA (GitHub_M) |
- CISA KEV Not listed.
- EPSS 0.0049, the 42nd percentile, on 8 Nov 2026: FIRST’s estimate of the chance of exploitation in the next 30 days.
Timeline
- 31 Oct 2026, 13:34 UTC First seen by agentprime
- 31 Oct 2026, 13:34 UTC Confirmed by OSV
Sources
- GitHub Advisory Database: GHSA-85c8-ppgw-ccpr
- OSV: GHSA-85c8-ppgw-ccpr
- github.com/tinylibs/tinypool/security/advisories/GHSA-85c8-ppgw-ccpr
- nvd.nist.gov/vuln/detail/CVE-2026-104849
- github.com/tinylibs/tinypool/pull/135
- github.com/tinylibs/tinypool/commit/f41411a3e23324c674f35a19a3240f7a7c40ffbf
- github.com/tinylibs/tinypool
- github.com/tinylibs/tinypool/releases/tag/v2.1.2