{"article":{"slug":"node-js-wednesday-october-21-2026-security-releases","title":"Node.js — Wednesday, October 21, 2026 Security Releases","subtitle":null,"summary":"The Node.js project ships security releases for the 26.x, 24.x and 22.x lines, updating c-ares, OpenSSL and the CA certificate store (removing the compromised eMudhra intermediate CA), with details of fixed issues and download links.","content_type":"changelog","language":"en","canonical_url":"https://nodejs.org/en/blog/vulnerability/october-2026-security-releases","author":{"name":"The Node.js Project","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Node.js","url":"https://nodejs.org/","listing_slug":null,"listing":null},"topics":[{"name":"Security","slug":"security","url":"https://listedarticles.com/topics/security"},{"name":"JavaScript","slug":"javascript","url":"https://listedarticles.com/topics/javascript"},{"name":"Open Source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":646,"reading_minutes":3,"published_at":"2026-10-21T00:00:00.000Z","added_at":"2026-10-21T23:10:58.034Z","updated_at":"2026-10-21T23:10:58.034Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/node-js-wednesday-october-21-2026-security-releases","markdown_url":"https://listedarticles.com/articles/node-js-wednesday-october-21-2026-security-releases.md","example":false,"citation":"The Node.js Project, Node.js. \"Node.js — Wednesday, October 21, 2026 Security Releases.\" 21 Oct 2026. https://nodejs.org/en/blog/vulnerability/october-2026-security-releases (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://nodejs.org/en/blog/vulnerability/october-2026-security-releases"},"body_markdown":"# Wednesday, October 21, 2026 Security Releases\n\nThe Node.js Project\n\nWednesday, October 21, 2026 Security Releases\n\n## [Security releases available](#security-releases-available)\n\nUpdates are now available for the 26.x, 24.x, 22.x Node.js release lines for the\nfollowing issues.\n\nThis security release includes the following dependency updates to address public vulnerabilities:\n\n- c-ares on 26.x, 24.x, 22.x\n- ca-cert (eMudhra Intermediate CA Compromise) on 26.x, 24.x, 22.x\n- OpenSSL on 24.x, 22.x\n- SQLite on 22.x\n- Undici on 26.x, 24.x, 22.x\n\n## [dns.resolve truncates names containing NUL char (CVE-2026-105482) - (high)](#dnsresolve-truncates-names-containing-nul-char-cve-2026-105482---high)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.\n\n## [TLS certificate hostname bypass when the IP is written fullwidth digits (CVE-2026-105483) - (high)](#tls-certificate-hostname-bypass-when-the-ip-is-written-fullwidth-digits-cve-2026-105483---high)\n\nThis vulnerability affects Node.js **26.x** and **24.x**.\n\nThank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.\n\n## [TLS certificate hostname bypass when the host loosely resolves to an IP address (CVE-2026-106069) - (high)](#tls-certificate-hostname-bypass-when-the-host-loosely-resolves-to-an-ip-address-cve-2026-106069---high)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to anagnorisis2peripeteia for reporting this vulnerability and thank you mcollina for fixing it.\n\n## [Node.js Brotli decoder out-of-bounds write permits remote code execution (CVE-2026-111497) - (high)](#nodejs-brotli-decoder-out-of-bounds-write-permits-remote-code-execution-cve-2026-111497---high)\n\nA flaw in Node.js can cause Node.js Brotli decoder out-of-bounds write permits remote code execution.\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to mcollina for reporting this vulnerability and thank you aduh95 for fixing it.\n\n## [Keep-alive socket process a response that was written before the request was sent (CVE-2026-105481) - (medium)](#keep-alive-socket-process-a-response-that-was-written-before-the-request-was-sent-cve-2026-105481---medium)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.\n\n## [Improper certificate validation for non-canonical IPv4 hostnames allows DNS SANs to authenticate IP endpoints (CVE-2026-106072) - (medium)](#improper-certificate-validation-for-non-canonical-ipv4-hostnames-allows-dns-sans-to-authenticate-ip-endpoints-cve-2026-106072---medium)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to br41ny for reporting this vulnerability and thank you mcollina for fixing it.\n\n## [crypto.randomUUID() and randomInt() entropy caches are saved into user-land startup snapshots and SEAs, so every process repeats the same values (CVE-2026-106074) - (medium)](#cryptorandomuuid-and-randomint-entropy-caches-are-saved-into-user-land-startup-snapshots-and-seas-so-every-process-repeats-the-same-values-cve-2026-106074---medium)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to gesposito for reporting this vulnerability and thank you panva for fixing it.\n\n## [Node.js ZipFile returns attacker-controlled prefix bytes after failed ZIP header validation (CVE-2026-106070) - (low)](#nodejs-zipfile-returns-attacker-controlled-prefix-bytes-after-failed-zip-header-validation-cve-2026-106070---low)\n\nThis vulnerability affects Node.js **26.x**.\n\nThank you, to startimeash for reporting this vulnerability and thank you mcollina for fixing it.\n\n## [Permission Model filesystem over-grant via wildcard radix lookup (CVE-2026-106071) - (low)](#permission-model-filesystem-over-grant-via-wildcard-radix-lookup-cve-2026-106071---low)\n\nThis vulnerability affects Node.js **26.x**.\n\nThank you, to malikhamzaiqbal for reporting this vulnerability and thank you jasnell for fixing it.\n\n## [Permission Model bypass with fs.realpathSync (CVE-2026-106073) - (low)](#permission-model-bypass-with-fsrealpathsync-cve-2026-106073---low)\n\nThis vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.\n\nThank you, to 0xoroot for reporting this vulnerability and thank you RafaelGSS for fixing it.\n\n## [Downloads and release details](#downloads-and-release-details)\n\n- [Node.js v22.23.4](https://nodejs.org/en/blog/release/v22.23.4/)\n- [Node.js v24.22.1](https://nodejs.org/en/blog/release/v24.22.1/)\n- [Node.js v26.12.1](https://nodejs.org/en/blog/release/v26.12.1/)\n\n# [Summary](#summary)\n\nThe Node.js project will release new versions of the 26.x, 24.x, 22.x\nreleases lines on or shortly after, Wednesday, October 21, 2026 in order to address\nsecurity vulnerabilities.\n\nThe highest severity issue fixed in this release is HIGH.\n\n## [Impact](#impact)\n\n- The highest severity issue fixed in the 26.x release line is HIGH.\n- The highest severity issue fixed in the 24.x release line is HIGH.\n- The highest severity issue fixed in the 22.x release line is HIGH.\n\nIt's important to note that End-of-Life versions are always affected when a security release occurs.\nTo ensure your system's security, please use an up-to-date version as outlined in our\n[Release Schedule](https://github.com/nodejs/release#release-schedule).\n\n## [Release timing](#release-timing)\n\nReleases will be available on, or shortly after, Wednesday, October 21, 2026.\n\n## [Contact and future updates](#contact-and-future-updates)\n\nThe current Node.js security policy can be found at <https://nodejs.org/en/security/>.\nPlease follow the process outlined in <https://github.com/nodejs/node/blob/master/SECURITY.md> if you wish to report a vulnerability in Node.js.\n\nSubscribe to the low-volume announcement-only nodejs-sec mailing list at <https://groups.google.com/forum/#!forum/nodejs-sec> to stay up to date on security vulnerabilities and security-related releases of Node.js and the projects maintained in the nodejs GitHub organization.\n","body_html":"<h1 id=\"wednesday-october-21-2026-security-releases\">Wednesday, October 21, 2026 Security Releases</h1>\n<p>The Node.js Project</p>\n<p>Wednesday, October 21, 2026 Security Releases</p>\n<h2 id=\"security-releases-available\"><a href=\"#security-releases-available\">Security releases available</a></h2>\n<p>Updates are now available for the 26.x, 24.x, 22.x Node.js release lines for the\nfollowing issues.</p>\n<p>This security release includes the following dependency updates to address public vulnerabilities:</p>\n<ul><li>c-ares on 26.x, 24.x, 22.x</li><li>ca-cert (eMudhra Intermediate CA Compromise) on 26.x, 24.x, 22.x</li><li>OpenSSL on 24.x, 22.x</li><li>SQLite on 22.x</li><li>Undici on 26.x, 24.x, 22.x</li></ul>\n<h2 id=\"dns-resolve-truncates-names-containing-nul-char-cve-2026-105482-\"><a href=\"#dnsresolve-truncates-names-containing-nul-char-cve-2026-105482---high\">dns.resolve truncates names containing NUL char (CVE-2026-105482) - (high)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.</p>\n<h2 id=\"tls-certificate-hostname-bypass-when-the-ip-is-written-fullwidth\"><a href=\"#tls-certificate-hostname-bypass-when-the-ip-is-written-fullwidth-digits-cve-2026-105483---high\">TLS certificate hostname bypass when the IP is written fullwidth digits (CVE-2026-105483) - (high)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong> and <strong>24.x</strong>.</p>\n<p>Thank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.</p>\n<h2 id=\"tls-certificate-hostname-bypass-when-the-host-loosely-resolves-t\"><a href=\"#tls-certificate-hostname-bypass-when-the-host-loosely-resolves-to-an-ip-address-cve-2026-106069---high\">TLS certificate hostname bypass when the host loosely resolves to an IP address (CVE-2026-106069) - (high)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to anagnorisis2peripeteia for reporting this vulnerability and thank you mcollina for fixing it.</p>\n<h2 id=\"node-js-brotli-decoder-out-of-bounds-write-permits-remote-code-e\"><a href=\"#nodejs-brotli-decoder-out-of-bounds-write-permits-remote-code-execution-cve-2026-111497---high\">Node.js Brotli decoder out-of-bounds write permits remote code execution (CVE-2026-111497) - (high)</a></h2>\n<p>A flaw in Node.js can cause Node.js Brotli decoder out-of-bounds write permits remote code execution.</p>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to mcollina for reporting this vulnerability and thank you aduh95 for fixing it.</p>\n<h2 id=\"keep-alive-socket-process-a-response-that-was-written-before-the\"><a href=\"#keep-alive-socket-process-a-response-that-was-written-before-the-request-was-sent-cve-2026-105481---medium\">Keep-alive socket process a response that was written before the request was sent (CVE-2026-105481) - (medium)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to hasanfleyah for reporting this vulnerability and thank you jasnell for fixing it.</p>\n<h2 id=\"improper-certificate-validation-for-non-canonical-ipv4-hostnames\"><a href=\"#improper-certificate-validation-for-non-canonical-ipv4-hostnames-allows-dns-sans-to-authenticate-ip-endpoints-cve-2026-106072---medium\">Improper certificate validation for non-canonical IPv4 hostnames allows DNS SANs to authenticate IP endpoints (CVE-2026-106072) - (medium)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to br41ny for reporting this vulnerability and thank you mcollina for fixing it.</p>\n<h2 id=\"crypto-randomuuid-and-randomint-entropy-caches-are-saved-into-us\"><a href=\"#cryptorandomuuid-and-randomint-entropy-caches-are-saved-into-user-land-startup-snapshots-and-seas-so-every-process-repeats-the-same-values-cve-2026-106074---medium\">crypto.randomUUID() and randomInt() entropy caches are saved into user-land startup snapshots and SEAs, so every process repeats the same values (CVE-2026-106074) - (medium)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to gesposito for reporting this vulnerability and thank you panva for fixing it.</p>\n<h2 id=\"node-js-zipfile-returns-attacker-controlled-prefix-bytes-after-f\"><a href=\"#nodejs-zipfile-returns-attacker-controlled-prefix-bytes-after-failed-zip-header-validation-cve-2026-106070---low\">Node.js ZipFile returns attacker-controlled prefix bytes after failed ZIP header validation (CVE-2026-106070) - (low)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>.</p>\n<p>Thank you, to startimeash for reporting this vulnerability and thank you mcollina for fixing it.</p>\n<h2 id=\"permission-model-filesystem-over-grant-via-wildcard-radix-lookup\"><a href=\"#permission-model-filesystem-over-grant-via-wildcard-radix-lookup-cve-2026-106071---low\">Permission Model filesystem over-grant via wildcard radix lookup (CVE-2026-106071) - (low)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>.</p>\n<p>Thank you, to malikhamzaiqbal for reporting this vulnerability and thank you jasnell for fixing it.</p>\n<h2 id=\"permission-model-bypass-with-fs-realpathsync-cve-2026-106073-low\"><a href=\"#permission-model-bypass-with-fsrealpathsync-cve-2026-106073---low\">Permission Model bypass with fs.realpathSync (CVE-2026-106073) - (low)</a></h2>\n<p>This vulnerability affects Node.js <strong>26.x</strong>, <strong>24.x</strong>, and <strong>22.x</strong>.</p>\n<p>Thank you, to 0xoroot for reporting this vulnerability and thank you RafaelGSS for fixing it.</p>\n<h2 id=\"downloads-and-release-details\"><a href=\"#downloads-and-release-details\">Downloads and release details</a></h2>\n<ul><li><a href=\"https://nodejs.org/en/blog/release/v22.23.4/\" rel=\"nofollow ugc noopener\">Node.js v22.23.4</a></li><li><a href=\"https://nodejs.org/en/blog/release/v24.22.1/\" rel=\"nofollow ugc noopener\">Node.js v24.22.1</a></li><li><a href=\"https://nodejs.org/en/blog/release/v26.12.1/\" rel=\"nofollow ugc noopener\">Node.js v26.12.1</a></li></ul>\n<h1 id=\"summary\"><a href=\"#summary\">Summary</a></h1>\n<p>The Node.js project will release new versions of the 26.x, 24.x, 22.x\nreleases lines on or shortly after, Wednesday, October 21, 2026 in order to address\nsecurity vulnerabilities.</p>\n<p>The highest severity issue fixed in this release is HIGH.</p>\n<h2 id=\"impact\"><a href=\"#impact\">Impact</a></h2>\n<ul><li>The highest severity issue fixed in the 26.x release line is HIGH.</li><li>The highest severity issue fixed in the 24.x release line is HIGH.</li><li>The highest severity issue fixed in the 22.x release line is HIGH.</li></ul>\n<p>It&#39;s important to note that End-of-Life versions are always affected when a security release occurs.\nTo ensure your system&#39;s security, please use an up-to-date version as outlined in our\n<a href=\"https://github.com/nodejs/release#release-schedule\" rel=\"nofollow ugc noopener\">Release Schedule</a>.</p>\n<h2 id=\"release-timing\"><a href=\"#release-timing\">Release timing</a></h2>\n<p>Releases will be available on, or shortly after, Wednesday, October 21, 2026.</p>\n<h2 id=\"contact-and-future-updates\"><a href=\"#contact-and-future-updates\">Contact and future updates</a></h2>\n<p>The current Node.js security policy can be found at <a href=\"https://nodejs.org/en/security/\" rel=\"nofollow ugc noopener\">https://nodejs.org/en/security/</a>.\nPlease follow the process outlined in <a href=\"https://github.com/nodejs/node/blob/master/SECURITY.md\" rel=\"nofollow ugc noopener\">https://github.com/nodejs/node/blob/master/SECURITY.md</a> if you wish to report a vulnerability in Node.js.</p>\n<p>Subscribe to the low-volume announcement-only nodejs-sec mailing list at <a href=\"https://groups.google.com/forum/#!forum/nodejs-sec\" rel=\"nofollow ugc noopener\">https://groups.google.com/forum/#!forum/nodejs-sec</a> to stay up to date on security vulnerabilities and security-related releases of Node.js and the projects maintained in the nodejs GitHub organization.</p>","headings":[{"level":1,"text":"Wednesday, October 21, 2026 Security Releases","id":"wednesday-october-21-2026-security-releases"},{"level":2,"text":"Security releases available","id":"security-releases-available"},{"level":2,"text":"dns.resolve truncates names containing NUL char (CVE-2026-105482) - (high)","id":"dns-resolve-truncates-names-containing-nul-char-cve-2026-105482-"},{"level":2,"text":"TLS certificate hostname bypass when the IP is written fullwidth digits (CVE-2026-105483) - (high)","id":"tls-certificate-hostname-bypass-when-the-ip-is-written-fullwidth"},{"level":2,"text":"TLS certificate hostname bypass when the host loosely resolves to an IP address (CVE-2026-106069) - (high)","id":"tls-certificate-hostname-bypass-when-the-host-loosely-resolves-t"},{"level":2,"text":"Node.js Brotli decoder out-of-bounds write permits remote code execution (CVE-2026-111497) - (high)","id":"node-js-brotli-decoder-out-of-bounds-write-permits-remote-code-e"},{"level":2,"text":"Keep-alive socket process a response that was written before the request was sent (CVE-2026-105481) - (medium)","id":"keep-alive-socket-process-a-response-that-was-written-before-the"},{"level":2,"text":"Improper certificate validation for non-canonical IPv4 hostnames allows DNS SANs to authenticate IP endpoints (CVE-2026-106072) - (medium)","id":"improper-certificate-validation-for-non-canonical-ipv4-hostnames"},{"level":2,"text":"crypto.randomUUID() and randomInt() entropy caches are saved into user-land startup snapshots and SEAs, so every process repeats the same values (CVE-2026-106074) - (medium)","id":"crypto-randomuuid-and-randomint-entropy-caches-are-saved-into-us"},{"level":2,"text":"Node.js ZipFile returns attacker-controlled prefix bytes after failed ZIP header validation (CVE-2026-106070) - (low)","id":"node-js-zipfile-returns-attacker-controlled-prefix-bytes-after-f"},{"level":2,"text":"Permission Model filesystem over-grant via wildcard radix lookup (CVE-2026-106071) - (low)","id":"permission-model-filesystem-over-grant-via-wildcard-radix-lookup"},{"level":2,"text":"Permission Model bypass with fs.realpathSync (CVE-2026-106073) - (low)","id":"permission-model-bypass-with-fs-realpathsync-cve-2026-106073-low"},{"level":2,"text":"Downloads and release details","id":"downloads-and-release-details"},{"level":1,"text":"Summary","id":"summary"},{"level":2,"text":"Impact","id":"impact"},{"level":2,"text":"Release timing","id":"release-timing"},{"level":2,"text":"Contact and future updates","id":"contact-and-future-updates"}]}}