GHSA-g3hv-75wg-m249

    Dashboard / Vulnerabilities / GHSA-g3hv-75wg-m249

    GHSA-g3hv-75wg-m249

    Published: 30 Oct 2026Last Modified: 4 Nov 2026

    Summary: minimatch has potential denial of service via globparts amplification

    Details: minimatch 10.2.6 contains an attacker-controlled pattern amplification in firstPhasePreProcess() when optimizationLevel >= 2. researcher: Reid Downing (b1nv0id) files: - src/index.ts: 690-770 - src/index.ts: 780-796 issue: input-controlled growth of globParts during first-phase preprocessing, followed by quadratic second-phase processing. the **/../ transformation clones a globparts entry and appends the clone to the same globparts array: ``` parts.splice(gs, 1) const other = parts.slice(0) other[gs] = '**' globParts.push(other) ``` this occurs inside a do...while (didSomething) fixpoint loop, allowing generated entries to be processed again. the expanded globparts array is subsequently processed by secondPhasePreProcess(), which performs pairwise comparisons: ``` for (let i = 0; i < globParts.length - 1; i++) { for (let j = i + 1; j < globParts.length; j++) { this.partsMatch(...) } } ``` an attacker who can supply a glob pattern can therefore cause additional pattern entries to be generated during preprocessing, followed by quadratic pairwise processing, resulting in excessive cpu and memory consumption.

    Affected packages

    Package

    Name: minimatch

    Purl: pkg:npm/minimatch

    Affected ranges

    Type: SEMVER

    Events:

    Introduced- 7.0.0
    Fixed -11.0.1

    Affected versions

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High