[GHSA-mh99-v99m-4gvg] brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash - #8832
Conversation
|
Hi there @juliangruber! 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 |
There was a problem hiding this comment.
Pull request overview
Updates the advisory to reflect the brace-expansion 3.x security backport.
Changes:
- Adds 3.0.3 as a fixed version.
- Adds the backport pull request reference.
- Updates advisory metadata.
Comments suppressed due to low confidence (1)
advisories/github-reviewed/2026/07/GHSA-mh99-v99m-4gvg/GHSA-mh99-v99m-4gvg.json:53
- This new range does not mark 3.0.3 as safe:
affectedentries are unioned, and the existingintroduced: "0"/fixed: "5.0.8"range still includes 3.0.3. Make the ranges non-overlapping—for example, start the existing 5.x/4.x range at4.0.0, while retaining this0→3.0.3range—so 3.0.3 is actually excluded and the unfixed 4.x line remains affected.
"introduced": "0"
},
{
"fixed": "3.0.3"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "schema_version": "1.4.0", | ||
| "id": "GHSA-mh99-v99m-4gvg", | ||
| "modified": "2026-07-24T21:53:14Z", | ||
| "modified": "2026-07-24T21:53:15Z", |
|
Hi there @juliangruber! 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 |
|
Thanks for filing this. One issue with the current diff: the first Changing that first entry's I verified first-patched-per-branch empirically, running the advisory's own PoC against the resolved entry point of every published version under const mod = require('brace-expansion');
const expand = typeof mod === 'function' ? mod : mod.expand;
expand('{a,b}'.repeat(1500));
So: 1.x has no fix, 2.x is fixed in One trap worth recording, because it makes |
|
Hi there @juliangruber! 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 |
|
Since juliangruber/brace-expansion#129 has also been merged and released, we can now also add the fixed V1 version and match GHSA-mh99-v99m-4gvg |
|
The v1 backport is now published as brace-expansion 1.1.17, so the current third affected entry in this PR still needs to be split. As written, introduced 0 / fixed 2.1.3 continues to flag the patched 1.1.17 release. The package owner advisory already reports: The exact non-overlapping ecosystem ranges should therefore be:
Please also add juliangruber/brace-expansion#129 as the v1 backport reference. Release commit: juliangruber/brace-expansion@5c57cc2 This preserves every genuinely vulnerable branch while allowing scanners to clear all four patched maintenance lines. |
|
Hi there @juliangruber! 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 |
|
Independent consumer verification: |
Updates
Comments
Updated fixed versions due to backport