{
	"document":{
		"aggregate_severity":{
			"namespace":"https://nvd.nist.gov/vuln-metrics/cvss",
			"text":"High"
		},
		"category":"csaf_vex",
		"csaf_version":"2.0",
		"distribution":{
			"tlp":{
				"label":"WHITE",
				"url":"https:/www.first.org/tlp/"
			}
		},
		"lang":"en",
		"notes":[
			{
				"text":"nodejs security update",
				"category":"general",
				"title":"Synopsis"
			},
			{
				"text":"An update for nodejs is now available for openEuler-24.03-LTS-SP2",
				"category":"general",
				"title":"Summary"
			},
			{
				"text":"Node.js is a platform built on Chrome&apos;s JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.\n\nSecurity Fix(es):\n\nA flaw in Node.js HTTP request handling causes an uncaught `TypeError` when a request is received with a header named `__proto__` and the application accesses `req.headersDistinct`.\n\nWhen this occurs, `dest[\"__proto__\"]` resolves to `Object.prototype` rather than `undefined`, causing `.push()` to be called on a non-array. This exception is thrown synchronously inside a property getter and cannot be intercepted by `error` event listeners, meaning it cannot be handled without wrapping every `req.headersDistinct` access in a `try/catch`.\n\n* This vulnerability affects all Node.js HTTP servers on **20.x, 22.x, 24.x, and v25.x**(CVE-2026-21710)\n\nA flaw in Node.js HMAC verification uses a non-constant-time comparison when validating user-provided signatures, potentially leaking timing information proportional to the number of matching bytes. Under certain threat models where high-resolution timing measurements are possible, this behavior could be exploited as a timing oracle to infer HMAC values.\n\nNode.js already provides timing-safe comparison primitives used elsewhere in the codebase, indicating this is an oversight rather than an intentional design decision.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x**.(CVE-2026-21713)\n\nA memory leak occurs in Node.js HTTP/2 servers when a client sends WINDOW_UPDATE frames on stream 0 (connection-level) that cause the flow control window to exceed the maximum value of 2³¹-1. The server correctly sends a GOAWAY frame, but the Http2Session object is never cleaned up.\n\nThis vulnerability affects HTTP2 users on Node.js 20, 22, 24 and 25.(CVE-2026-21714)\n\nA flaw in Node.js Permission Model filesystem enforcement leaves `fs.realpathSync.native()` without the required read permission checks, while all comparable filesystem functions correctly enforce them.\n\nAs a result, code running under `--permission` with restricted `--allow-fs-read` can still use `fs.realpathSync.native()` to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-read` is intentionally restricted.(CVE-2026-21715)\n\nAn incomplete fix for CVE-2024-36137 leaves `FileHandle.chmod()` and `FileHandle.chown()` in the promises API without the required permission checks, while their callback-based equivalents (`fs.fchmod()`, `fs.fchown()`) were correctly patched.\n\nAs a result, code running under `--permission` with restricted `--allow-fs-write` can still use promise-based `FileHandle` methods to modify file permissions and ownership on already-open file descriptors, bypassing the intended write restrictions.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-write` is intentionally restricted.(CVE-2026-21716)\n\nA flaw in V8's string hashing mechanism causes integer-like strings to be hashed to their numeric value, making hash collisions trivially predictable. By crafting a request that causes many such collisions in V8's internal string table, an attacker can significantly degrade performance of the Node.js process.\n\nThe most common trigger is any endpoint that calls `JSON.parse()` on attacker-controlled input, as JSON parsing automatically internalizes short strings into the affected hash table.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x**.(CVE-2026-21717)",
				"category":"general",
				"title":"Description"
			},
			{
				"text":"An update for nodejs is now available for master/openEuler-20.03-LTS-SP4/openEuler-22.03-LTS-SP4/openEuler-24.03-LTS/openEuler-24.03-LTS-Next/openEuler-24.03-LTS-SP1/openEuler-24.03-LTS-SP2/openEuler-24.03-LTS-SP3/openEuler-22.03-LTS-SP3.\n\nopenEuler Security has rated this update as having a security impact of high. A Common Vunlnerability Scoring System(CVSS)base score,which gives a detailed severity rating, is available for each vulnerability from the CVElink(s) in the References section.",
				"category":"general",
				"title":"Topic"
			},
			{
				"text":"High",
				"category":"general",
				"title":"Severity"
			},
			{
				"text":"nodejs",
				"category":"general",
				"title":"Affected Component"
			}
		],
		"publisher":{
			"issuing_authority":"openEuler security committee",
			"name":"openEuler",
			"namespace":"https://www.openeuler.org",
			"contact_details":"openeuler-security@openeuler.org",
			"category":"vendor"
		},
		"references":[
			{
				"summary":"openEuler-SA-2026-1951",
				"category":"self",
				"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
			},
			{
				"summary":"CVE-2026-21710",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21710&packageName=nodejs"
			},
			{
				"summary":"CVE-2026-21713",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21713&packageName=nodejs"
			},
			{
				"summary":"CVE-2026-21714",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21714&packageName=nodejs"
			},
			{
				"summary":"CVE-2026-21715",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21715&packageName=nodejs"
			},
			{
				"summary":"CVE-2026-21716",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21716&packageName=nodejs"
			},
			{
				"summary":"CVE-2026-21717",
				"category":"self",
				"url":"https://www.openeuler.org/en/security/cve/detail/?cveId=CVE-2026-21717&packageName=nodejs"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21710"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21713"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21714"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21715"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21716"
			},
			{
				"summary":"nvd cve",
				"category":"external",
				"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-21717"
			},
			{
				"summary":"openEuler-SA-2026-1951 vex file",
				"category":"self",
				"url":"https://repo.openeuler.org/security/data/csaf/advisories/2026/csaf-openeuler-sa-2026-1951.json"
			}
		],
		"title":"An update for nodejs is now available for openEuler-24.03-LTS-SP2",
		"tracking":{
			"initial_release_date":"2026-04-17T21:04:30+08:00",
			"revision_history":[
				{
					"date":"2026-04-17T21:04:30+08:00",
					"summary":"Initial",
					"number":"1.0.0"
				}
			],
			"generator":{
				"date":"2026-04-17T21:04:30+08:00",
				"engine":{
					"name":"openEuler CSAF Tool V1.0"
				}
			},
			"current_release_date":"2026-04-17T21:04:30+08:00",
			"id":"openEuler-SA-2026-1951",
			"version":"1.0.0",
			"status":"final"
		}
	},
	"product_tree":{
		"branches":[
			{
				"name":"openEuler",
				"category":"vendor",
				"branches":[
					{
						"name":"openEuler",
						"branches":[
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"openEuler-24.03-LTS-SP2",
									"name":"openEuler-24.03-LTS-SP2"
								},
								"name":"openEuler-24.03-LTS-SP2",
								"category":"product_version"
							}
						],
						"category":"product_name"
					},
					{
						"name":"aarch64",
						"branches":[
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-devel-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-devel-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-devel-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-libs-20.18.2-7.oe2403sp2.aarch64.rpm",
									"name":"nodejs-libs-20.18.2-7.oe2403sp2.aarch64.rpm"
								},
								"name":"nodejs-libs-20.18.2-7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64.rpm",
									"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64.rpm"
								},
								"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64.rpm",
									"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64.rpm"
								},
								"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64.rpm",
								"category":"product_version"
							}
						],
						"category":"architecture"
					},
					{
						"name":"src",
						"branches":[
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-20.18.2-7.oe2403sp2.src.rpm",
									"name":"nodejs-20.18.2-7.oe2403sp2.src.rpm"
								},
								"name":"nodejs-20.18.2-7.oe2403sp2.src.rpm",
								"category":"product_version"
							}
						],
						"category":"architecture"
					},
					{
						"name":"x86_64",
						"branches":[
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-devel-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-devel-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-devel-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-libs-20.18.2-7.oe2403sp2.x86_64.rpm",
									"name":"nodejs-libs-20.18.2-7.oe2403sp2.x86_64.rpm"
								},
								"name":"nodejs-libs-20.18.2-7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64.rpm",
									"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64.rpm"
								},
								"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							},
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64.rpm",
									"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64.rpm"
								},
								"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64.rpm",
								"category":"product_version"
							}
						],
						"category":"architecture"
					},
					{
						"name":"noarch",
						"branches":[
							{
								"product":{
									"product_identification_helper":{
										"cpe":"cpe:/a:openEuler:openEuler:24.03-LTS-SP2"
									},
									"product_id":"nodejs-docs-20.18.2-7.oe2403sp2.noarch.rpm",
									"name":"nodejs-docs-20.18.2-7.oe2403sp2.noarch.rpm"
								},
								"name":"nodejs-docs-20.18.2-7.oe2403sp2.noarch.rpm",
								"category":"product_version"
							}
						],
						"category":"architecture"
					}
				]
			}
		],
		"relationships":[
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-devel-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-devel-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-devel-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-libs-20.18.2-7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-libs-20.18.2-7.oe2403sp2.aarch64",
					"name":"nodejs-libs-20.18.2-7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64",
					"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64",
					"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-20.18.2-7.oe2403sp2.src.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.src",
					"name":"nodejs-20.18.2-7.oe2403sp2.src as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-devel-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-devel-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-devel-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-libs-20.18.2-7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-libs-20.18.2-7.oe2403sp2.x86_64",
					"name":"nodejs-libs-20.18.2-7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64",
					"name":"npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64",
					"name":"v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64 as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			},
			{
				"relates_to_product_reference":"openEuler-24.03-LTS-SP2",
				"product_reference":"nodejs-docs-20.18.2-7.oe2403sp2.noarch.rpm",
				"full_product_name":{
					"product_id":"openEuler-24.03-LTS-SP2:nodejs-docs-20.18.2-7.oe2403sp2.noarch",
					"name":"nodejs-docs-20.18.2-7.oe2403sp2.noarch as a component of openEuler-24.03-LTS-SP2"
				},
				"category":"default_component_of"
			}
		]
	},
	"vulnerabilities":[
		{
			"cve":"CVE-2026-21710",
			"notes":[
				{
					"text":"A flaw in Node.js HTTP request handling causes an uncaught `TypeError` when a request is received with a header named `__proto__` and the application accesses `req.headersDistinct`.\n\nWhen this occurs, `dest[\"__proto__\"]` resolves to `Object.prototype` rather than `undefined`, causing `.push()` to be called on a non-array. This exception is thrown synchronously inside a property getter and cannot be intercepted by `error` event listeners, meaning it cannot be handled without wrapping every `req.headersDistinct` access in a `try/catch`.\n\n* This vulnerability affects all Node.js HTTP servers on **20.x, 22.x, 24.x, and v25.x**",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":[
					"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-debuginfo-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-debugsource-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-devel-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-full-i18n-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-libs-20.18.2-7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:npm-10.8.2-1.20.18.2.7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.aarch64",
					"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.src",
					"openEuler-24.03-LTS-SP2:nodejs-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-debuginfo-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-debugsource-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-devel-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-full-i18n-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-libs-20.18.2-7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:npm-10.8.2-1.20.18.2.7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:v8-devel-11.3.244.8-1.20.18.2.7.oe2403sp2.x86_64",
					"openEuler-24.03-LTS-SP2:nodejs-docs-20.18.2-7.oe2403sp2.noarch"
				]
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"HIGH",
						"baseScore":7.5,
						"vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"High",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21710"
		},
		{
			"cve":"CVE-2026-21713",
			"notes":[
				{
					"text":"A flaw in Node.js HMAC verification uses a non-constant-time comparison when validating user-provided signatures, potentially leaking timing information proportional to the number of matching bytes. Under certain threat models where high-resolution timing measurements are possible, this behavior could be exploited as a timing oracle to infer HMAC values.\n\nNode.js already provides timing-safe comparison primitives used elsewhere in the codebase, indicating this is an oversight rather than an intentional design decision.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x**.",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"MEDIUM",
						"baseScore":5.9,
						"vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"Medium",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21713"
		},
		{
			"cve":"CVE-2026-21714",
			"notes":[
				{
					"text":"A memory leak occurs in Node.js HTTP/2 servers when a client sends WINDOW_UPDATE frames on stream 0 (connection-level) that cause the flow control window to exceed the maximum value of 2³¹-1. The server correctly sends a GOAWAY frame, but the Http2Session object is never cleaned up.\n\nThis vulnerability affects HTTP2 users on Node.js 20, 22, 24 and 25.",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"MEDIUM",
						"baseScore":5.3,
						"vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"Medium",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21714"
		},
		{
			"cve":"CVE-2026-21715",
			"notes":[
				{
					"text":"A flaw in Node.js Permission Model filesystem enforcement leaves `fs.realpathSync.native()` without the required read permission checks, while all comparable filesystem functions correctly enforce them.\n\nAs a result, code running under `--permission` with restricted `--allow-fs-read` can still use `fs.realpathSync.native()` to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-read` is intentionally restricted.",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"LOW",
						"baseScore":3.3,
						"vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"Low",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21715"
		},
		{
			"cve":"CVE-2026-21716",
			"notes":[
				{
					"text":"An incomplete fix for CVE-2024-36137 leaves `FileHandle.chmod()` and `FileHandle.chown()` in the promises API without the required permission checks, while their callback-based equivalents (`fs.fchmod()`, `fs.fchown()`) were correctly patched.\n\nAs a result, code running under `--permission` with restricted `--allow-fs-write` can still use promise-based `FileHandle` methods to modify file permissions and ownership on already-open file descriptors, bypassing the intended write restrictions.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-write` is intentionally restricted.",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"LOW",
						"baseScore":3.3,
						"vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"Low",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21716"
		},
		{
			"cve":"CVE-2026-21717",
			"notes":[
				{
					"text":"A flaw in V8's string hashing mechanism causes integer-like strings to be hashed to their numeric value, making hash collisions trivially predictable. By crafting a request that causes many such collisions in V8's internal string table, an attacker can significantly degrade performance of the Node.js process.\n\nThe most common trigger is any endpoint that calls `JSON.parse()` on attacker-controlled input, as JSON parsing automatically internalizes short strings into the affected hash table.\n\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x**.",
					"category":"description",
					"title":"Vulnerability Description"
				}
			],
			"product_status":{
				"fixed":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
			},
			"remediations":[
				{
					"product_ids":{"$ref":"$.vulnerabilities[0].product_status.fixed"},
					"details":"nodejs security update",
					"category":"vendor_fix",
					"url":"https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-1951"
				}
			],
			"scores":[
				{
					"cvss_v3":{
						"baseSeverity":"MEDIUM",
						"baseScore":5.9,
						"vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H",
						"version":"3.1"
					},
					"products":{"$ref":"$.vulnerabilities[0].product_status.fixed"}
				}
			],
			"threats":[
				{
					"details":"Medium",
					"category":"impact"
				}
			],
			"title":"CVE-2026-21717"
		}
	]
}