CVE 8.1 HIGH

piscina: Prototype Pollution Gadget → RCE via inherited options.filename_CVE-2026-55388

8.1 / 10
HIGH
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Description

piscina is a node.js worker pool implementation. Prior to 6.0.0-rc.2, 5.2.0, and 4.9.3, piscina's constructor and run() paths read the filename option via plain member access. Both reads fall through the prototype chain when the caller's options object doesn't have filename as an own property. When Object.prototype.filename is polluted upstream the inherited value flows to worker_threads.Worker import and the attacker's .mjs runs in the worker. This vulnerability is fixed in 6.0.0-rc.2, 5.2.0, and 4.9.3.

Basic Information

ID CVE-2026-55388
Source GitHub_M
Published Jun 22, 2026 at 16:50

Affected Product

Vendor piscinajs
Product piscina
Version < 4.9.3
Affected Versions piscinajs piscina < 4.9.3
piscinajs piscina >= 5.0.0-alpha.0, < 5.2.0
piscinajs piscina >= 6.0.0-rc.1, < 6.0.0-rc.2

CWE Classification

References

💭 Join the Security Discussion

🔒 Your email address will not be published. Required fields are marked *

⚠️ Please be respectful and constructive in your comments. Security discussions should remain professional.