#VU92405 Uncontrolled Memory Allocation in Braces


Published: 2024-06-20

Vulnerability identifier: #VU92405

Vulnerability risk: Medium

CVSSv3.1: 6.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2024-4068

CWE-ID: CWE-789

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Braces
Other software / Other software solutions

Vendor: micromatch

Description

The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to NPM package `braces` fails to limit the number of characters it can handle, which could lead to Memory Exhaustion. A remote attacker can send "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.

Mitigation
Install updates from vendor's website.

Vulnerable software versions

Braces: 0.1.4 - 3.0.2


External links
http://github.com/micromatch/braces/issues/35
http://devhub.checkmarx.com/cve-details/CVE-2024-4068/
http://github.com/micromatch/braces/pull/37
http://github.com/micromatch/braces/pull/40
http://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability