Every CVE Search/ Get API key

CVE-2026-102277

brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

5.3 MediumFix available

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.43%Up 0.1 points since Sep 29, 2026
90%50%10%1%

What each source reports

CVE List Score used 5.3

brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
CVE-2026-102277
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-400, CWE-407
Updated
2026-11-02
EUVDEUVD-2026-88551 5.3

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
EUVD-2026-88551
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-q2hr-2g5m-vwhr 5.3

brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

Summary

Expanding {a},b}-shaped input takes time quadratic in the number of literal } characters, blocking the event loop.

Bash preserves a quirk where a brace group followed by a comma set still expands ({a},b}). The parser implements this by rewriting the string and restarting the scan. Each pass absorbs exactly one } and re-scans from the beginning, so n trailing braces cost n full passes.

Reproduction

const build = n => '{a}' + '}'.repeat(n) + ',z}'

for (const n of [8000, 16000, 32000, 64000, 128000]) {
  const t = Date.now()
  expand(build(n))
  console.log(n, Date.now() - t + 'ms')
}

| n | input | time | results | |---|---|---|---| | 8,000 | 8 KB | 110 ms | 2 | | 16,000 | 16 KB | 446 ms | 2 | | 32,000 | 32 KB | 1.7 s | 2 | | 64,000 | 64 KB | 6.9 s | 2 | | 128,000 | 128 KB | 27.7 s | 2 |

ms/n^2 is flat at ~1.7 and each doubling of n costs exactly 4.0x - quadratic. 128 KB of input blocks the event loop for nearly half a minute to produce two results.

Mechanism

Instrumenting the rewrite branch confirms it runs exactly n + 1 times, once per literal }, each re-scanning the whole string.

There is a second multiplier. The rewrite replaces the group's closing } with the internal escClose sentinel, which is '\0CLOSE' + Math.random() + '\0' - about 25 characters. The working string therefore grows by ~25 characters on every pass:

| n | input length | final string length | |---|---|---| | 1,000 | 1,006 | 26,006 | | 8,000 | 8,006 | 208,006 |

So the input is inflated roughly 26x, and that factor multiplies both the quadratic constant and peak memory. This makes it partly a memory-pressure issue as well as a CPU one.

Why max and maxLength do not help

The cost is in parsing, before the result set exists. The payload yields 2 results regardless of size, so neither bound is ever reached.

Impact

An application passing an untrusted pattern to expand(), directly or through minimatch / glob, can have its event loop blocked for tens of seconds by a payload well under minimatch's 65,536-character cap. For a single-threaded Node server that is a full stall, not just a slow request.

Degraded availability rather than a crash - the process recovers once the expansion completes.

Affected versions

Verified affected on 1.1.18, 2.1.4, 3.0.6 and 5.0.9, all within a few percent of each other (~460-490 ms at n=16,000).

Patch

The rewrite loop gets an iteration bound. Past the cap the remaining string is treated as non-expanding and returned literally, consistent with the existing max / maxLength caps, which truncate rather than throw.

Note this bounds the number of passes, not the cost of each: worst-case work remains proportional to cap x input length. The cap is set low enough that the residual is bounded in practice, and far above what any realistic {a},b} input needs.

Severity note

Scored 5.3 Medium (A:L) for consistency with GHSA-3jxr-9vmj-r5cp, the other algorithmic-complexity advisory on this package (CWE-407), which uses the same vector. The stack-exhaustion advisories on this package score A:H because they crash the process outright; this one stalls it.

Record
GHSA-q2hr-2g5m-vwhr
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-400, CWE-407
Updated
2026-11-02
NVD 5.3

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
CVE-2026-102277
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-400, CWE-407
Updated
2026-11-02
OSV 5.3

brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
CVE-2026-102277
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-400, CWE-407
Updated
2026-11-06
OSVDEBIAN-CVE-2026-102277 5.3

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
DEBIAN-CVE-2026-102277
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
Show 40 moreShow less
OSVGHSA-q2hr-2g5m-vwhr 5.3

brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

Summary

Expanding {a},b}-shaped input takes time quadratic in the number of literal } characters, blocking the event loop.

Bash preserves a quirk where a brace group followed by a comma set still expands ({a},b}). The parser implements this by rewriting the string and restarting the scan. Each pass absorbs exactly one } and re-scans from the beginning, so n trailing braces cost n full passes.

Reproduction

const build = n => '{a}' + '}'.repeat(n) + ',z}'

for (const n of [8000, 16000, 32000, 64000, 128000]) {
  const t = Date.now()
  expand(build(n))
  console.log(n, Date.now() - t + 'ms')
}

| n | input | time | results | |---|---|---|---| | 8,000 | 8 KB | 110 ms | 2 | | 16,000 | 16 KB | 446 ms | 2 | | 32,000 | 32 KB | 1.7 s | 2 | | 64,000 | 64 KB | 6.9 s | 2 | | 128,000 | 128 KB | 27.7 s | 2 |

ms/n^2 is flat at ~1.7 and each doubling of n costs exactly 4.0x - quadratic. 128 KB of input blocks the event loop for nearly half a minute to produce two results.

Mechanism

Instrumenting the rewrite branch confirms it runs exactly n + 1 times, once per literal }, each re-scanning the whole string.

There is a second multiplier. The rewrite replaces the group's closing } with the internal escClose sentinel, which is '\0CLOSE' + Math.random() + '\0' - about 25 characters. The working string therefore grows by ~25 characters on every pass:

| n | input length | final string length | |---|---|---| | 1,000 | 1,006 | 26,006 | | 8,000 | 8,006 | 208,006 |

So the input is inflated roughly 26x, and that factor multiplies both the quadratic constant and peak memory. This makes it partly a memory-pressure issue as well as a CPU one.

Why max and maxLength do not help

The cost is in parsing, before the result set exists. The payload yields 2 results regardless of size, so neither bound is ever reached.

Impact

An application passing an untrusted pattern to expand(), directly or through minimatch / glob, can have its event loop blocked for tens of seconds by a payload well under minimatch's 65,536-character cap. For a single-threaded Node server that is a full stall, not just a slow request.

Degraded availability rather than a crash - the process recovers once the expansion completes.

Affected versions

Verified affected on 1.1.18, 2.1.4, 3.0.6 and 5.0.9, all within a few percent of each other (~460-490 ms at n=16,000).

Patch

The rewrite loop gets an iteration bound. Past the cap the remaining string is treated as non-expanding and returned literally, consistent with the existing max / maxLength caps, which truncate rather than throw.

Note this bounds the number of passes, not the cost of each: worst-case work remains proportional to cap x input length. The cap is set low enough that the residual is bounded in practice, and far above what any realistic {a},b} input needs.

Severity note

Scored 5.3 Medium (A:L) for consistency with GHSA-3jxr-9vmj-r5cp, the other algorithmic-complexity advisory on this package (CWE-407), which uses the same vector. The stack-exhaustion advisories on this package score A:H because they crash the process outright; this one stalls it.

Record
GHSA-q2hr-2g5m-vwhr
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-400, CWE-407
Updated
2026-11-02
OSVRHSA-2026:74161 7.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:74161
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRHSA-2026:74167 7.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:74167
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRHSA-2026:74168 7.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:74168
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRLSA-2026:92376 8.1

Important: nodejs:24 security, bug fix, and enhancement update

Node.js is a software development platform for building fast and scalable network applications in the JavaScript programming language.

Security Fix(es):

  • ip-address: ip-address: Denial of Service via unbounded IPv6 address parsing (CVE-2026-101911)

  • brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns (CVE-2026-102278)

  • brace-expansion: brace-expansion: Denial of Service via crafted brace patterns (CVE-2026-102277)

  • brace-expansion: brace-expansion: Denial of Service via stack exhaustion from crafted brace patterns (CVE-2026-102276)

  • brotli: Out-of-Bounds Write in Google Brotli Decoder (CVE-2026-111497)

  • nodejs: nodejs: TLS certificate hostname bypass via fullwidth-digit IP hostnames (CVE-2026-105483)

  • nodejs: nodejs: TLS certificate hostname bypass via non-canonical IP hostnames (CVE-2026-106069)

  • nodejs: nodejs: dns.resolve truncates hostnames containing a NUL character (CVE-2026-105482)

  • nodejs: nodejs: predictable random values via snapshot entropy cache reuse (CVE-2026-106074)

  • nodejs: nodejs: Permission model bypass via wildcard path matching flaw (CVE-2026-106071)

  • nodejs: nodejs: Response desynchronization via improper HTTP keep-alive connection reuse (CVE-2026-105481)

  • nodejs: Node.js: Filesystem read permission bypass via fs.realpathSync() (CVE-2026-106073)

  • nodejs: nodejs: Authentication bypass via non-canonical IPv4 hostname verification (CVE-2026-106072)

Bug Fix(es) and Enhancement(s):

  • nodejs:24/nodejs: Rebase to the latest Node.js 24 release [rhel-8] (JIRA:Rocky Linux-289763)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:92376
CVSS 3.1
8.1 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRLSA-2026:92378 8.1

Important: nodejs:24 security, bug fix, and enhancement update

Node.js is a software development platform for building fast and scalable network applications in the JavaScript programming language.

Security Fix(es):

  • ip-address: ip-address: Denial of Service via unbounded IPv6 address parsing (CVE-2026-101911)

  • brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns (CVE-2026-102278)

  • brace-expansion: brace-expansion: Denial of Service via crafted brace patterns (CVE-2026-102277)

  • brace-expansion: brace-expansion: Denial of Service via stack exhaustion from crafted brace patterns (CVE-2026-102276)

  • brotli: Out-of-Bounds Write in Google Brotli Decoder (CVE-2026-111497)

  • nodejs: nodejs: TLS certificate hostname bypass via fullwidth-digit IP hostnames (CVE-2026-105483)

  • nodejs: nodejs: TLS certificate hostname bypass via non-canonical IP hostnames (CVE-2026-106069)

  • nodejs: nodejs: dns.resolve truncates hostnames containing a NUL character (CVE-2026-105482)

  • nodejs: nodejs: predictable random values via snapshot entropy cache reuse (CVE-2026-106074)

  • nodejs: nodejs: Permission model bypass via wildcard path matching flaw (CVE-2026-106071)

  • nodejs: nodejs: Response desynchronization via improper HTTP keep-alive connection reuse (CVE-2026-105481)

  • nodejs: Node.js: Filesystem read permission bypass via fs.realpathSync() (CVE-2026-106073)

  • nodejs: nodejs: Authentication bypass via non-canonical IPv4 hostname verification (CVE-2026-106072)

Bug Fix(es) and Enhancement(s):

  • nodejs:24/nodejs: Rebase to the latest Node.js 24 release [rhel-9.8.z] (JIRA:Rocky Linux-293233)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:92378
CVSS 3.1
8.1 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2026-102277 5.3

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
UBUNTU-CVE-2026-102277
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVALSA-2026:92376 No score

Important: nodejs:24 security, bug fix, and enhancement update

Node.js is a software development platform for building fast and scalable network applications in the JavaScript programming language.

Security Fix(es):

  • ip-address: ip-address: Denial of Service via unbounded IPv6 address parsing (CVE-2026-101911)
  • brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns (CVE-2026-102278)
  • brace-expansion: brace-expansion: Denial of Service via crafted brace patterns (CVE-2026-102277)
  • brace-expansion: brace-expansion: Denial of Service via stack exhaustion from crafted brace patterns (CVE-2026-102276)
  • brotli: Out-of-Bounds Write in Google Brotli Decoder (CVE-2026-111497)
  • nodejs: nodejs: TLS certificate hostname bypass via fullwidth-digit IP hostnames (CVE-2026-105483)
  • nodejs: nodejs: TLS certificate hostname bypass via non-canonical IP hostnames (CVE-2026-106069)
  • nodejs: nodejs: dns.resolve truncates hostnames containing a NUL character (CVE-2026-105482)
  • nodejs: nodejs: predictable random values via snapshot entropy cache reuse (CVE-2026-106074)
  • nodejs: nodejs: Permission model bypass via wildcard path matching flaw (CVE-2026-106071)
  • nodejs: nodejs: Response desynchronization via improper HTTP keep-alive connection reuse (CVE-2026-105481)
  • nodejs: Node.js: Filesystem read permission bypass via fs.realpathSync() (CVE-2026-106073)
  • nodejs: nodejs: Authentication bypass via non-canonical IPv4 hostname verification (CVE-2026-106072)

Bug Fix(es) and Enhancement(s):

  • nodejs:24/nodejs: Rebase to the latest Node.js 24 release [rhel-8] (JIRA:RHEL-289763)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
ALSA-2026:92376
Updated
2026-11-02
OSVALSA-2026:92378 No score

Important: nodejs:24 security, bug fix, and enhancement update

Node.js is a software development platform for building fast and scalable network applications in the JavaScript programming language.

Security Fix(es):

  • ip-address: ip-address: Denial of Service via unbounded IPv6 address parsing (CVE-2026-101911)
  • brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns (CVE-2026-102278)
  • brace-expansion: brace-expansion: Denial of Service via crafted brace patterns (CVE-2026-102277)
  • brace-expansion: brace-expansion: Denial of Service via stack exhaustion from crafted brace patterns (CVE-2026-102276)
  • brotli: Out-of-Bounds Write in Google Brotli Decoder (CVE-2026-111497)
  • nodejs: nodejs: TLS certificate hostname bypass via fullwidth-digit IP hostnames (CVE-2026-105483)
  • nodejs: nodejs: TLS certificate hostname bypass via non-canonical IP hostnames (CVE-2026-106069)
  • nodejs: nodejs: dns.resolve truncates hostnames containing a NUL character (CVE-2026-105482)
  • nodejs: nodejs: predictable random values via snapshot entropy cache reuse (CVE-2026-106074)
  • nodejs: nodejs: Permission model bypass via wildcard path matching flaw (CVE-2026-106071)
  • nodejs: nodejs: Response desynchronization via improper HTTP keep-alive connection reuse (CVE-2026-105481)
  • nodejs: Node.js: Filesystem read permission bypass via fs.realpathSync() (CVE-2026-106073)
  • nodejs: nodejs: Authentication bypass via non-canonical IPv4 hostname verification (CVE-2026-106072)

Bug Fix(es) and Enhancement(s):

  • nodejs:24/nodejs: Rebase to the latest Node.js 24 release [rhel-9.8.z] (JIRA:RHEL-293233)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
ALSA-2026:92378
Updated
2026-11-02
OSVAZL-105072 No score

CVE-2026-102277 affecting package js-jquery 3.5.0-4

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
AZL-105072
Updated
2026-11-05
OSVAZL-105089 No score

CVE-2026-102277 affecting package nodejs-nodemon 2.0.3-5

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
AZL-105089
Updated
2026-11-05
OSVAZL-105251 No score

CVE-2026-102277 affecting package python-tensorboard 2.16.2-6

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Record
AZL-105251
Updated
2026-11-02
OSVCLSA-2026-1790854736 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.20-tuxcare.1.

Record
CLSA-2026-1790854736
Updated
2026-11-02
OSVCLSA-2026-1790856851 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.18-tuxcare.2.

Record
CLSA-2026-1790856851
Updated
2026-11-02
OSVCLSA-2026-1790862926 No score

TuxCare security update for brace-expansion (2 CVEs)

TuxCare rebuilt brace-expansion to address 2 CVEs. Fixed in 4.0.1-tuxcare.2.

Record
CLSA-2026-1790862926
Updated
2026-11-02
OSVCLSA-2026-1790862940 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 2.0.2-tuxcare.2.

Record
CLSA-2026-1790862940
Updated
2026-11-02
OSVCLSA-2026-1790864782 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.16-tuxcare.2.

Record
CLSA-2026-1790864782
Updated
2026-11-02
OSVCLSA-2026-1790869488 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.15-tuxcare.2.

Record
CLSA-2026-1790869488
Updated
2026-11-02
OSVCLSA-2026-1790870256 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.14-tuxcare.2.

Record
CLSA-2026-1790870256
Updated
2026-11-02
OSVCLSA-2026-1790887113 No score

TuxCare security update for brace-expansion (3 CVEs)

TuxCare rebuilt brace-expansion to address 3 CVEs. Fixed in 2.0.1-tuxcare.4.

Record
CLSA-2026-1790887113
Updated
2026-11-02
OSVCLSA-2026-1791226583 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 2.1.6-tuxcare.1.

Record
CLSA-2026-1791226583
Updated
2026-11-02
OSVCLSA-2026-1791226683 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 5.0.11-tuxcare.1.

Record
CLSA-2026-1791226683
Updated
2026-11-02
OSVCLSA-2026-1791278751 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 5.0.10-tuxcare.2.

Record
CLSA-2026-1791278751
Updated
2026-11-02
OSVCLSA-2026-1791279204 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 2.1.4-tuxcare.2.

Record
CLSA-2026-1791279204
Updated
2026-11-02
OSVCLSA-2026-1791282750 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 2.1.3-tuxcare.3.

Record
CLSA-2026-1791282750
Updated
2026-11-02
OSVCLSA-2026-1791285043 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 5.0.9-tuxcare.3.

Record
CLSA-2026-1791285043
Updated
2026-11-02
OSVCLSA-2026-1791304072 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 2.1.2-tuxcare.4.

Record
CLSA-2026-1791304072
Updated
2026-11-02
OSVCLSA-2026-1791626852 No score

TuxCare security update for brace-expansion (4 CVEs)

TuxCare rebuilt brace-expansion to address 4 CVEs. Fixed in 1.1.11-tuxcare.3.

Record
CLSA-2026-1791626852
Updated
2026-11-02
OSVCLSA-2026-1791629378 No score

TuxCare security update for brace-expansion (2 CVEs)

TuxCare rebuilt brace-expansion to address 2 CVEs. Fixed in 5.0.4-tuxcare.2.

Record
CLSA-2026-1791629378
Updated
2026-11-02
OSVCLSA-2026-1791666934 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 5.0.8-tuxcare.4.

Record
CLSA-2026-1791666934
Updated
2026-11-02
OSVCLSA-2026-1791798665 No score

TuxCare security update for brace-expansion (6 CVEs)

TuxCare rebuilt brace-expansion to address 6 CVEs. Fixed in 5.0.5-tuxcare.2.

Record
CLSA-2026-1791798665
Updated
2026-11-02
OSVCLSA-2026-1792233030 No score

TuxCare security update for brace-expansion (4 CVEs)

TuxCare rebuilt brace-expansion to address 4 CVEs. Fixed in 1.1.12-tuxcare.5.

Record
CLSA-2026-1792233030
Updated
2026-11-02
OSVCLSA-2026-1792448853 No score

TuxCare security update for brace-expansion (6 CVEs)

TuxCare rebuilt brace-expansion to address 6 CVEs. Fixed in 5.0.6-tuxcare.1.

Record
CLSA-2026-1792448853
Updated
2026-11-02
OSVCLSA-2026-1792453589 No score

TuxCare security update for brace-expansion (7 CVEs)

TuxCare rebuilt brace-expansion to address 7 CVEs. Fixed in 5.0.3-tuxcare.1.

Record
CLSA-2026-1792453589
Updated
2026-11-02
OSVCLSA-2026-1792479350 No score

TuxCare security update for brace-expansion (7 CVEs)

TuxCare rebuilt brace-expansion to address 7 CVEs. Fixed in 5.0.2-tuxcare.1.

Record
CLSA-2026-1792479350
Updated
2026-11-02
OSVCLSA-2026-1793102029 No score

TuxCare security update for brace-expansion (5 CVEs)

TuxCare rebuilt brace-expansion to address 5 CVEs. Fixed in 1.1.3-tuxcare.2.

Record
CLSA-2026-1793102029
Updated
2026-11-02
OSVCLSA-2026-1793445824 No score

TuxCare security update for brace-expansion (1 CVE)

TuxCare rebuilt brace-expansion to address 1 CVE. Fixed in 1.1.1-tuxcare.2.

Record
CLSA-2026-1793445824
Updated
2026-11-02
OSVopenSUSE-SU-2026:11967-1 No score

pi-coding-agent-1.0.0-1.1 on GA media

These are all security issues fixed in the pi-coding-agent-1.0.0-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:11967-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:12424-1 No score

agama-web-ui-25+475.275dd4727-56.1 on GA media

These are all security issues fixed in the agama-web-ui-25+475.275dd4727-56.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:12424-1
Updated
2026-11-06
OSVopenSUSE-SU-2026:22111-1 No score

Security update for pi-coding-agent

This update for pi-coding-agent fixes the following issues:

Changes in pi-coding-agent:

  • Update to version 1.0.4 (1.0.3 was superseded the same day and never submitted):

    • BREAKING: provider azure-openai-responses renamed to azure, now also serving Azure Foundry Chat Completions (azure/deepseek-v4-pro first). Rename the provider key in auth.json (or run /login again), models.json and settings.json (defaultProvider, enabledModels and modelThinkingLevels); sessions on the old provider fall back and lose prompt cache. AZURE_OPENAI_* env vars unchanged
    • --tools and --exclude-tools take *-patterns and --no-mcp disables MCP for one run; --tools keeps MCP tools unless an entry starts with mcp__
    • Codemode read() on image files yields an image block image() shows, and image() also saves each image to a temp file for later turns
    • Fix fenced-code highlighting past the first line, MCP OAuth native-client registration, MCP shutdown racing a connecting server, Bedrock stalled-stream retries and frozen codemode built-ins, plus ChatGPT-login, EIO-on-closed-terminal and output-file-permission fixes
    • Many more fixes and improvements; see upstream's release notes for the full list
  • Refresh the vendored node_modules 1.0.2 -> 1.0.4: the ten @earendil-works packages move to 1.0.4; nanoid, postcss and vite move too but are dev-only and not shipped. Still 119 shipped modules and the licence union is unchanged

    • CVE-2026-102276 (boo#1283188): brace-expansion is 5.0.12, above the 5.0.10 fix floor, so the package is not affected by it
    • CVE-2026-102277 (boo#1283392) and CVE-2026-102278 (boo#1283412): brace-expansion is 5.0.12, at the 5.0.12 and above the 5.0.11 fix floors, so the package is not affected by them
  • Update to version 1.0.2: patch releases on the 1.0 API, with no breaking changes

    • models.json takes samplingParamsByThinkingLevel next to the existing samplingParams, so an OpenAI-compatible model can set temperature, top_p and the like separately for off, minimal, low, medium, high, xhigh and max. Model defaults, the effective level's override and the request are merged per key, modelOverrides merges per level, and the levels are pi's own, not the provider's thinkingLevelMap values. Only openai-completions, openai-responses and azure-openai-responses apply them
    • MCP servers can be enabled, disabled or re-scoped per project from a .pi/mcp.json entry without a command or url, and /mcp toggles a user-level server for the current project
    • oauth.clientRegistration: "cimd" identifies pi by its Client ID Metadata Document instead of dynamic client registration
    • pi.registerToolRenderer() picks how calls to a tool that is not registered yet are drawn, such as MCP tools in a resumed session
    • Cloudflare's Clef and Clef Flash classifier models are usable from codemode scripts and extensions
    • A codemode script printing in a loop now fails at 16 Mi characters or 100000 items instead of running pi out of memory
    • MCP tool calls in resumed sessions and HTML exports no longer render fully expanded until their server connects
    • JPEG, GIF and WebP images that extensions draw through Image now appear in Kitty, Ghostty, WezTerm and Warp, and fullscreen Kitty images no longer collapse to a one-row strip after scrolling in WezTerm
    • Many more fixes and improvements; see upstream's release notes for the full list
  • Refresh the vendored node_modules over 1.0.0 -> 1.0.2: the ten @earendil-works packages move to 1.0.2, with pi-telemetry the one that was already at 1.0.2 in the 1.0.1 tree, plus @anthropic-ai/sdk to 0.129.0. No module leaves or joins the 119 shipped ones and the licence union is unchanged

    • CVE-2026-102276 (boo#1283188): brace-expansion is 5.0.12, above the 5.0.10 fix floor, so the package is not affected by it. Upstream's 1.0.1 made…
Record
openSUSE-SU-2026:22111-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
brace-expansion
npm
4.0.0 up to 5.0.12
5.0.12
brace-expansion
npm
3.0.0 up to 3.0.9
3.0.9
brace-expansion
npm
2.0.0 up to 2.1.7
2.1.7
brace-expansion
npm
before 1.1.21
1.1.21
nodejs
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
1:24.22.1-1.module_el8.10.0+4331+0683c9c1
nodejs-devel
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
1:24.22.1-1.module_el8.10.0+4331+0683c9c1
nodejs-docs
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
1:24.22.1-1.module_el8.10.0+4331+0683c9c1
nodejs-full-i18n
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
1:24.22.1-1.module_el8.10.0+4331+0683c9c1
nodejs-libs
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
1:24.22.1-1.module_el8.10.0+4331+0683c9c1
nodejs-nodemon
AlmaLinux:8
From an advisory covering 13 CVEs
before 3.1.14-2.module_el8.10.0+4250+09238ed4
3.1.14-2.module_el8.10.0+4250+09238ed4
Show 90 moreShow less
Affected packages
PackageAffectedFixed
nodejs-packaging
AlmaLinux:8
From an advisory covering 13 CVEs
before 2021.06-6.module_el8.10.0+4086+70facd4a
2021.06-6.module_el8.10.0+4086+70facd4a
nodejs-packaging-bundler
AlmaLinux:8
From an advisory covering 13 CVEs
before 2021.06-6.module_el8.10.0+4086+70facd4a
2021.06-6.module_el8.10.0+4086+70facd4a
npm
AlmaLinux:8
From an advisory covering 13 CVEs
before 1:11.19.1-1.24.22.1.1.module_el8.10.0+4331+0683c9c1
1:11.19.1-1.24.22.1.1.module_el8.10.0+4331+0683c9c1
v8-13.6-devel
AlmaLinux:8
From an advisory covering 13 CVEs
before 3:13.6.233.17-1.24.22.1.1.module_el8.10.0+4331+0683c9c1
3:13.6.233.17-1.24.22.1.1.module_el8.10.0+4331+0683c9c1
nodejs
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module_el9.8.0+333+788f3075
1:24.22.1-3.module_el9.8.0+333+788f3075
nodejs-devel
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module_el9.8.0+333+788f3075
1:24.22.1-3.module_el9.8.0+333+788f3075
nodejs-docs
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module_el9.8.0+333+788f3075
1:24.22.1-3.module_el9.8.0+333+788f3075
nodejs-full-i18n
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module_el9.8.0+333+788f3075
1:24.22.1-3.module_el9.8.0+333+788f3075
nodejs-libs
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module_el9.8.0+333+788f3075
1:24.22.1-3.module_el9.8.0+333+788f3075
nodejs-nodemon
AlmaLinux:9
From an advisory covering 13 CVEs
before 3.1.14-3.module_el9.8.0+292+f4eaf8b2
3.1.14-3.module_el9.8.0+292+f4eaf8b2
nodejs-packaging
AlmaLinux:9
From an advisory covering 13 CVEs
before 2021.06-6.module_el9.7.0+209+ecf6523e
2021.06-6.module_el9.7.0+209+ecf6523e
nodejs-packaging-bundler
AlmaLinux:9
From an advisory covering 13 CVEs
before 2021.06-6.module_el9.7.0+209+ecf6523e
2021.06-6.module_el9.7.0+209+ecf6523e
npm
AlmaLinux:9
From an advisory covering 13 CVEs
before 1:11.19.1-1.24.22.1.3.module_el9.8.0+333+788f3075
1:11.19.1-1.24.22.1.3.module_el9.8.0+333+788f3075
v8-13.6-devel
AlmaLinux:9
From an advisory covering 13 CVEs
before 3:13.6.233.17-1.24.22.1.3.module_el9.8.0+333+788f3075
3:13.6.233.17-1.24.22.1.3.module_el9.8.0+333+788f3075
js-jquery
Azure Linux:3
through 3.5.0-4 None known
nodejs-nodemon
Azure Linux:3
through 2.0.3-5 None known
python-tensorboard
Azure Linux:3
through 2.16.2-6 None known
brace-expansion
TuxCare:npm
1.1.20-tuxcare.0 up to 1.1.20-tuxcare.1, plus listed versions
1.1.20
1.1.20-tuxcare.1
brace-expansion
TuxCare:npm
1.1.18-tuxcare.0 up to 1.1.18-tuxcare.2, plus listed versions
1.1.181.1.18-tuxcare.1
1.1.18-tuxcare.2
brace-expansion
TuxCare:npm
From an advisory covering 2 CVEs
4.0.1-tuxcare.0 up to 4.0.1-tuxcare.2, plus listed versions
4.0.14.0.1-tuxcare.1
4.0.1-tuxcare.2
brace-expansion
TuxCare:npm
2.0.2-tuxcare.0 up to 2.0.2-tuxcare.2, plus listed versions
2.0.22.0.2-tuxcare.1
2.0.2-tuxcare.2
brace-expansion
TuxCare:npm
1.1.16-tuxcare.0 up to 1.1.16-tuxcare.2, plus listed versions
1.1.161.1.16-tuxcare.1
1.1.16-tuxcare.2
brace-expansion
TuxCare:npm
1.1.15-tuxcare.0 up to 1.1.15-tuxcare.2, plus listed versions
1.1.151.1.15-tuxcare.1
1.1.15-tuxcare.2
brace-expansion
TuxCare:npm
1.1.14-tuxcare.0 up to 1.1.14-tuxcare.2, plus listed versions
1.1.141.1.14-tuxcare.1
1.1.14-tuxcare.2
brace-expansion
TuxCare:npm
From an advisory covering 3 CVEs
2.0.1-tuxcare.0 up to 2.0.1-tuxcare.4, plus listed versions
2.0.12.0.1-tuxcare.12.0.1-tuxcare.22.0.1-tuxcare.3
2.0.1-tuxcare.4
brace-expansion
TuxCare:npm
2.1.6-tuxcare.0 up to 2.1.6-tuxcare.1, plus listed versions
2.1.6
2.1.6-tuxcare.1
brace-expansion
TuxCare:npm
5.0.11-tuxcare.0 up to 5.0.11-tuxcare.1, plus listed versions
5.0.11
5.0.11-tuxcare.1
brace-expansion
TuxCare:npm
5.0.10-tuxcare.0 up to 5.0.10-tuxcare.2, plus listed versions
5.0.105.0.10-tuxcare.1
5.0.10-tuxcare.2
brace-expansion
TuxCare:npm
2.1.4-tuxcare.0 up to 2.1.4-tuxcare.2, plus listed versions
2.1.42.1.4-tuxcare.1
2.1.4-tuxcare.2
brace-expansion
TuxCare:npm
2.1.3-tuxcare.0 up to 2.1.3-tuxcare.3, plus listed versions
2.1.32.1.3-tuxcare.12.1.3-tuxcare.2
2.1.3-tuxcare.3
brace-expansion
TuxCare:npm
5.0.9-tuxcare.0 up to 5.0.9-tuxcare.3, plus listed versions
5.0.95.0.9-tuxcare.15.0.9-tuxcare.2
5.0.9-tuxcare.3
brace-expansion
TuxCare:npm
2.1.2-tuxcare.0 up to 2.1.2-tuxcare.4, plus listed versions
2.1.22.1.2-tuxcare.12.1.2-tuxcare.22.1.2-tuxcare.3
2.1.2-tuxcare.4
brace-expansion
TuxCare:npm
From an advisory covering 4 CVEs
1.1.11-tuxcare.0 up to 1.1.11-tuxcare.3, plus listed versions
1.1.111.1.11-tuxcare.11.1.11-tuxcare.2
1.1.11-tuxcare.3
brace-expansion
TuxCare:npm
From an advisory covering 2 CVEs
5.0.4-tuxcare.0 up to 5.0.4-tuxcare.2, plus listed versions
5.0.45.0.4-tuxcare.1
5.0.4-tuxcare.2
brace-expansion
TuxCare:npm
5.0.8-tuxcare.0 up to 5.0.8-tuxcare.4, plus listed versions
5.0.85.0.8-tuxcare.15.0.8-tuxcare.25.0.8-tuxcare.3
5.0.8-tuxcare.4
brace-expansion
TuxCare:npm
From an advisory covering 6 CVEs
5.0.5-tuxcare.0 up to 5.0.5-tuxcare.2, plus listed versions
5.0.55.0.5-tuxcare.1
5.0.5-tuxcare.2
brace-expansion
TuxCare:npm
From an advisory covering 4 CVEs
1.1.12-tuxcare.0 up to 1.1.12-tuxcare.5, plus listed versions
1.1.121.1.12-tuxcare.11.1.12-tuxcare.21.1.12-tuxcare.3
1.1.12-tuxcare.5
brace-expansion
TuxCare:npm
From an advisory covering 6 CVEs
5.0.6-tuxcare.0 up to 5.0.6-tuxcare.1, plus listed versions
5.0.6
5.0.6-tuxcare.1
brace-expansion
TuxCare:npm
From an advisory covering 7 CVEs
5.0.3-tuxcare.0 up to 5.0.3-tuxcare.1, plus listed versions
5.0.3
5.0.3-tuxcare.1
brace-expansion
TuxCare:npm
From an advisory covering 7 CVEs
5.0.2-tuxcare.0 up to 5.0.2-tuxcare.1, plus listed versions
5.0.2
5.0.2-tuxcare.1
brace-expansion
TuxCare:npm
From an advisory covering 5 CVEs
1.1.3-tuxcare.0 up to 1.1.3-tuxcare.2, plus listed versions
1.1.31.1.3-tuxcare.1
1.1.3-tuxcare.2
brace-expansion
TuxCare:npm
1.1.1-tuxcare.0 up to 1.1.1-tuxcare.2, plus listed versions
1.1.11.1.1-tuxcare.1
1.1.1-tuxcare.2
node-brace-expansion
Debian:12
All versions, plus listed versions
2.0.1+~1.1.0-12.0.1+~1.1.0-22.0.1-22.0.3+~1.1.2-12.0.3+~1.1.2-22.0.3+~1.1.2-32.1.4+~1.1.2-12.1.7+~1.1.2-1
None known
node-brace-expansion
Debian:13
All versions, plus listed versions
2.0.1+~1.1.0-22.0.3+~1.1.2-12.0.3+~1.1.2-22.0.3+~1.1.2-32.1.4+~1.1.2-12.1.7+~1.1.2-1
None known
node-brace-expansion
Debian:14
before 2.1.7+~1.1.2-1, plus listed versions
2.0.1+~1.1.0-22.0.3+~1.1.2-12.0.3+~1.1.2-22.0.3+~1.1.2-32.1.4+~1.1.2-1
2.1.7+~1.1.2-1
nodejs22
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-devel
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-docs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-full-i18n
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-libs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs22-npm
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:10.9.9-1.22.23.3.2.3.2.2.hum1
0:10.9.9-1.22.23.3.2.3.2.2.hum1
nodejs22-npm-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:22.23.3-2.3.2.2.hum1
0:22.23.3-2.3.2.2.hum1
nodejs24
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-devel
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-docs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-full-i18n
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-libs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:24.21.0-1.2.hum1
0:24.21.0-1.2.hum1
nodejs24-npm
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:11.19.0-1.24.21.0.1.2.hum1
0:11.19.0-1.24.21.0.1.2.hum1
nodejs24-npm-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:11.19.0-1.24.21.0.1.2.hum1
0:11.19.0-1.24.21.0.1.2.hum1
v8-13.6-devel
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:13.6.233.17-1.24.21.0.1.2.hum1
0:13.6.233.17-1.24.21.0.1.2.hum1
nodejs26
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-devel
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-docs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-full-i18n
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-libs
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs26-npm
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:11.19.1-1.26.10.0.0.3.hum1
0:11.19.1-1.26.10.0.0.3.hum1
nodejs26-npm-bin
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:26.10.0-0.3.hum1
0:26.10.0-0.3.hum1
nodejs-nodemon
Rocky Linux:8
From an advisory covering 13 CVEs
before 0:3.1.14-2.module+el8.10.0+40277+b1b3f89e
0:3.1.14-2.module+el8.10.0+40277+b1b3f89e
nodejs-nodemon
Rocky Linux:8
From an advisory covering 13 CVEs
before 0:3.1.14-2.module+el8.10.0+40278+50b003a3
0:3.1.14-2.module+el8.10.0+40278+50b003a3
nodejs-packaging
Rocky Linux:8
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el8.10.0+40048+6d99f608
0:2021.06-6.module+el8.10.0+40048+6d99f608
nodejs-packaging
Rocky Linux:8
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el8.10.0+40171+8fa9c325
0:2021.06-6.module+el8.10.0+40171+8fa9c325
nodejs-packaging
Rocky Linux:8
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el8.10.0+40172+38f6fdd1
0:2021.06-6.module+el8.10.0+40172+38f6fdd1
nodejs
Rocky Linux:9
From an advisory covering 13 CVEs
before 1:24.22.1-3.module+el9.8.0+40401+e24b8c95
1:24.22.1-3.module+el9.8.0+40401+e24b8c95
nodejs-nodemon
Rocky Linux:9
From an advisory covering 13 CVEs
before 0:3.1.14-3.module+el9.8.0+40281+14cc6568
0:3.1.14-3.module+el9.8.0+40281+14cc6568
nodejs-packaging
Rocky Linux:9
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el9.7.0+40165+d075e3f2
0:2021.06-6.module+el9.7.0+40165+d075e3f2
nodejs-packaging
Rocky Linux:9
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el9.8.0+40164+8921ab53
0:2021.06-6.module+el9.8.0+40164+8921ab53
nodejs-packaging
Rocky Linux:9
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el9.7.0+40052+e32ea525
0:2021.06-6.module+el9.7.0+40052+e32ea525
nodejs-packaging
Rocky Linux:9
From an advisory covering 13 CVEs
before 0:2021.06-6.module+el9.7.0+40153+4d595597
0:2021.06-6.module+el9.7.0+40153+4d595597
node-brace-expansion
Ubuntu:18.04:LTS
All versions, plus listed versions
1.1.8-1
None known
node-brace-expansion
Ubuntu:20.04:LTS
All versions, plus listed versions
1.1.8-11.1.11-1
None known
node-brace-expansion
Ubuntu:22.04:LTS
All versions, plus listed versions
2.0.0-12.0.1-1
None known
node-brace-expansion
Ubuntu:24.04:LTS
All versions, plus listed versions
2.0.1-22.0.1+~1.1.0-1
None known
node-brace-expansion
Ubuntu:26.10
All versions, plus listed versions
2.0.1+~1.1.0-22.0.3+~1.1.2-22.0.3+~1.1.2-32.1.4+~1.1.2-1
None known
node-brace-expansion
Ubuntu:26.04:LTS
All versions, plus listed versions
2.0.1+~1.1.0-2
None known
pi-coding-agent
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 1.0.0-1.1
1.0.0-1.1
agama-web-ui
openSUSE:Tumbleweed
From an advisory covering 11 CVEs
before 25+475.275dd4727-56.1
25+475.275dd4727-56.1
pi-coding-agent
openSUSE:Leap 16.0
From an advisory covering 11 CVEs
before 1.0.4-bp160.1.1
1.0.4-bp160.1.1

History

History
RecordedChangedSources
affected, aliases, referencesOSV
affected
factsOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-102277 is a medium vulnerability (CVSS 5.3) in Juliangruber Brace-expansion, published September 28, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.43%, the 37th percentile. Fixed in brace-expansion 5.0.12.

References

Show 97 moreShow less
This page doesn't list everything

Left out here: the rest of 1 source description. The JSON record has them.

MoveEnter Open