Answer in brief
CVE-2026-49293 records a High severity (CVSS 7.5) vulnerability in CPU exhaustion via O(n^2) BigInt construction on radix-prefixed integer literals. The current sources do not mark it as known exploited. The current feed maps sunnyadn/js-toml (generic), js-toml (npm), js-toml (npm), js-toml (npm) and additional mapped packages. Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 7.5. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps sunnyadn/js-toml (generic), js-toml (npm), js-toml (npm), js-toml (npm) and additional mapped packages. Check affected ranges and fixed versions before updating.
| Product | Affected versions | Fixed versions |
|---|---|---|
| cpe:2.3:a:sunnyadn:js-toml:*:*:*:*:*:node.js:*:* | Not reported | Not reported |
| Package | Affected range | Fixed version |
|---|---|---|
| sunnyadn/js-tomlgeneric | <1.1.2 | 1.1.2 |
| js-tomlnpm | <=1.1.0 | 1.1.1 |
| js-tomlnpm | >=0 <1.1.1 | 1.1.1 |
| js-tomlnpm | <=1.1.1 | 1.1.2 |
| js-tomlnpm | >=0 <1.1.2 | 1.1.2 |
Published upstream
Jun 19, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Nov 4, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Jun 19, 2026
js-toml is a TOML parser for JavaScript, fully compliant with the TOML 1.0.0 Spec. Versions up to and including 1.1.1 parse hexadecimal / octal / binary integer literals via a hand-written `parseBigInt` loop that multiplies a `BigInt` accumulator by the radix once per input digit. Each iteration performs a `BigInt * BigInt` operation on an accumulator that grows linearly with the number of digits already consumed, so the whole loop is O(n²) in the literal length. The lexer regex places no upper bound on the literal length, so a single TOML document containing one ~500 kB hex literal pins one CPU core for ~40 seconds on a modern laptop (Apple M-series, Node v22). Memory amplification is bounded but CPU amplification is severe and grows quadratically: doubling the literal length quadruples the work. A caller that invokes `load()` on attacker-controlled TOML (configuration upload endpoints, CI/CD systems ingesting third-party `*.toml`, IDE plugins, build tools) is exposed to a single-request CPU exhaustion DoS. Version 1.1.2 fixes the issue.
Quoted source text, attributed separately from HOL analysis.