Lucene search

K
cvelistCheckmarxCVELIST:CVE-2024-4068
HistoryMay 13, 2024 - 10:06 a.m.

CVE-2024-4068 Memory Exhaustion in braces

2024-05-1310:06:38
CWE-1050
Checkmarx
www.cve.org
20
cve-2024-4068
memory exhaustion
npm package
'braces'
lib/parse.js
javascript heap limit

7.5 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

0.0004 Low

EPSS

Percentile

15.7%

The NPM package braces, versions prior to 3.0.3, fails to limit the number of characters it can handle, which could lead to Memory Exhaustion. In lib/parse.js, if a malicious user sends β€œimbalanced braces” as input, the parsing will enter a loop, which will cause the program to start allocating heap memory without freeing it at any moment of the loop. Eventually, the JavaScript heap limit is reached, and the program will crash.

CNA Affected

[
  {
    "collectionURL": "https://www.npmjs.com/package/micromatch",
    "defaultStatus": "unknown",
    "packageName": "braces",
    "product": "braces",
    "programFiles": [
      "lib/parse.js"
    ],
    "repo": "https://github.com/micromatch/braces",
    "vendor": "micromatch",
    "versions": [
      {
        "changes": [
          {
            "at": "3.0.3",
            "status": "unaffected"
          }
        ],
        "lessThanOrEqual": "3.0.2",
        "status": "affected",
        "version": "0",
        "versionType": "git"
      }
    ]
  }
]

7.5 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

NONE

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

0.0004 Low

EPSS

Percentile

15.7%