{"schemaVersion":3,"id":"CVE-2026-46342","aliases":["GHSA-g8wj-3cr3-6w7v"],"status":"published","duplicateOf":null,"title":null,"description":"Nuxt is an open-source web development framework for Vue.js. In Nuxt versions 3.1.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6 and @nuxt/nitro-server versions 3.20.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6, the /__nuxt_island/* endpoint accepts attacker-controlled props query/body parameters and renders any island component without verifying that the URL-resident hash (<Name>_<hashId>.json) was actually issued for those inputs by <NuxtIsland>. The hash is computed and embedded client-side but never validated server-side, so the same path can return materially different responses depending on the query. This issue has been patched in versions 3.21.6 and 4.4.6.","dates":{"published":"2026-06-12T12:50:41.589Z","modified":"2026-06-12T20:54:39.647Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":5.4,"severity":"medium","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"4.0","versionLabel":"v4.0","source":"CVE.org","score":2.3,"severity":"low","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N","exploitability":null,"impact":null,"computed":false},{"version":"4.0","versionLabel":"v4.0","source":"OSV · Npm","score":2.3,"severity":"low","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N","exploitability":null,"impact":null,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Npm","score":5.4,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","exploitability":7.2,"impact":4.2,"computed":true},{"version":"4.0","versionLabel":"v4.0","source":"NVD","score":2.3,"severity":"low","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N/E:X/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","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":5.4,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00132,"percentile":0.02465,"severity":"low","asOf":"2026-10-20T00:00:00.000Z","change":{"pp":0.041,"baselineDate":"2026-09-20T00:00:00.000Z","baselineScore":0.00091},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00132,"percentile":0.02465}],"last30":[{"date":"2026-09-20T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00091,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00132,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00132,"percentile":0.02465}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-79","name":"Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","description":"The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/79.html"},{"id":"CWE-349","name":"Acceptance of Extraneous Untrusted Data With Trusted Data","description":"The product, when processing trusted data, accepts any untrusted data that is also included with the trusted data, treating the untrusted data as if it were trusted.","type":"weakness","status":"Draft","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/349.html"},{"id":"CWE-444","name":"Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')","description":"The product acts as an intermediary HTTP agent\n         (such as a proxy or firewall) in the data flow between two\n         entities such as a client and server, but it does not\n         interpret malformed HTTP requests or responses in ways that\n         are consistent with how the messages will be processed by\n         those entities that are at the ultimate destination.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/444.html"}],"affected":[{"vendor":"Npm","product":"nuxt","name":"nuxt","label":"nuxt","ecosystem":"Npm","cpePart":null,"purl":"pkg:npm/nuxt","purlType":"npm","versions":[{"text":"≥ 3.1.0, < 3.21.6","noFixRecorded":false,"fixedIn":null},{"text":"≥ 4.0.0-alpha.1, < 4.4.6","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.1.0, < 3.21.6 | ≥ 4.0.0-alpha.1, < 4.4.6","eol":null,"hubHref":null},{"vendor":"@nuxt","product":"nitro-server","name":"@nuxt/nitro-server","label":"nitro-server","ecosystem":"Npm","cpePart":null,"purl":"pkg:npm/@nuxt/nitro-server","purlType":"npm","versions":[{"text":"≥ 3.20.0, < 3.21.6","noFixRecorded":false,"fixedIn":null},{"text":"≥ 4.2.0, < 4.4.6","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.20.0, < 3.21.6 | ≥ 4.2.0, < 4.4.6","eol":null,"hubHref":null},{"vendor":"nuxt","product":"nuxt","name":"nuxt","label":"nuxt","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 4.0.0-alpha.1, < 4.4.6","noFixRecorded":false,"fixedIn":null},{"text":"≥ 3.1.0, < 3.21.6","noFixRecorded":false,"fixedIn":null},{"text":"≥ 4.0.0, < 4.4.5","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 4.0.0-alpha.1, < 4.4.6 | ≥ 3.1.0, < 3.21.6 | ≥ 4.0.0, < 4.4.5","eol":null,"hubHref":"/vendor/nuxt/nuxt"},{"vendor":"nuxt","product":"nuxt\\/nitro-server","name":"nuxt\\/nitro-server","label":"nuxt\\/nitro-server","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 3.20.0, < 3.21.6","noFixRecorded":false,"fixedIn":null},{"text":"≥ 4.2.0, < 4.4.6","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.20.0, < 3.21.6 | ≥ 4.2.0, < 4.4.6","eol":null,"hubHref":"/vendor/nuxt/nuxtnitro-server"}],"affectedCount":4,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/nuxt/nuxt/security/advisories/GHSA-g8wj-3cr3-6w7v","label":"github.com/nuxt/nuxt/security/advisories/GHSA-g8wj-3cr3-6w7v","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Mitigation","Patch","Vendor Advisory"]},{"url":"https://github.com/nuxt/nuxt/pull/35077","label":"github.com/nuxt/nuxt/pull/35077","hostname":"github.com","tags":["X Refsource MISC","WEB","Issue Tracking"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-46342","label":"nvd.nist.gov/vuln/detail/CVE-2026-46342","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://github.com/nuxt/nuxt","label":"github.com/nuxt/nuxt","hostname":"github.com","tags":["PACKAGE"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-06-12T12:50:41.589Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-06-12T20:54:39.647Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":22,"level":"low","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-21T06:49:00.928Z","stale":false,"partial":false}}