Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
{
"schema_version": "1.4.0",
"id": "GHSA-hp3w-g68c-fv3c",
"modified": "2026-10-05T23:47:34Z",
"modified": "2026-10-05T23:47:35Z",
"published": "2026-09-24T15:31:31Z",
"aliases": [
"CVE-2026-97058"
],
"summary": "sprintf-js vulnerable to denial of service through unbounded precision specifiers",
"details": "sprintf-js through 1.1.3 passes unbounded precision specifiers to toFixed, toExponential, and toPrecision methods without validation, causing uncaught RangeError exceptions. Attackers who control format strings can inject precision values exceeding ECMAScript limits to abort calling operations with minimal payload.",
"details": "\n### Workaround & Risk Assessment\n- **Development Tooling**: In most downstream projects, `sprintf-js` is introduced transitively through build tools, loggers, or development dependencies (e.g., `electron-builder` / `global-agent`). In these scenarios, format strings are static and not controlled by untrusted user input, so the risk is minimal.\n- **Direct Usage**: Avoid passing untrusted external input as format strings. If dynamic precision is required, validate that the precision specifier does not exceed 100 before calling `sprintf()`.\n",
"severity": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
},
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N"
Expand Down
Loading