CVE-2026-104183: stream-json prototype pollution via __proto__ key

CVE-2026-104183 · Severity: medium · CVSS 5.1 · Published 2026-10-01

stream-json is a Node.js library that parses JSON and JSONC data streams with minimal memory overhead. A flaw allows specially crafted JSON containing a __proto__ key to replace an object's prototype or inject malicious properties, which could lead to authorization bypass or feature toggle manipulation in applications that trust inherited object properties.

Technologies: stream-json (npm). Vendors: npm, Uhop.

Quick answers

Is CVE-2026-104183 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-104183 being exploited in the wild.
How severe is CVE-2026-104183?
Medium severity, with a CVSS score of 5.1, published 1 October 2026.
Which products and versions are affected?
stream-json (npm) < 3.6.0, SEMVER:introduced=0,fixed=3.6.0; Uhop Stream-Json before 3.6.0.
Is there a fix for CVE-2026-104183?
Yes. stream-json (npm): upgrade to 3.6.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-104183 attacked?
It is attacked with local access, in a software library.
Am I affected by CVE-2026-104183?
Check whether you run stream-json (npm) or Uhop Stream-Json at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • stream-json (npm): upgrade to 3.6.0 or later
    npm install stream-json@3.6.0

Technical details

The Assembler component uses plain property assignment during JSON parsing without filtering the __proto__ key, allowing prototype pollution. An attacker who can supply malicious JSON input (where the application's documented contract is locally owned data) can replace or modify object prototypes, affecting authorization decisions or feature flags that rely on inherited values. The fix in version 3.6.0 adds checks to prevent __proto__ from triggering prototype replacement.

Affected products

  • uhop stream-json before 3.6.0

Identifiers

  • CVE-2026-104183
  • GHSA-mjw6-4jj6-33hc

Timeline

  • 2026-10-01: disclosed
  • 2026-08-27: patched

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.