BinaryMuse toml-node: Quadratic-complexity denial-of-service (CVE-2026-114143)
The toml-node library is vulnerable to a quadratic-complexity denial-of-service attack, where long dotted keys in TOML documents cause CPU exhaustion or process crashes via memory depletion.
CVE search metadata
CVE search record: CVE-2026-114143. EPSS: 0.47%. KEV: no. Product: toml-node (<= 5.0.0). Brief: BinaryMuse toml-node: Quadratic-complexity denial-of-service (CVE-2026-114143). Brief link: https://feed.craftedsignal.io/briefs/2026-10-toml-node-dos-218678a9/
Triage facts
Revision 1- Applicability
- toml-node (<= 5.0.0)
- Evidence
- Unknown
- Severity
- High
- Action
- Elevated
- Sources
- 2 public sources
- Freshness
- Revision 1Oct 29, 12:31 UTC
- Vulnerabilities
- 1 CVE
- Source quality
- A1Likely
The toml-node library (npm package toml) is vulnerable to a quadratic-complexity (O(n²)) denial-of-service (DoS) via long dotted keys, table headers, or inline-table keys. The library repeatedly recomputes the full path-prefix string during parsing, with no limits on segment count or total input length. This vulnerability is not mitigated by the existing maxDepth option and affects assign(), deepRef(), and setNestedKey() functions.
Impact
- Event Loop Blocking: A ~100KB payload induces a multi-second synchronous hang, stalling the entire Node.js event loop.
- Process Crash: A ~200KB payload causes a fatal
JavaScript heap out of memoryerror, terminating the Node.js process. - Unauthenticated Access: Exploitation requires only that the target application parses a user-controlled TOML input (e.g., config uploads or API request bodies).
Recommendation
- Upgrade or apply patches to
toml-nodeas they become available. - If a patch is unavailable, implement a pre-parsing input size limit (e.g., rejecting TOML documents exceeding a reasonable size such as 10KB) to prevent the O(n²) trigger.
- Implement length validation on key segments for any TOML data processed by the library.
- Migrate away from
toml-nodeif the library is not actively maintained to address these structural vulnerabilities.
Immediate actions
Identify applications in the environment using the toml npm package and verify if they process untrusted TOML input.
Threat Hunt
Monitor application logs for repeated, large, or unusual TOML parsing errors and application crashes associated with config or API endpoints.
Data: Application error logs, Node.js process crash logs, Payload size metrics for TOML processing endpoints
Mitigations
Implement input size constraints on endpoints accepting TOML documents to prevent large payloads (e.g., > 10KB).
CVE-2026-114143