{
  "fix": "RHSA-2026:92376",
  "url": "https://patchblox.com/security/fix/linux/rhsa-2026-92376",
  "summary": "RHSA-2026:92376, released October 30, 2026, fixes 13 CVEs across 10 products. One of them is being exploited (CVE-2026-111497); 1 on CISA KEV. Patch Radar priority: Patch now.",
  "platform": "linux",
  "type": "advisory",
  "title": "Security update for 10 packages",
  "released": "2026-10-30T22:08:02Z",
  "priority": "Patch now",
  "priorityTier": 1,
  "priorityReason": "Closes CVE-2026-111497, exploited (CISA KEV)",
  "supported": true,
  "cveCount": 13,
  "exploitedCveCount": 1,
  "kevCveCount": 1,
  "ransomwareCveCount": 0,
  "maxEpss": 0.82641,
  "maxCvss": 9.8,
  "vendorAdvisory": "https://access.redhat.com/errata/RHSA-2026:92376",
  "appliesTo": [
    {
      "product": "nodejs",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs",
      "release": "RHEL 8",
      "fixedVersion": "1:24.22.1-1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "nodejs-devel",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-devel",
      "release": "RHEL 8",
      "fixedVersion": "1:24.22.1-1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "nodejs-docs",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-docs",
      "release": "RHEL 8",
      "fixedVersion": "1:24.22.1-1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "nodejs-full-i18n",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-full-i18n",
      "release": "RHEL 8",
      "fixedVersion": "1:24.22.1-1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "nodejs-libs",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-libs",
      "release": "RHEL 8",
      "fixedVersion": "1:24.22.1-1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "nodejs-nodemon",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-nodemon",
      "release": "RHEL 8",
      "fixedVersion": "0:3.1.14-2.module\u002Bel8.10.0\u002B24711\u002Bb610b202",
      "supported": true
    },
    {
      "product": "nodejs-packaging",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-packaging",
      "release": "RHEL 8",
      "fixedVersion": "0:2021.06-6.module\u002Bel8.10.0\u002B24711\u002Bb610b202",
      "supported": true
    },
    {
      "product": "nodejs-packaging-bundler",
      "productUrl": "https://patchblox.com/security/product/linux/nodejs-packaging-bundler",
      "release": "RHEL 8",
      "fixedVersion": "0:2021.06-6.module\u002Bel8.10.0\u002B24711\u002Bb610b202",
      "supported": true
    },
    {
      "product": "npm",
      "productUrl": "https://patchblox.com/security/product/linux/npm",
      "release": "RHEL 8",
      "fixedVersion": "1:11.19.1-1.24.22.1.1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    },
    {
      "product": "v8-13.6-devel",
      "productUrl": "https://patchblox.com/security/product/linux/v8-13.6-devel",
      "release": "RHEL 8",
      "fixedVersion": "3:13.6.233.17-1.24.22.1.1.module\u002Bel8.10.0\u002B25218\u002Bd9e131cb",
      "supported": true
    }
  ],
  "cves": [
    {
      "cveId": "CVE-2026-111497",
      "url": "https://patchblox.com/security/cve/CVE-2026-111497",
      "title": "Google: CVE-2026-111497 Buffer overflow vulnerability in the Brotli decoder",
      "priority": "Patch now",
      "severity": "Important",
      "cvss": 9.8,
      "epss": 0.82641,
      "kev": true,
      "ransomware": false,
      "exploited": true,
      "disclosed": true
    },
    {
      "cveId": "CVE-2026-106072",
      "url": "https://patchblox.com/security/cve/CVE-2026-106072",
      "title": "A flaw in Node.js TLS hostname verification allows a certificate with only a DNS SAN to authenticate an IP endpoint when the client connects using a non-canonical IPv4 spelling, such as \u00600177.0.0.1\u0060, \u00600x7f.0.0.1\u0060, \u00602130706433\u0060 or \u0060127.1\u0060.\n\n\u0060tls.checkServerIdentity()\u0060 did not classify these hosts as IP addresses, but normalized them to their canonical form and matched the result against the certificate DNS names. A certificate containing \u0060DNS:127.0.0.1\u0060 and no \u0060IP Address:127.0.0.1\u0060 SAN was therefore accepted, while the same certificate is correctly rejected for \u0060127.0.0.1\u0060. Exploitation requires a certificate with a numeric DNS SAN issued by a CA trusted by the client, and a platform resolver that accepts these spellings, such as glibc.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.",
      "priority": "High",
      "severity": "Moderate",
      "cvss": 8.1,
      "epss": 0.00617,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-102278",
      "url": "https://patchblox.com/security/cve/CVE-2026-102278",
      "title": "brace-expansion: DoS via uncontrolled recursion on nested brace groups causing stack exhaustion",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00491,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-105482",
      "url": "https://patchblox.com/security/cve/CVE-2026-105482",
      "title": "A flaw in Node.js DNS resolution allows hostnames containing a NUL byte to be silently truncated by the dns.resolve*() functions and dns.reverse(). This is an incomplete fix of CVE-2026-48930, which only covered dns.lookup() and the net/tls host options.\n\nBecause the name is passed to c-ares as a C string, resolving attacker.example\\0.trusted.example queries attacker.example and returns its records without any error. Applications that validate a hostname, for example against a domain allowlist, and then resolve it with dns.resolve*() can act on records for a different name than the one they validated.\n\nThis vulnerability affects Node.js 26.x, 24.x, and 22.x.",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00468,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-102276",
      "url": "https://patchblox.com/security/cve/CVE-2026-102276",
      "title": "brace-expansion: DoS via uncontrolled recursion in parseCommaParts causing stack exhaustion",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00455,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-102277",
      "url": "https://patchblox.com/security/cve/CVE-2026-102277",
      "title": "brace-expansion: Quadratic-time expansion of the \u0060{a},b}\u0060 rewrite causes CPU denial of service",
      "priority": "High",
      "severity": "Moderate",
      "cvss": 8.1,
      "epss": 0.00428,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-101911",
      "url": "https://patchblox.com/security/cve/CVE-2026-101911",
      "title": "node-ip-address: ip-address is a library for parsing and manipulating IPv4 and IPv6 addresses in JavaScript",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00383,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-106074",
      "url": "https://patchblox.com/security/cve/CVE-2026-106074",
      "title": "A flaw in Node.js \u0060crypto\u0060 causes the internal entropy caches used by \u0060crypto.randomUUID()\u0060, \u0060crypto.randomUUIDv7()\u0060, and \u0060crypto.randomInt()\u0060 to be saved into user-land startup snapshots (\u0060--build-snapshot\u0060) and single executable applications built with \u0060useSnapshot\u0060.\n\nIf any of these functions, or an API that relies on them such as \u0060URL.createObjectURL()\u0060, is called while the snapshot is built, every process started from that snapshot returns the same values until the cache is refilled: up to 127 UUIDs and about 1,000 \u0060randomInt()\u0060 values. Identifiers expected to be unique can collide across processes, and values issued by one process can be predicted by observing another.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.",
      "priority": "High",
      "severity": "Moderate",
      "cvss": 8.1,
      "epss": 0.00334,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-105481",
      "url": "https://patchblox.com/security/cve/CVE-2026-105481",
      "title": "A flaw in Node.js HTTP Agent connection reuse can cause a client to accept as valid a response that was sent before the client has sent the request. This is an incomplete fix of CVE-2026-48931.\n\nThe guard that destroys idle keep-alive sockets when unexpected data arrives only runs when the event loop polls for I/O. If an unsolicited response has already reached the socket but has not been read yet when the socket is handed to a new request, for example because the event loop was busy with synchronous work, the guard is removed without seeing it and the data is parsed as the response to the new request.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.",
      "priority": "High",
      "severity": "Moderate",
      "cvss": 8.1,
      "epss": 0.00318,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-105483",
      "url": "https://patchblox.com/security/cve/CVE-2026-105483",
      "title": "A flaw in Node.js TLS hostname verification allows a certificate without a matching IP address SAN to authenticate a connection to an IPv4 address when the host is written with non-ASCII characters, such as fullwidth digits (\u0060\uFF11\uFF12\uFF17.0.0.1\u0060).\n\n\u0060tls.checkServerIdentity()\u0060 did not recognize such hosts as IP addresses, even though they normalize and resolve to a regular IPv4 address, and matched them against the certificate DNS names and Common Name instead. A certificate containing \u0060DNS:127.0.0.1\u0060 or \u0060DNS:*.0.0.1\u0060 could therefore be accepted for an IP endpoint it was not issued for. This is a regression introduced after the fix for CVE-2026-48618.\n\nThis vulnerability affects Node.js **26.x** and **24.x**.",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00304,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-106069",
      "url": "https://patchblox.com/security/cve/CVE-2026-106069",
      "title": "A flaw in Node.js TLS hostname verification can cause a server certificate to be validated against a different IP address than the one the client connected to, when the host is a non-canonical IPv4 literal with a leading zero, such as \u00600127.0.0.1\u0060.\n\n\u0060tls.checkServerIdentity()\u0060 normalizes the host following the WHATWG URL rules, which read a leading-zero octet as octal (\u00600127.0.0.1\u0060 becomes \u006087.0.0.1\u0060), while the connection is made through the operating system resolver, which on some platforms such as macOS reads it as decimal (\u0060127.0.0.1\u0060). A server at the connected address can then be authenticated with a certificate issued for another IP address.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.",
      "priority": "High",
      "severity": "Important",
      "cvss": 8.1,
      "epss": 0.00304,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-106073",
      "url": "https://patchblox.com/security/cve/CVE-2026-106073",
      "title": "A flaw in Node.js Permission Model filesystem enforcement leaves \u0060fs.realpathSync()\u0060 without the required read permission checks. This is an incomplete fix of CVE-2026-21715, which only covered \u0060fs.realpathSync.native()\u0060.\n\nAs a result, code running under \u0060--permission\u0060 with restricted \u0060--allow-fs-read\u0060 can still use \u0060fs.realpathSync()\u0060 to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.",
      "priority": "High",
      "severity": "Low",
      "cvss": 8.1,
      "epss": 0.00254,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    },
    {
      "cveId": "CVE-2026-106071",
      "url": "https://patchblox.com/security/cve/CVE-2026-106071",
      "title": "A flaw in Node.js Permission Model filesystem enforcement can grant access to paths that do not match a wildcard \u0060--allow-fs-read\u0060 or \u0060--allow-fs-write\u0060 rule.\n\nWhen the requested path is shorter than the prefix of a wildcard grant, the radix tree lookup stops comparing early and treats the path as a match. For example, \u0060--allow-fs-read=/etc/passwd.*\u0060 also allows reading \u0060/etc/passwd\u0060. This requires the wildcard grant to sit directly under the root of the permission tree, for example when it is the only grant for that scope. This is a different root cause from CVE-2026-58043.\n\nThis vulnerability affects Node.js **26.x**.",
      "priority": "High",
      "severity": "Low",
      "cvss": 8.1,
      "epss": 0.00199,
      "kev": false,
      "ransomware": false,
      "exploited": false,
      "disclosed": false
    }
  ],
  "dataAsOf": "2026-11-07T18:46:35Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}