Intel

AIKIDO-2026-662563

browserslist is vulnerable to Denial of Service (DoS)

Denial of Service (DoS)GHSA-c83g-rgw3-j3cx Published 2 days ago

65

Medium Risk

This Affects:

JSbrowserslist
4.7.2 - 4.28.6
Fixed in 4.28.7
Are you affected? Scan for Free

TL;DR

Browserslist caches every distinct query result and parsed query AST in unbounded plain-object caches in index.js with no size cap, expiry, or eviction. Cheap valid queries such as since date queries expand to an effectively unbounded space of distinct cache keys, so a long-running process that feeds externally influenced query values retains one cache entry for every distinct value it has ever seen. Sustained distinct queries grow the heap without limit until the process exhausts memory and crashes, and the existing cache-clearing helper does not reset these in-memory caches. The fix replaces both caches with bounded Map instances that evict the oldest entry once a fixed maximum entry count is reached.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and a long-running process calls browserslist() with query values influenced by external input.

Background info

browserslist is vulnerable to Denial of Service (DoS) in versions 4.7.2 - 4.28.6.

How to fix this

Upgrade the org.mvnpm:browserslist library to the patch version.