Description
Browserslist is a configuration tool for sharing target browsers and Node.js versions between front-end tools. Prior to 4.28.7, index.js retains every distinct `(queries, context)` result in cache and every parseQueries() AST in parseCache without a size cap, TTL, or eviction, allowing an attacker who can influence repeated browserslist() query values, including valid since `<year>-<month>-<day>` queries, to bypass the caller-controlled BROWSERSLIST_DISABLE_CACHE mitigation and cause linear memory growth followed by an out-of-memory process crash. This issue is fixed in version 4.28.7.
Published: 2026-08-11
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Browserslist, a configuration tool that shares browser targeting data among front‑end build tools, contains a memory exhaustion flaw. Prior to version 4.28.7 the library keeps every distinct (queries, context) result and every parseQueries() abstract syntax tree in memory without any size cap, TTL, or eviction policy. This flaw, identified as CWE‑770, permits an attacker who can influence the browserslist() query values to trigger linear growth of the internal cache until the host process runs out of memory and crashes, resulting in a denial‑of‑service condition.

Affected Systems

This vulnerability affects all public releases of browserslist up to and including 4.28.6, which are commonly embedded in front‑end build pipelines such as Webpack, Rollup, and Babel. The issue is resolved in browserslist 4.28.7, which introduces a bounded cache and eviction policy to prevent excessive memory usage.

Risk and Exploitability

The CVSS score of 7.5 reflects a high severity risk, but the EPSS score of less than 1% indicates that exploitation is unlikely at present. The vulnerability is not listed in CISA’s KEV catalog. The likely attack vector does not rely on network access; instead, it requires an attacker who can supply repeated browserslist() queries—such as a malicious user feeding custom version strings or a CI pipeline that processes untrusted configuration files—to force the cache to expand and eventually exhaust system memory.

Generated by OpenCVE AI on August 12, 2026 at 21:48 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade browserslist to version 4.28.7 or later.
  • If an upgrade cannot be performed immediately, isolate or remove browserslist from any untrusted build or CI environments to prevent repeated query execution.
  • Apply runtime limits or process isolation to the build pipeline, ensuring that excessive memory allocation from browserslist is constrained until a patch is applied.

Generated by OpenCVE AI on August 12, 2026 at 21:48 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 14 Aug 2026 13:00:00 +0000

Type Values Removed Values Added
First Time appeared Browserslist Project
Browserslist Project browserslist
Vendors & Products Browserslist Project
Browserslist Project browserslist

Thu, 13 Aug 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 13 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
First Time appeared Redhat
Redhat hummingbird
CPEs cpe:/a:redhat:hummingbird:1
Vendors & Products Redhat
Redhat hummingbird
References
Metrics threat_severity

None

threat_severity

Important


Tue, 11 Aug 2026 17:15:00 +0000

Type Values Removed Values Added
Description Browserslist is a configuration tool for sharing target browsers and Node.js versions between front-end tools. Prior to 4.28.7, index.js retains every distinct `(queries, context)` result in cache and every parseQueries() AST in parseCache without a size cap, TTL, or eviction, allowing an attacker who can influence repeated browserslist() query values, including valid since `<year>-<month>-<day>` queries, to bypass the caller-controlled BROWSERSLIST_DISABLE_CACHE mitigation and cause linear memory growth followed by an out-of-memory process crash. This issue is fixed in version 4.28.7.
Title Browserslist: Unbounded memory growth (no cache eviction) via distinct query results, leading to eventual OOM
Weaknesses CWE-770
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

Browserslist Project Browserslist
Redhat Hummingbird
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-13T14:07:57.169Z

Reserved: 2026-08-10T19:37:41.445Z

Link: CVE-2026-73089

cve-icon Vulnrichment

Updated: 2026-08-13T13:14:09.845Z

cve-icon NVD

Status : Received

Published: 2026-08-11T17:19:17.123

Modified: 2026-08-13T15:20:06.763

Link: CVE-2026-73089

cve-icon Redhat

Severity : Important

Publid Date: 2026-08-11T17:05:38Z

Links: CVE-2026-73089 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T12:45:16Z

Weaknesses
  • CWE-770

    Allocation of Resources Without Limits or Throttling