{"schemaVersion":3,"id":"CVE-2026-71314","aliases":["GHSA-hxcr-hm88-mpq6"],"status":"published","duplicateOf":null,"title":null,"description":"Nuxt is an open-source web development framework for Vue.js. From 3.1.0 until 3.21.10 and 4.5.1, an unauthenticated attacker can use a server island v-for prop, including vforToArray and , to trigger unbounded SSR memory allocation until MAX_VFOR_LENGTH = 100000 and crash the Nuxt process. This issue is fixed in 3.21.10 and 4.5.1.","dates":{"published":"2026-08-05T20:58:50.965Z","modified":"2026-08-06T13:33:38.810Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.5,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Npm","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":10,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00908,"percentile":0.59491,"severity":"low","asOf":"2026-10-21T00:00:00.000Z","change":{"pp":0.5079999999999999,"baselineDate":"2026-09-21T00:00:00.000Z","baselineScore":0.004},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00908,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00908,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00908,"percentile":0.59491}],"last30":[{"date":"2026-09-21T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.004,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00658,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00908,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00908,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00908,"percentile":0.59491}]},"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-400","name":"Uncontrolled Resource Consumption","description":"The product does not properly control the allocation and maintenance of a limited resource.","type":"weakness","status":"Draft","abstraction":"Class","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/400.html"},{"id":"CWE-770","name":"Allocation of Resources Without Limits or Throttling","description":"The product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/770.html"},{"id":"CWE-789","name":"Memory Allocation with Excessive Size Value","description":"The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.","type":"weakness","status":"Draft","abstraction":"Variant","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/789.html"},{"id":"CWE-1284","name":"Improper Validation of Specified Quantity in Input","description":"The product receives input that is expected to specify a quantity (such as size or length), but it does not validate or incorrectly validates that the quantity has the required properties.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/1284.html"}],"affected":[{"vendor":"Npm","product":"nuxt","name":"nuxt","label":"nuxt","ecosystem":"Npm","cpePart":null,"purl":"pkg:npm/nuxt","purlType":"npm","versions":[{"text":"≥ 4.0.0, < 4.5.1","noFixRecorded":false,"fixedIn":null},{"text":"≥ 3.1.0, < 3.21.10","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 4.0.0, < 4.5.1 | ≥ 3.1.0, < 3.21.10","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, < 4.5.1","noFixRecorded":false,"fixedIn":null},{"text":"≥ 3.1.0, < 3.21.10","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 4.0.0, < 4.5.1 | ≥ 3.1.0, < 3.21.10","eol":null,"hubHref":"/vendor/nuxt/nuxt"}],"affectedCount":2,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/nuxt/nuxt/security/advisories/GHSA-hxcr-hm88-mpq6","label":"github.com/nuxt/nuxt/security/advisories/GHSA-hxcr-hm88-mpq6","hostname":"github.com","tags":["X Refsource CONFIRM","WEB"]},{"url":"https://github.com/nuxt/nuxt/commit/4e35ae9babd94be53246e31200232d48438bb34e","label":"github.com/nuxt/nuxt/commit/4e35ae9babd94be53246e31200232d48438bb34e","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"url":"https://github.com/nuxt/nuxt/commit/668cdfdfda41849ed11c1ee5e2067a11fc103b22","label":"github.com/nuxt/nuxt/commit/668cdfdfda41849ed11c1ee5e2067a11fc103b22","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"url":"https://github.com/nuxt/nuxt/releases/tag/v3.21.10","label":"github.com/nuxt/nuxt/releases/tag/v3.21.10","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"url":"https://github.com/nuxt/nuxt/releases/tag/v4.5.1","label":"github.com/nuxt/nuxt/releases/tag/v4.5.1","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"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-08-05T20:58:50.965Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-08-06T13:33:38.810Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":30,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-21T22:30:03.963Z","stale":false,"partial":false}}