{"api_version":"1","generated_at":"2026-11-11T22:16:34+00:00","cve":"CVE-2026-123871","urls":{"html":"https://cve.report/CVE-2026-123871","api":"https://cve.report/api/cve/CVE-2026-123871.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-123871","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-123871"},"summary":{"title":"Node.js is vulnerable to proxy credential disclosure via ERR_PROXY_INVALID_CONFIG error messages","description":"Node.js discloses proxy credentials in ERR_PROXY_INVALID_CONFIG error messages. CVE-2026-48615 established that a proxy credential must not appear in a Node.js error message and redacted the username and password from ProxyConfig.href, but that fix missed four error paths in the same subsystem, one of them inside the same constructor, which interpolate the raw proxy URL, credentials included, into an ERR_PROXY_INVALID_CONFIG message. The proxy URL comes from the environment, but the defect is the sink: a secret that Node.js redacts everywhere else is emitted verbatim into a much wider audience than the process environment, such as stderr, container logs, log aggregation, and crash reporting services. This vulnerability affects Node.js 26.x, 24.x, and 22.x.","state":"PUBLISHED","assigner":"openjs","published_at":"2026-11-11 19:17:34","updated_at":"2026-11-11 19:17:34"},"problem_types":["CWE-209","CWE-209 Information Exposure Through an Error Message"],"metrics":[{"version":"3.0","source":"ce714d77-add3-4f53-aff5-83d477b104bb","type":"Secondary","score":"6.2","severity":"MEDIUM","vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","data":{"version":"3.0","vectorString":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","baseScore":6.2,"baseSeverity":"MEDIUM","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE"}},{"version":"3.0","source":"CNA","type":"CVSS","score":"6.2","severity":"MEDIUM","vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","data":{"baseScore":6.2,"baseSeverity":"MEDIUM","vectorString":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","version":"3.0"}}],"references":[{"url":"https://cna.openjsf.org/security-advisories.html","name":"https://cna.openjsf.org/security-advisories.html","refsource":"ce714d77-add3-4f53-aff5-83d477b104bb","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://nodejs.org/en/blog/vulnerability/november-2026-security-releases","name":"https://nodejs.org/en/blog/vulnerability/november-2026-security-releases","refsource":"ce714d77-add3-4f53-aff5-83d477b104bb","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-123871","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-123871","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"nodejs","product":"node","version":"affected 0.0.0 22.23.5 semver","platforms":[]},{"source":"CNA","vendor":"nodejs","product":"node","version":"affected 23.0.0 24.22.3 semver","platforms":[]},{"source":"CNA","vendor":"nodejs","product":"node","version":"affected 25.0.0 26.13.1 semver","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"p-v-p","lang":"en"},{"source":"CNA","value":"mcollina","lang":"en"},{"source":"CNA","value":"Trott","lang":"en"},{"source":"CNA","value":"UlisesGascon","lang":"en"},{"source":"CNA","value":"joyeecheung","lang":"en"},{"source":"CNA","value":"aduh95","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"node","vendor":"nodejs","versions":[{"lessThan":"22.23.5","status":"affected","version":"0.0.0","versionType":"semver"},{"lessThan":"24.22.3","status":"affected","version":"23.0.0","versionType":"semver"},{"lessThan":"26.13.1","status":"affected","version":"25.0.0","versionType":"semver"}]}],"credits":[{"lang":"en","type":"reporter","value":"p-v-p"},{"lang":"en","type":"remediation developer","value":"mcollina"},{"lang":"en","type":"remediation reviewer","value":"Trott"},{"lang":"en","type":"remediation reviewer","value":"UlisesGascon"},{"lang":"en","type":"remediation reviewer","value":"joyeecheung"},{"lang":"en","type":"coordinator","value":"aduh95"}],"descriptions":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/markdown","value":"Node.js discloses proxy credentials in `ERR_PROXY_INVALID_CONFIG` error messages. CVE-2026-48615 established that a proxy credential must not appear in a Node.js error message and redacted the username and password from `ProxyConfig.href`, but that fix missed four error paths in the same subsystem, one of them inside the same constructor, which interpolate the raw proxy URL, credentials included, into an `ERR_PROXY_INVALID_CONFIG` message. The proxy URL comes from the environment, but the defect is the sink: a secret that Node.js redacts everywhere else is emitted verbatim into a much wider audience than the process environment, such as stderr, container logs, log aggregation, and crash reporting services. This vulnerability affects Node.js 26.x, 24.x, and 22.x."}],"value":"Node.js discloses proxy credentials in ERR_PROXY_INVALID_CONFIG error messages. CVE-2026-48615 established that a proxy credential must not appear in a Node.js error message and redacted the username and password from ProxyConfig.href, but that fix missed four error paths in the same subsystem, one of them inside the same constructor, which interpolate the raw proxy URL, credentials included, into an ERR_PROXY_INVALID_CONFIG message. The proxy URL comes from the environment, but the defect is the sink: a secret that Node.js redacts everywhere else is emitted verbatim into a much wider audience than the process environment, such as stderr, container logs, log aggregation, and crash reporting services. This vulnerability affects Node.js 26.x, 24.x, and 22.x."}],"metrics":[{"cvssV3_0":{"baseScore":6.2,"baseSeverity":"MEDIUM","vectorString":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","version":"3.0"},"format":"CVSS"}],"problemTypes":[{"descriptions":[{"cweId":"CWE-209","description":"Information Exposure Through an Error Message","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-11-11T18:26:51.700Z","orgId":"ce714d77-add3-4f53-aff5-83d477b104bb","shortName":"openjs"},"references":[{"tags":["vendor-advisory"],"url":"https://nodejs.org/en/blog/vulnerability/november-2026-security-releases"},{"url":"https://cna.openjsf.org/security-advisories.html"}],"title":"Node.js is vulnerable to proxy credential disclosure via ERR_PROXY_INVALID_CONFIG error messages","x_generator":{"engine":"nodejs-private/security-release publish-cves"}}},"cveMetadata":{"assignerOrgId":"ce714d77-add3-4f53-aff5-83d477b104bb","assignerShortName":"openjs","cveId":"CVE-2026-123871","datePublished":"2026-11-11T18:26:51.700Z","dateReserved":"2026-11-06T16:18:41.667Z","dateUpdated":"2026-11-11T18:26:51.700Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-11-11 19:17:34","lastModifiedDate":"2026-11-11 19:17:34","problem_types":["CWE-209","CWE-209 Information Exposure Through an Error Message"],"metrics":{"cvssMetricV30":[{"source":"ce714d77-add3-4f53-aff5-83d477b104bb","type":"Secondary","cvssData":{"version":"3.0","vectorString":"CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","baseScore":6.2,"baseSeverity":"MEDIUM","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE"},"exploitabilityScore":2.5,"impactScore":3.6}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"123871","Ordinal":"1","Title":"Node.js is vulnerable to proxy credential disclosure via ERR_PRO","CVE":"CVE-2026-123871","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"123871","Ordinal":"1","NoteData":"Node.js discloses proxy credentials in ERR_PROXY_INVALID_CONFIG error messages. CVE-2026-48615 established that a proxy credential must not appear in a Node.js error message and redacted the username and password from ProxyConfig.href, but that fix missed four error paths in the same subsystem, one of them inside the same constructor, which interpolate the raw proxy URL, credentials included, into an ERR_PROXY_INVALID_CONFIG message. The proxy URL comes from the environment, but the defect is the sink: a secret that Node.js redacts everywhere else is emitted verbatim into a much wider audience than the process environment, such as stderr, container logs, log aggregation, and crash reporting services. This vulnerability affects Node.js 26.x, 24.x, and 22.x.","Type":"Description","Title":"Node.js is vulnerable to proxy credential disclosure via ERR_PRO"}]}}}