Skip to content
Heist/ feed
Back to feed
Unrated

Withdrawn Advisory: sprintf-js vulnerable to denial of service through unbounded precision specifiers

Type: withdrawalSources: OSV

### Withdrawn Advisory This advisory has been withdrawn because it is the responsibility of an application to handle exceptions appropriately. This link is maintained to preserve external references. ### Original Description 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.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
Not specified
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 19:25 UTC · Revision 1

Source evidence

Withdrawn Advisory: sprintf-js vulnerable to denial of service through unbounded precision specifiers

core-osv · Original source

Published 24 Sept 2026, 15:31 UTC

### Withdrawn Advisory This advisory has been withdrawn because it is the responsibility of an application to handle exceptions appropriately. This link is maintained to preserve external references. ### Original Description 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.

osv:GHSA-hp3w-g68c-fv3c

sprintf-js

Fixed versions: Not specified

Complete source record
{
  "id": "b1e8bfb2496ceb7a7500bd0a32dbe09e59f29da19834d801e16dd6219313ea70",
  "url": "https://osv.dev/vulnerability/GHSA-hp3w-g68c-fv3c",
  "method": "structured",
  "payload": {
    "kind": "withdrawal",
    "title": "Withdrawn Advisory: sprintf-js vulnerable to denial of service through unbounded precision specifiers",
    "summary": "### Withdrawn Advisory This advisory has been withdrawn because it is the responsibility of an application to handle exceptions appropriately. This link is maintained to preserve external references. ### Original Description 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.",
    "evidence": "osv:GHSA-hp3w-g68c-fv3c",
    "products": [
      {
        "name": {
          "value": "sprintf-js",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": []
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "GHSA-hp3w-g68c-fv3c",
      "aliases": [
        "CVE-2026-97058",
        "GHSA-hp3w-g68c-fv3c"
      ],
      "metrics": [
        {
          "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"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "1.1.3"
                }
              ]
            }
          ],
          "package": {
            "name": "sprintf-js",
            "purl": "pkg:npm/sprintf-js",
            "ecosystem": "npm"
          },
          "database_specific": {
            "source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-hp3w-g68c-fv3c/GHSA-hp3w-g68c-fv3c.json"
          }
        }
      ],
      "modified": "2026-10-22T19:30:03.876804485Z",
      "provider": "osv",
      "references": [
        "https://nvd.nist.gov/vuln/detail/CVE-2026-97058",
        "https://github.com/alexei/sprintf.js/issues/237",
        "https://github.com/alexei/sprintf.js/issues/237#issuecomment-6159075240",
        "https://github.com/alexei/sprintf.js",
        "https://github.com/alexei/sprintf.js/blob/3a0d8c26d291b5bd9f1974877ecc50739921d6f5/src/sprintf.js#L17",
        "https://github.com/alexei/sprintf.js/blob/3a0d8c26d291b5bd9f1974877ecc50739921d6f5/src/sprintf.js#L84-L90",
        "https://www.vulncheck.com/advisories/sprintf-js-through-1.1.3-denial-of-service-via-unbounded-precision"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-1284"
        ],
        "severity": "MODERATE",
        "github_reviewed": true,
        "nvd_published_at": "2026-09-24T14:18:21Z",
        "github_reviewed_at": "2026-10-05T23:47:34Z"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-97058",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/1/score"
  },
  "source_id": "core-osv",
  "document_id": 409950,
  "published_at": "2026-09-24T15:31:31+00:00"
}