[12] Regular Expression Denial of Service (ReDoS) in micromatch #237

Open
opened 2024-10-15 17:55:08 +01:00 by Helpdesk · 0 comments
Member

Package: micromatch (npm)
Affected versions: < 4.0.8
Patched version: 4.0.8


The NPM package micromatch prior to version 4.0.8 is vulnerable to Regular Expression Denial of Service (ReDoS). The vulnerability occurs in micromatch.braces() in index.js because the pattern .* will greedily match anything. By passing a malicious payload, the pattern matching will keep backtracking to the input while it doesn't find the closing bracket. As the input size increases, the consumption time will also increase until it causes the application to hang or slow down. There was a merged fix but further testing shows the issue persisted prior to micromatch/micromatch#266. This issue should be mitigated by using a safe pattern that won't start backtracking the regular expression due to greedy matching.

Package: micromatch (npm) Affected versions: < 4.0.8 Patched version: 4.0.8 --- The NPM package `micromatch` prior to version 4.0.8 is vulnerable to Regular Expression Denial of Service (ReDoS). The vulnerability occurs in `micromatch.braces()` in `index.js` because the pattern `.*` will greedily match anything. By passing a malicious payload, the pattern matching will keep backtracking to the input while it doesn't find the closing bracket. As the input size increases, the consumption time will also increase until it causes the application to hang or slow down. There was a merged fix but further testing shows the issue persisted prior to [micromatch/micromatch#266](https://github.com/micromatch/micromatch/pull/266). This issue should be mitigated by using a safe pattern that won't start backtracking the regular expression due to greedy matching.
Helpdesk added the
type
alert
label 2024-10-15 17:55:30 +01:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: RabbitLabs/random-bunny#237
No description provided.