CVE-2026-82404

TOON: Prototype pollution when decoding untrusted TOON input

HIGH
8.3
CVSS Score
Published: September 2, 2026 at 04:30 PM UTC
Updated: September 9, 2026 at 09:17 PM UTC
1 product affected across 1 vendorToon

Using toon by toon-format?

Get instant alerts when new vulnerabilities affect toon - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.3
Exploit prediction
EPSS 0.7%
SSVC
No known exploit

Description

TOON is a compact, human-readable serialization of JSON data for LLM prompts. Prior to 2.3.1, decoding attacker-controlled TOON with a __proto__, constructor, or prototype key wrote through the object prototype chain instead of creating an own property, polluting Object.prototype for the runtime. In packages/toon/src/decode/expand.ts, the expandPaths: 'safe' path and insertPathSafe function made dotted keys such as a.__proto__.x the strongest vector, while plain nested objects, tabular rows, quoted keys, and streaming decode were also affected. The encoder also dropped own __proto__ properties and could invoke an inherited setter during normalization. Services that decode untrusted TOON could experience denial of service or, when a suitable downstream gadget is present, remote code execution. This issue is fixed in version 2.3.1.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 2.3.1
Affected range stops below 2.3.1, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

SSVC — Action Prioritization

SSVCNo known exploitAutomatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

8.3HIGHGitHub_M
Attack Vector
NETWORK
Complexity
LOW
Privileges
NONE
User Interaction
NONE
Scope
CHANGED
Confidentiality
LOW
Integrity
LOW
Availability
LOW
Vector?

Quick Info

StatusDEFERRED
CWE
CWE-1321

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card