[12] Regular Expression Denial of Service (ReDoS) in micromatch #237
Labels
No labels
blocked
documentation
duplicate
enhancement
good first issue
help wanted
invalid
needs criteria
needs estimate
needs tests
question
spike
type
admin
type
alert
type
bug
type
defect
type
dependencies
type
epic
type
investigation
type
story
wontfix
blocked
duplicate
needs criteria
needs designs
needs estimate
needs testing
question
type
admin
type
alert
type
bug
type
defect
type
dependencies
type
design
type
documentation
type
epic
type
incident
type
investigation
type
spike
type
story
won't fix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: RabbitLabs/random-bunny#237
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
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 inmicromatch.braces()
inindex.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.