{
    "document": {
        "category": "csaf_base",
        "csaf_version": "2.0",
        "distribution": {
            "tlp": {
                "label": "WHITE"
            }
        },
        "lang": "en",
        "notes": [
            {
                "category": "legal_disclaimer",
                "text": "The Netherlands Cyber Security Center (henceforth: NCSC-NL) maintains this portal to enhance access to its information and vulnerabilities. The use of this information is subject to the following terms and conditions:\n\nThe vulnerabilities disclosed in this portal are gathered by NCSC-NL from a variety of open sources, which the user can retrieve from other platforms. NCSC-NL makes every reasonable effort to ensure that the content of this portal is kept up to date, and that it is accurate and complete. Nevertheless, NCSC-NL cannot entirely rule out the possibility of errors, and therefore cannot give any warranty in respect of its completeness, accuracy or real-time keeping up-to-date. NCSC-NL does not control nor guarantee the accuracy, relevance, timeliness or completeness of information obtained from these external sources. The vulnerabilities disclosed in this portal are intended solely for the convenience of professional parties to take appropriate measures to manage the risks posed to the cybersecurity. No rights can be derived from the information provided therein.\n\nNCSC-NL and the Kingdom of the Netherlands assume no legal liability or responsibility for any damage resulting from either the use or inability of use of the vulnerabilities disclosed in this portal. This includes damage resulting from the inaccuracy of incompleteness of the information contained in it.\nThe information on this page is subject to Dutch law. All disputes related to or arising from the use of this portal regarding the disclosure of vulnerabilities will be submitted to the competent court in The Hague. This choice of means also applies to the court in summary proceedings."
            }
        ],
        "publisher": {
            "category": "coordinator",
            "contact_details": "cert@ncsc.nl",
            "name": "National Cyber Security Centre",
            "namespace": "https://www.ncsc.nl/"
        },
        "title": "CVE-2026-123867",
        "tracking": {
            "current_release_date": "2026-11-13T14:29:27.191594Z",
            "generator": {
                "date": "2026-02-17T15:00:00Z",
                "engine": {
                    "name": "V.E.L.M.A",
                    "version": "1.7"
                }
            },
            "id": "CVE-2026-123867",
            "initial_release_date": "2026-11-11T18:39:03.733821Z",
            "revision_history": [
                {
                    "date": "2026-11-11T18:39:03.733821Z",
                    "number": "1",
                    "summary": "CWES created (1).| Products created (3).| References created (2).| Description created for source.| Unknown change."
                },
                {
                    "date": "2026-11-11T18:39:07.483541Z",
                    "number": "2",
                    "summary": "NCSC Score created."
                },
                {
                    "date": "2026-11-11T19:32:18.327979Z",
                    "number": "3",
                    "summary": "Source created.| CVE status created. (valid)| Description created for source.| CVSS created.| References created (2).| CWES updated (1)."
                },
                {
                    "date": "2026-11-11T19:32:19.962244Z",
                    "number": "4",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T00:34:30.430562Z",
                    "number": "5",
                    "summary": "Source created.| CVE status created. (valid)| Description created for source.| CVSS created.| Products connected (6).| Product Identifiers created (1).| Product Remediations created (6).| References created (4).| CWES updated (1).| Vendor_assessment created."
                },
                {
                    "date": "2026-11-12T00:34:32.683377Z",
                    "number": "6",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T02:41:47.427797Z",
                    "number": "7",
                    "summary": "Source created.| CVE status created. (valid)"
                },
                {
                    "date": "2026-11-12T06:44:34.607914Z",
                    "number": "8",
                    "summary": "Source created.| CVE status created. (valid)| Description created for source.| Products connected (1)."
                },
                {
                    "date": "2026-11-12T06:44:36.243124Z",
                    "number": "9",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T12:19:48.689346Z",
                    "number": "10",
                    "summary": "Source connected.| CVE status created. (valid)| Products connected (3).| References created (3)."
                },
                {
                    "date": "2026-11-12T12:19:51.334152Z",
                    "number": "11",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T13:23:46.216690Z",
                    "number": "12",
                    "summary": "CVSS created.| Products created (4).| References created (1).| Description created for source.| Unknown change."
                },
                {
                    "date": "2026-11-12T13:23:50.799950Z",
                    "number": "13",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T14:20:19.070523Z",
                    "number": "14",
                    "summary": "Source connected.| CVE status created. (valid)"
                },
                {
                    "date": "2026-11-12T15:03:30.993209Z",
                    "number": "15",
                    "summary": "CVSS created.| Description updated for source."
                },
                {
                    "date": "2026-11-12T15:30:01.486124Z",
                    "number": "16",
                    "summary": "Description removed for source.| Description created for source.| CVSS created."
                },
                {
                    "date": "2026-11-12T15:30:51.656966Z",
                    "number": "17",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-12T16:16:58.351885Z",
                    "number": "18",
                    "summary": "EPSS created.| Unknown change."
                },
                {
                    "date": "2026-11-12T16:19:42.004695Z",
                    "number": "19",
                    "summary": "NCSC Score updated."
                },
                {
                    "date": "2026-11-13T00:03:06.196340Z",
                    "number": "20",
                    "summary": "Products created (1)."
                },
                {
                    "date": "2026-11-13T06:44:20.501510Z",
                    "number": "21",
                    "summary": "Description removed for source.| Description created for source."
                },
                {
                    "date": "2026-11-13T12:47:17.850915Z",
                    "number": "22",
                    "summary": "CVSS created.| CVSS removed.| Description updated for source."
                },
                {
                    "date": "2026-11-13T14:29:18.873689Z",
                    "number": "23",
                    "summary": "NCSC Score updated."
                }
            ],
            "status": "interim",
            "version": "23"
        }
    },
    "product_tree": {
        "branches": [
            {
                "branches": [
                    {
                        "branches": [
                            {
                                "category": "product_version_range",
                                "name": "vers:unknown/<22.23.5",
                                "product": {
                                    "name": "vers:unknown/<22.23.5",
                                    "product_id": "CSAFPID-10088842"
                                }
                            },
                            {
                                "category": "product_version_range",
                                "name": "vers:unknown/<24.22.3",
                                "product": {
                                    "name": "vers:unknown/<24.22.3",
                                    "product_id": "CSAFPID-10088840"
                                }
                            },
                            {
                                "category": "product_version_range",
                                "name": "vers:unknown/<26.13.1",
                                "product": {
                                    "name": "vers:unknown/<26.13.1",
                                    "product_id": "CSAFPID-10088841"
                                }
                            }
                        ],
                        "category": "product_name",
                        "name": "Node.js"
                    }
                ],
                "category": "vendor",
                "name": "Open Source"
            },
            {
                "branches": [
                    {
                        "branches": [
                            {
                                "category": "product_version_range",
                                "name": "vers:rpm/1",
                                "product": {
                                    "name": "vers:rpm/1",
                                    "product_id": "CSAFPID-6014972",
                                    "product_identification_helper": {
                                        "cpe": "cpe:/a:redhat:hummingbird:1"
                                    }
                                }
                            }
                        ],
                        "category": "product_name",
                        "name": "Red Hat Hardened Images"
                    },
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:rpm/unknown",
                                        "product": {
                                            "name": "vers:rpm/unknown",
                                            "product_id": "CSAFPID-8505503"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs20"
                            },
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:rpm/unknown",
                                        "product": {
                                            "name": "vers:rpm/unknown",
                                            "product_id": "CSAFPID-8505504"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs22"
                            },
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:rpm/unknown",
                                        "product": {
                                            "name": "vers:rpm/unknown",
                                            "product_id": "CSAFPID-8476917"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs24"
                            },
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:rpm/unknown",
                                        "product": {
                                            "name": "vers:rpm/unknown",
                                            "product_id": "CSAFPID-6239276"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs25"
                            },
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:rpm/unknown",
                                        "product": {
                                            "name": "vers:rpm/unknown",
                                            "product_id": "CSAFPID-8476920"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs26"
                            }
                        ],
                        "category": "product_family",
                        "name": "Red Hat Hardened Images"
                    }
                ],
                "category": "vendor",
                "name": "Red Hat"
            },
            {
                "branches": [
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:unknown/>=0|<22.23.5-r0",
                                        "product": {
                                            "name": "vers:unknown/>=0|<22.23.5-r0",
                                            "product_id": "CSAFPID-10088332"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs"
                            }
                        ],
                        "category": "product_family",
                        "name": "Alpine:v3.21"
                    },
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:unknown/>=0|<22.23.5-r0",
                                        "product": {
                                            "name": "vers:unknown/>=0|<22.23.5-r0",
                                            "product_id": "CSAFPID-10088333"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs"
                            }
                        ],
                        "category": "product_family",
                        "name": "Alpine:v3.22"
                    },
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:unknown/>=0|<24.22.3-r0",
                                        "product": {
                                            "name": "vers:unknown/>=0|<24.22.3-r0",
                                            "product_id": "CSAFPID-10088334"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs"
                            }
                        ],
                        "category": "product_family",
                        "name": "Alpine:v3.23"
                    },
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:unknown/>=0|<24.22.3-r0",
                                        "product": {
                                            "name": "vers:unknown/>=0|<24.22.3-r0",
                                            "product_id": "CSAFPID-10088335"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs"
                            },
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:unknown/>=0|<26.13.1-r0",
                                        "product": {
                                            "name": "vers:unknown/>=0|<26.13.1-r0",
                                            "product_id": "CSAFPID-10092238"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs-current"
                            }
                        ],
                        "category": "product_family",
                        "name": "Alpine:v3.24"
                    }
                ],
                "category": "vendor",
                "name": "Alpine"
            },
            {
                "branches": [
                    {
                        "branches": [
                            {
                                "branches": [
                                    {
                                        "category": "product_version_range",
                                        "name": "vers:deb/unknown",
                                        "product": {
                                            "name": "vers:deb/unknown",
                                            "product_id": "CSAFPID-1408881"
                                        }
                                    }
                                ],
                                "category": "product_name",
                                "name": "nodejs"
                            }
                        ],
                        "category": "product_family",
                        "name": "bookworm"
                    }
                ],
                "category": "vendor",
                "name": "Debian"
            },
            {
                "branches": [
                    {
                        "branches": [
                            {
                                "category": "product_version_range",
                                "name": "vers:semver/0.0.0|<22.23.5",
                                "product": {
                                    "name": "vers:semver/0.0.0|<22.23.5",
                                    "product_id": "CSAFPID-10084446"
                                }
                            },
                            {
                                "category": "product_version_range",
                                "name": "vers:semver/23.0.0|<24.22.3",
                                "product": {
                                    "name": "vers:semver/23.0.0|<24.22.3",
                                    "product_id": "CSAFPID-10084447"
                                }
                            },
                            {
                                "category": "product_version_range",
                                "name": "vers:semver/25.0.0|<26.13.1",
                                "product": {
                                    "name": "vers:semver/25.0.0|<26.13.1",
                                    "product_id": "CSAFPID-10084445"
                                }
                            }
                        ],
                        "category": "product_name",
                        "name": "nodejs"
                    }
                ],
                "category": "vendor",
                "name": "nodejs"
            }
        ]
    },
    "vulnerabilities": [
        {
            "cve": "CVE-2026-123867",
            "cwe": {
                "id": "CWE-295",
                "name": "Improper Certificate Validation"
            },
            "notes": [
                {
                    "category": "description",
                    "text": "A per-host mutual-TLS authorization bypass in Node.js lets a client authorized for the default hostname reach a protected hostname it is not authorized for. When a TLS server assigns a hostname a different client-certificate CA with `server.addContext(host, { ca: protectedCA })` but no server certificate in that SNI context, the per-host client CA is never installed and the handshake falls back to the default client CA. In `src/crypto/crypto_tls.cc`, `CertCbDone` installs the SNI context's CA only when `setSniContext` succeeds, but `setSniContext` returns `false` for a context with no server certificate, so a CA-only SNI context silently keeps the default CA. A client holding a certificate trusted by the default CA, but not the protected CA, can therefore complete mTLS to the protected hostname and read its response even with `requestCert` and `rejectUnauthorized` enabled, while a client certified by the protected CA is rejected. This vulnerability affects Node.js 26.x, 24.x, and 22.x.",
                    "title": "debian - https://security-tracker.debian.org/tracker/CVE-2026-123867"
                },
                {
                    "category": "description",
                    "text": "A per-host mutual-TLS authorization bypass in Node.js lets a client authorized for the default hostname reach a protected hostname it is not authorized for. When a TLS server assigns a hostname a different client-certificate CA with `server.addContext(host, { ca: protectedCA })` but no server certificate in that SNI context, the per-host client CA is never installed and the handshake falls back to the default client CA. In `src/crypto/crypto_tls.cc`, `CertCbDone` installs the SNI context's CA only when `setSniContext` succeeds, but `setSniContext` returns `false` for a context with no server certificate, so a CA-only SNI context silently keeps the default CA. A client holding a certificate trusted by the default CA, but not the protected CA, can therefore complete mTLS to the protected hostname and read its response even with `requestCert` and `rejectUnauthorized` enabled, while a client certified by the protected CA is rejected. This vulnerability affects Node.js 26.x, 24.x, and 22.x.",
                    "title": "osvalpine - https://www.googleapis.com/download/storage/v1/b/osv-vulnerabilities/o/Alpine%2FALPINE-CVE-2026-123867.json?alt=media"
                },
                {
                    "category": "description",
                    "text": "A flaw was found in Node.js. When a Transport Layer Security (TLS) server configures a host-specific client Certificate Authority (CA) without providing an associated server certificate, the per-host client validation settings fail to apply. Consequently, the connection silently falls back to trusting the default client CA. A remote client authorized only for the default host can exploit this flaw to bypass mutual TLS (mTLS) restrictions and gain unauthorized access to protected hostnames.\nThis vulnerability is rated as having Moderate impact because successful exploitation requires a non-standard configuration and existing authorized client credentials, restricting the flaw to cross-tenant boundary traversal rather than arbitrary unauthenticated access. In standard Red Hat enterprise environments, Node.js applications enforcing mutual TLS typically either configure dedicated server certificates for each virtual host or terminate TLS upstream at an API gateway or reverse proxy. The impact is therefore limited to specific deployments that rely on runtime SNI-based client CA switching without defining host-specific server certificates.",
                    "title": "redhat - https://access.redhat.com/security/cve/CVE-2026-123867"
                },
                {
                    "category": "description",
                    "text": "A per-host mutual-TLS authorization bypass in Node.js lets a client authorized for the default hostname reach a protected hostname it is not authorized for. When a TLS server assigns a hostname a different client-certificate CA with `server.addContext(host, { ca: protectedCA })` but no server certificate in that SNI context, the per-host client CA is never installed and the handshake falls back to the default client CA. In `src/crypto/crypto_tls.cc`, `CertCbDone` installs the SNI context's CA only when `setSniContext` succeeds, but `setSniContext` returns `false` for a context with no server certificate, so a CA-only SNI context silently keeps the default CA. A client holding a certificate trusted by the default CA, but not the protected CA, can therefore complete mTLS to the protected hostname and read its response even with `requestCert` and `rejectUnauthorized` enabled, while a client certified by the protected CA is rejected. This vulnerability affects Node.js 26.x, 24.x, and 22.x.",
                    "title": "cveprojectv5 - https://www.cve.org/CVERecord?id=CVE-2026-123867"
                },
                {
                    "category": "description",
                    "text": "A per-host mutual-TLS authorization bypass in Node.js lets a client authorized for the default hostname reach a protected hostname it is not authorized for. When a TLS server assigns a hostname a different client-certificate CA with `server.addContext(host, { ca: protectedCA })` but no server certificate in that SNI context, the per-host client CA is never installed and the handshake falls back to the default client CA. In `src/crypto/crypto_tls.cc`, `CertCbDone` installs the SNI context's CA only when `setSniContext` succeeds, but `setSniContext` returns `false` for a context with no server certificate, so a CA-only SNI context silently keeps the default CA. A client holding a certificate trusted by the default CA, but not the protected CA, can therefore complete mTLS to the protected hostname and read its response even with `requestCert` and `rejectUnauthorized` enabled, while a client certified by the protected CA is rejected. This vulnerability affects Node.js 26.x, 24.x, and 22.x.",
                    "title": "nvd - https://nvd.nist.gov/vuln/detail/CVE-2026-123867"
                },
                {
                    "category": "other",
                    "text": "0.00149",
                    "title": "EPSS"
                },
                {
                    "category": "other",
                    "text": "3.9",
                    "title": "NCSC Score"
                },
                {
                    "category": "other",
                    "text": "There is product data available from source Certbundde",
                    "title": "NCSC Score top increasing factors"
                },
                {
                    "category": "other",
                    "text": "Is related to a product by vendor Debian, Is related to a product by vendor Open Source, There is cwe data available from source Nvd, There is product data available from source Debian",
                    "title": "NCSC Score top decreasing factors"
                },
                {
                    "category": "details",
                    "text": "Severity: 2\n",
                    "title": "Vendor assessment"
                }
            ],
            "product_status": {
                "known_affected": [
                    "CSAFPID-10084446",
                    "CSAFPID-10084447",
                    "CSAFPID-10084445",
                    "CSAFPID-6014972",
                    "CSAFPID-6239276",
                    "CSAFPID-8476917",
                    "CSAFPID-8476920",
                    "CSAFPID-8505503",
                    "CSAFPID-8505504",
                    "CSAFPID-1408881",
                    "CSAFPID-10088840",
                    "CSAFPID-10088841",
                    "CSAFPID-10088842",
                    "CSAFPID-10088332",
                    "CSAFPID-10088333",
                    "CSAFPID-10088334",
                    "CSAFPID-10088335",
                    "CSAFPID-10092238"
                ]
            },
            "references": [
                {
                    "category": "external",
                    "summary": "Source - cveprojectv5",
                    "url": "https://www.cve.org/CVERecord?id=CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Source - nvd",
                    "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Source - ncscclear",
                    "url": "https://vulnerabilities.ncsc.nl/manual/CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Source - redhat",
                    "url": "https://access.redhat.com/security/cve/CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Source - debian",
                    "url": "https://security-tracker.debian.org/tracker/CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Source - hkcert",
                    "url": "https://www.hkcert.org/security-bulletin/node-js-multiple-vulnerabilities_20261112"
                },
                {
                    "category": "external",
                    "summary": "Source - certbundde",
                    "url": "https://wid.cert-bund.de/.well-known/csaf/white/2026/wid-sec-w-2026-4525.json"
                },
                {
                    "category": "external",
                    "summary": "Source - osv",
                    "url": "https://www.googleapis.com/download/storage/v1/b/osv-vulnerabilities/o/Alpine%2FALPINE-CVE-2026-123867.json?alt=media"
                },
                {
                    "category": "external",
                    "summary": "Source - ncscclear",
                    "url": "https://advisories.ncsc.nl/advisory?id=NCSC-2026-0492"
                },
                {
                    "category": "external",
                    "summary": "Source - first",
                    "url": "https://api.first.org/data/v1/epss"
                },
                {
                    "category": "external",
                    "summary": "Reference - certbundde",
                    "url": "https://wid.cert-bund.de/.well-known/csaf/white/2026/wid-sec-w-2026-4525.json"
                },
                {
                    "category": "external",
                    "summary": "Reference - certbundde",
                    "url": "https://wid.cert-bund.de/portal/wid/securityadvisory?name=WID-SEC-2026-4525"
                },
                {
                    "category": "external",
                    "summary": "Reference - certbundde; cveprojectv5; nvd; redhat",
                    "url": "https://nodejs.org/en/blog/vulnerability/november-2026-security-releases"
                },
                {
                    "category": "external",
                    "summary": "Reference - osv",
                    "url": "https://security.alpinelinux.org/vuln/CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Reference - cveprojectv5; nvd; redhat",
                    "url": "https://cna.openjsf.org/security-advisories.html"
                },
                {
                    "category": "external",
                    "summary": "Reference - redhat",
                    "url": "https://www.cve.org/CVERecord?id=CVE-2026-123867"
                },
                {
                    "category": "external",
                    "summary": "Reference - redhat",
                    "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123867"
                }
            ],
            "remediations": [
                {
                    "category": "mitigation",
                    "details": "Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability.",
                    "product_ids": [
                        "CSAFPID-6014972",
                        "CSAFPID-6239276",
                        "CSAFPID-8476917",
                        "CSAFPID-8476920",
                        "CSAFPID-8505503",
                        "CSAFPID-8505504"
                    ]
                }
            ],
            "scores": [
                {
                    "cvss_v3": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N",
                        "baseScore": 4.2,
                        "baseSeverity": "MEDIUM"
                    },
                    "products": [
                        "CSAFPID-10084445",
                        "CSAFPID-10084446",
                        "CSAFPID-10084447",
                        "CSAFPID-10088332",
                        "CSAFPID-10088333",
                        "CSAFPID-10088334",
                        "CSAFPID-10088335",
                        "CSAFPID-10088840",
                        "CSAFPID-10088841",
                        "CSAFPID-10088842",
                        "CSAFPID-10092238",
                        "CSAFPID-1408881",
                        "CSAFPID-6014972",
                        "CSAFPID-6239276",
                        "CSAFPID-8476917",
                        "CSAFPID-8476920",
                        "CSAFPID-8505503",
                        "CSAFPID-8505504"
                    ]
                }
            ],
            "title": "CVE-2026-123867"
        }
    ]
}