p PatchFirst

CVE-2026-104849

CVE-2026-104849 · Tinypool: Prototype Pollution Gadget to RCE in run() options

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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 9.5 · Critical · EPSS 0.5% · Public exploit · Fix available

Published
Updated

Stack: node

Affected products and versions

  • tinypool

    Versions
    • < 2.1.2: Affected

    No fix published

  • tinypool npm

    Affected ranges
    • SEMVER: < 2.1.2

    Update to 2.1.2

Original sources

Check your server →