Skip to content

Comments

[GHSA-3ppc-4f35-3m26] minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern#7007

Closed
daniel-mudigital wants to merge 1 commit intodaniel-mudigital/advisory-improvement-7007from
daniel-mudigital-GHSA-3ppc-4f35-3m26
Closed

[GHSA-3ppc-4f35-3m26] minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern#7007
daniel-mudigital wants to merge 1 commit intodaniel-mudigital/advisory-improvement-7007from
daniel-mudigital-GHSA-3ppc-4f35-3m26

Conversation

@daniel-mudigital
Copy link

Updates

  • Affected products

Comments
specific on affected versions and patched versions

Copilot AI review requested due to automatic review settings February 23, 2026 02:11
@github
Copy link
Collaborator

github commented Feb 23, 2026

Hi there @isaacs! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository.

This change will be reviewed by our Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory

@github-actions github-actions bot changed the base branch from main to daniel-mudigital/advisory-improvement-7007 February 23, 2026 02:12
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the GHSA advisory for minimatch ReDoS to more explicitly enumerate affected products/versions and patched versions.

Changes:

  • Updated the advisory modified timestamp.
  • Added multiple affected entries for the npm package minimatch with different fixed versions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +46 to +52
{
"introduced": "0"
},
{
"fixed": "3.1.3"
}
]
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These affected entries all start with introduced: \"0\" while only changing the fixed version. In OSV semantics, multiple affected records for the same package are effectively unioned; this makes the overall affected range extend up to the largest fixed version (e.g., 4.2.4, 5.1.7, etc.), which overstates impact if the vulnerability is already fixed in 3.1.3 for that line. Consider representing separate release lines with non-overlapping ranges (e.g., introduced: \"4.0.0\" -> fixed: \"4.2.4\", introduced: \"5.0.0\" -> fixed: \"5.1.7\", etc.) or combining into a single affected entry with multiple ranges/events that accurately reflect when each line became affected.

Copilot uses AI. Check for mistakes.
Copy link

@isaacs isaacs Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I gotta agree with the bot on this one. They should be "introduced": "4.0.0", "fixed": "4.2.4" etc.

Comment on lines +64 to +71
"events": [
{
"introduced": "0"
},
{
"fixed": "4.2.4"
}
]
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These affected entries all start with introduced: \"0\" while only changing the fixed version. In OSV semantics, multiple affected records for the same package are effectively unioned; this makes the overall affected range extend up to the largest fixed version (e.g., 4.2.4, 5.1.7, etc.), which overstates impact if the vulnerability is already fixed in 3.1.3 for that line. Consider representing separate release lines with non-overlapping ranges (e.g., introduced: \"4.0.0\" -> fixed: \"4.2.4\", introduced: \"5.0.0\" -> fixed: \"5.1.7\", etc.) or combining into a single affected entry with multiple ranges/events that accurately reflect when each line became affected.

Copilot uses AI. Check for mistakes.
Comment on lines +83 to +90
"events": [
{
"introduced": "0"
},
{
"fixed": "5.1.7"
}
]
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These affected entries all start with introduced: \"0\" while only changing the fixed version. In OSV semantics, multiple affected records for the same package are effectively unioned; this makes the overall affected range extend up to the largest fixed version (e.g., 4.2.4, 5.1.7, etc.), which overstates impact if the vulnerability is already fixed in 3.1.3 for that line. Consider representing separate release lines with non-overlapping ranges (e.g., introduced: \"4.0.0\" -> fixed: \"4.2.4\", introduced: \"5.0.0\" -> fixed: \"5.1.7\", etc.) or combining into a single affected entry with multiple ranges/events that accurately reflect when each line became affected.

Copilot uses AI. Check for mistakes.
Comment on lines +37 to +41
{
"package": {
"ecosystem": "npm",
"name": "minimatch"
},
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The affected array repeats identical package objects for minimatch many times, which is error-prone and hard to audit (and contributed to the overlapping-range issue above). If the schema allows, prefer a single affected entry for the package with multiple ranges (or multiple events sequences) to capture each fixed line, so the version logic is centralized and easier to review.

Copilot uses AI. Check for mistakes.
Comment on lines +56 to +60
{
"package": {
"ecosystem": "npm",
"name": "minimatch"
},
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The affected array repeats identical package objects for minimatch many times, which is error-prone and hard to audit (and contributed to the overlapping-range issue above). If the schema allows, prefer a single affected entry for the package with multiple ranges (or multiple events sequences) to capture each fixed line, so the version logic is centralized and easier to review.

Copilot uses AI. Check for mistakes.
Comment on lines +75 to +79
{
"package": {
"ecosystem": "npm",
"name": "minimatch"
},
Copy link

Copilot AI Feb 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The affected array repeats identical package objects for minimatch many times, which is error-prone and hard to audit (and contributed to the overlapping-range issue above). If the schema allows, prefer a single affected entry for the package with multiple ranges (or multiple events sequences) to capture each fixed line, so the version logic is centralized and easier to review.

Copilot uses AI. Check for mistakes.
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "0.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "4.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "5.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "6.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "7.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "8.0.0"

"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"introduced": "0"
"introduced": "9.0.0"

@G-Rath
Copy link

G-Rath commented Feb 23, 2026

Note I've already opened #7002 which has the correct ranges

@ljharb
Copy link

ljharb commented Feb 23, 2026

Duplicate of #7002. Duplicate of #7003.

@daniel-mudigital
Copy link
Author

Let's use #7002

@github-actions github-actions bot deleted the daniel-mudigital-GHSA-3ppc-4f35-3m26 branch February 23, 2026 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants