<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-01T11:40:19.112030+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/fkie_cve-2026-102276</id>
    <title>fkie_cve-2026-102276</title>
    <updated>2026-10-01T11:40:19.117151+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10, crafted brace patterns can exhaust the native stack in parseCommaParts because parseCommaParts recursively processes the remainder once per brace group and uses push.apply to pass every element of a very large comma-part array as a function argument. Patterns containing many comma-separated brace groups trigger the recursive path, while the large array triggers the argument-array path without deep recursion. These paths cause recursive and argument-array native stack exhaustion before max or maxLength can limit output, potentially terminating the Node.js process in a process-terminating denial of service. This issue is fixed in versions 1.1.19, 2.1.5, 3.0.7, and 5.0.10.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-102276"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-6j4f-fj2g-mc7p</id>
    <title>GHSA-6j4f-fj2g-mc7p — brace-expansion: DoS via uncontrolled recursion in parseCommaParts causing stack exhaustion</title>
    <updated>2026-10-01T11:40:19.117326+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: brace-expansion</p>
<p>### Summary</p>
<p>`parseCommaParts()` can exhaust the native stack and crash the process. There are two distinct ways to trigger it, both reachable from a single untrusted pattern string.</p>
<p>This is the parsing-side counterpart to CVE-2026-14257 / GHSA-mh99-v99m-4gvg. That fix made `expand_()` iterative and documented a constant-stack-depth guarantee, but `parseCommaParts()` was left recursive, so the guarantee only held for one of the two parsing paths.</p>
<p>### Vector 1 - unbounded recursion on `post`</p>
<p>`parseCommaParts()` recursed on the remainder of the string once per brace group:</p>
<p>```js
const postParts = parseCommaParts(post)   // unbounded
```</p>
<p>A brace group containing many comma-separated groups drives one recursion level per group:</p>
<p>```js
expand('{' + '{a},'.repeat(7000) + 'b}')
// RangeError: Maximum call stack size exceeded
```</p>
<p>About 7,300 repetitions - roughly 29 KB of input - is enough on Node 24; roughly 6,300 (25 KB) on Node 18. The threshold is identical on every affected release line.</p>
<p>### Vector 2 - `push.apply` with an unbounded array</p>
<p>Even with the recursion removed, `parseCommaParts()` spread whole arrays into an argument list:</p>
<p>```js
p.push.apply(p, postParts)
parts.push.apply(parts, p)
```</p>
<p>`Function.prototype.apply` places one argument per element on the stack, so a single large array overflows it. This needs **no recursion depth at all** - the following reaches a recursion depth of exactly 1:</p>
<p>```js
expand('{{x},' + 'a,'.repeat(125000) + 'b}')
// RangeError: Ma…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-6j4f-fj2g-mc7p"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/rhsa-2026:74161</id>
    <title>RHSA-2026:74161 — Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update</title>
    <updated>2026-10-01T11:40:19.117416+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>brace-expansion: brace-expansion: Denial of Service via stack exhaustion from crafted brace patterns brace-expansion: brace-expansion: Denial of Service via crafted brace patterns brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/rhsa-2026:74161"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-102276</id>
    <title>UBUNTU-CVE-2026-102276</title>
    <updated>2026-10-01T11:40:19.117450+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Ubuntu:18.04:LTS: node-brace-expansion, Ubuntu:20.04:LTS: node-brace-expansion, Ubuntu:22.04:LTS: node-brace-expansion, Ubuntu:24.04:LTS: node-brace-expansion, Ubuntu:26.04:LTS: node-brace-expansion</p>
<p>The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10, crafted brace patterns can exhaust the native stack in parseCommaParts because parseCommaParts recursively processes the remainder once per brace group and uses push.apply to pass every element of a very large comma-part array as a function argument. Patterns containing many comma-separated brace groups trigger the recursive path, while the large array triggers the argument-array path without deep recursion. These paths cause recursive and argument-array native stack exhaustion before max or maxLength can limit output, potentially terminating the Node.js process in a process-terminating denial of service. This issue is fixed in versions 1.1.19, 2.1.5, 3.0.7, and 5.0.10.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-102276"/>
  </entry>
</feed>
