diff --git a/advisories/github-reviewed/2026/09/GHSA-hp3w-g68c-fv3c/GHSA-hp3w-g68c-fv3c.json b/advisories/github-reviewed/2026/09/GHSA-hp3w-g68c-fv3c/GHSA-hp3w-g68c-fv3c.json index b0388e9bcaf..b8ed540fdbf 100644 --- a/advisories/github-reviewed/2026/09/GHSA-hp3w-g68c-fv3c/GHSA-hp3w-g68c-fv3c.json +++ b/advisories/github-reviewed/2026/09/GHSA-hp3w-g68c-fv3c/GHSA-hp3w-g68c-fv3c.json @@ -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"