{"id":"CVE-2026-3884","aliases":["DEBIAN-CVE-2026-3884","EUVD-2026-11105","GHSA-h99f-r56h-cmrp","UBUNTU-CVE-2026-3884"],"status":"published","title":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the...","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","severity":{"version":"4.0","score":5.1,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00186,"percentile":0.08295,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-79"],"published":"2026-03-11T05:00:09Z","modified":"2026-10-28T02:30:47Z","affected":[{"source":"osv","ecosystem":"Debian:12","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1","1.2.8+dfsg2-2"]},{"source":"osv","ecosystem":"Debian:13","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1","1.2.8+dfsg2-2"]},{"source":"osv","ecosystem":"Debian:14","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1","1.2.8+dfsg2-2"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-2"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libjs-spin.js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.2.8+dfsg2-1.1","1.2.8+dfsg2-2"]}],"products":[{"vendor":"spin.js","product":"spin.js"}],"references":[{"url":"https://security.snyk.io/vuln/SNYK-JS-SPINJS-15445079","tags":["Third Party Advisory","web","report"]},{"url":"https://gist.github.com/ericcornelissen/1a73e28fa50c3009b0eb51ad2fc19f25","tags":["Broken Link","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-3884","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-h99f-r56h-cmrp"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/3xxx/CVE-2026-3884.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-3884","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-3884","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-3884","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-3884","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T05:00:09.279Z","modified":"2026-03-11T15:45:37.336Z","cvss":[{"version":"4.0","score":5.1,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P","level":"medium","assessor":"cna"},{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N/E:P","level":"medium","assessor":"cna"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T13:49:09.229322Z"}],"euvd":[{"id":"EUVD-2026-11105","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T05:00:09Z","modified":"2026-03-11T15:45:37Z","cvss":[{"version":"4.0","score":5.1,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P","level":"medium"}],"updated_at":"2026-11-02T19:25:37.250097Z"}],"ghsa":[{"id":"GHSA-h99f-r56h-cmrp","title":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the...","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T06:31:41Z","modified":"2026-03-11T06:31:47Z","cvss":[{"version":"4.0","score":2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"low"},{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T15:06:33.767052Z"}],"nvd":[{"id":"CVE-2026-3884","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T06:17:15.183Z","modified":"2026-06-17T10:44:22.803Z","cvss":[{"version":"4.0","score":2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"low","assessor":"secondary"},{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:12:08.98071Z"}],"osv":[{"id":"CVE-2026-3884","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T05:00:09.279Z","modified":"2026-10-28T02:30:47.879235511Z","cvss":[{"version":"4.0","score":2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P","level":"low"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T15:45:03.040464Z"},{"id":"DEBIAN-CVE-2026-3884","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T06:17:15.183Z","modified":"2026-10-01T03:03:23.15837231Z","cvss":[{"version":"4.0","score":2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"low"}],"updated_at":"2026-11-02T15:45:54.892385Z"},{"id":"UBUNTU-CVE-2026-3884","description":"Versions of the package spin.js before 3.0.0 are vulnerable to Cross-site Scripting (XSS) via the spin() function that allows a creation of more than 1 alert for each 'target' element. An attacker would need to set an arbitrary key-value pair on Object.prototype through a crafted URL achieving a prototype pollution first, before being able to execute arbitrary JavaScript in the context of the user's browser.","status":"published","published":"2026-03-11T06:17:00Z","modified":"2026-10-17T13:00:03.070492341Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"},{"version":"4.0","score":2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:P","level":"low"}],"updated_at":"2026-11-02T16:56:16.686388Z"}]}}
