CVE-2026-104849

CRITICALPre-NVD 9.59.5—
EchelonGraph scoreMEDIUM confidence

This critical-severity CVE scores 9.5 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.4% (30th percentile of EPSS-scored CVEs). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).

Triggered by: NVD CVSS baseline
Sources: epss, secondary
Trending — 3 sources updated this week
9.5EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0.4%CVSS: 9.5Exploit: None knownExposed services: Not assessed

A fix is available — apply it.

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.

CVSS v3
9.5
EG Score
9.5CRITICALmedium confidence
EG Risk
47
EG Risk 47/100CISA SSVC

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity95% × 45%
Exploitation0% × 40%
Automatability30% × 15%
CISA SSVC: Track at low or medium mission impact; Track* or Attend at high (mission-essential systems).
Action: A fix is available. Apply it within your standard update timelines at low or medium mission impact and sooner than that at high.
EPSS PROB
0.4%
EPSS %ILE
30th
KEV
Not listed

CISA SSVCTrack at low or medium mission impact; Track* or Attend at high (mission-essential systems).

A fix is available. Apply it within your standard update timelines at low or medium mission impact and sooner than that at high.

Exploitation none (no KEV listing, exploit record or EPSS ≥ 50%) · Automatable unknown (not published for this CVE) · Technical impact total (CVSS ≥ 9.0). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table

Published

October 2, 2026

Last Modified

October 2, 2026

Advisory Details (4)

Auto-updated Oct 2, 2026
🔬 Proof of concept available. Patch available. Sources: github_commit, github_pr, github_release, github.
github Patch Available🟡 PoC Available

Prototype Pollution Gadget to RCE in run() options · Advisory · tinylibs/tinypool · GitHub

https://github.com/tinylibs/tinypool/security/advisories/GHSA-85c8-ppgw-ccpr
github_release Patch Available

v2.1.2

Patch available: tinylibs/tinypool v2.1.2

https://github.com/tinylibs/tinypool/releases/tag/v2.1.2
github_pr Patch Available

fix: guard worker filename from proto pollution

Patch available: tinylibs/tinypool v2.1.2 (PR #135 merged 2026-08-23)

https://github.com/tinylibs/tinypool/pull/135
github_commit Patch Available

commit f41411a3e233 (tinylibs/tinypool)

Patch available: tinylibs/tinypool v2.1.2 (contains commit f41411a3e233)

https://github.com/tinylibs/tinypool/commit/f41411a3e23324c674f35a19a3240f7a7c40ffbf

Weakness Classification(2)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 5× in last 7d / 5× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-10-03 17:30 UTCEG score recompute
  2. 2026-10-03 14:25 UTCEPSS rescore
  3. 2026-10-02 17:29 UTCEG score recompute
  4. 2026-10-02 16:31 UTCEG score recompute
  5. 2026-10-02 16:30 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-104849?
CVE-2026-104849 is a critical vulnerability published on October 2, 2026. 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…
When was CVE-2026-104849 disclosed?
CVE-2026-104849 was first published on October 2, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-104849 actively exploited?
CVE-2026-104849 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.4% probability of exploitation in the next 30 days (30th percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2026-104849?
CVE-2026-104849 has a CVSS base score of 9.5 (a secondary CVSS source that NVD displays; NVD's own analysis pending).
How do I remediate CVE-2026-104849?
A fix for CVE-2026-104849 is available: update to the fixed version the vendor names in its advisory.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-104849

Explore →

Is Your Infrastructure Affected by CVE-2026-104849?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.