Description
A prototype pollution vulnerability exists in the function copy in dom.js in the xmldom (published as @xmldom/xmldom) package before 0.8.3 for Node.js via the p variable. NOTE: the vendor states "we are in the process of marking this report as invalid"; however, some third parties takes the position that "A prototype injection/Prototype pollution is not just when global objects are polluted with recursive merge or deep cloning but also when a target object is polluted."
Remediation
References
http://users.encs.concordia.ca/~mmannan/publications/JS-vulnerability-aisaccs2022.pdf
https://dl.acm.org/doi/abs/10.1145/3488932.3497769
https://dl.acm.org/doi/pdf/10.1145/3488932.3497769
https://github.com/xmldom/xmldom/blob/bc36efddf9948aba15618f85dc1addfc2ac9d7b2/lib/dom.js#L1
https://github.com/xmldom/xmldom/blob/bc36efddf9948aba15618f85dc1addfc2ac9d7b2/lib/dom.js#L3
https://github.com/xmldom/xmldom/issues/436
https://github.com/xmldom/xmldom/issues/436#issuecomment-1319412826
https://github.com/xmldom/xmldom/issues/436#issuecomment-1327776560
https://github.com/xmldom/xmldom/security/advisories/GHSA-9pgh-qqpf-7wqj
https://lists.debian.org/debian-lts-announce/2022/10/msg00023.html
Related Vulnerabilities
CVE-2020-7683 Vulnerability in npm package rollup-plugin-server
CVE-2020-1936 Vulnerability in maven package org.apache.ambari:ambari-web
CVE-2021-42227 Vulnerability in npm package kindeditor
CVE-2022-48285 Vulnerability in maven package org.webjars.npm:github-com-stuk-jszip
CVE-2022-45388 Vulnerability in maven package net.praqma:config-rotator