{"id":"CVE-2026-64649","summary":"Next.js: Server-Side Request Forgery in Server Actions on Custom Servers","details":"Next.js is a React framework for building full-stack web applications. In versions 14.1.1 through 15.5.20 and 16.0.0 through 16.2.10, when a Server Action forwards or redirects a request, an attacker can cause the server to send that outbound request to a malicious host (Server-Side Request Forgery). This requires the attacker's request to control Host-associated headers. In some configurations, it's also possible to obtain internal values that weaken middleware/proxy authorization. Applications that use Server Actions are affected when the incoming host header is not fixed to a trusted value. This typically occurs on custom servers, or on deployments not behind a proxy that pins the host. Managed hosting pins the host upstream and is not affected; next start and standalone output do the same from version 14.2 onward. This issue has been fixed in versions 15.5.21 and 16.2.11.","aliases":["GHSA-89xv-2m56-2m9x"],"modified":"2026-08-12T03:51:11.595230939Z","published":"2026-07-27T19:27:58.865Z","related":["CGA-8wp2-jhwq-6w5h"],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-918"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64649.json","unresolved_ranges":[{"source":"AFFECTED_FIELD","extracted_events":[{"introduced":"\u003e= 16.0.0 \u003c 16.2.11"},{"last_affected":"\u003e= 16.0.0 \u003c 16.2.11"}]}]},"references":[{"type":"WEB","url":"https://github.com/vercel/next.js/releases/tag/v15.5.21"},{"type":"WEB","url":"https://github.com/vercel/next.js/releases/tag/v16.2.11"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64649.json"},{"type":"ADVISORY","url":"https://github.com/vercel/next.js/security/advisories/GHSA-89xv-2m56-2m9x"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-64649"},{"type":"FIX","url":"https://github.com/vercel/next.js/commit/b51206321854193208c0805ba42acc49287f942b"},{"type":"FIX","url":"https://github.com/vercel/next.js/commit/e3e5666ccead3a15162793d697af5e48b7cc0498"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/vercel/next.js","events":[{"introduced":"5f59ee5f197a09275da7a9fa876986f22f4b7711"},{"fixed":"e26f6ffaa710fc62ca0c8640db0e43b6663edf32"},{"introduced":"950609f96f694c5475d18cd2d72a0052ca04d4b9"},{"fixed":"9beca0821cf4606ae33466ed6f4fc75f2887a4da"},{"fixed":"b51206321854193208c0805ba42acc49287f942b"},{"fixed":"e3e5666ccead3a15162793d697af5e48b7cc0498"}],"database_specific":{"extracted_events":[{"introduced":"14.1.1"},{"fixed":"15.5.21"},{"introduced":"16.0.0"},{"fixed":"16.2.11"}],"source":["CPE_RANGE","REFERENCES"],"cpe":"cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:*"}}],"versions":["v16.2.10","v16.2.9","v16.2.8","v16.2.6","v16.2.5","v16.2.4","v16.2.3","v16.2.2","v16.2.1","v16.2.0","v16.2.0-canary.104","v16.2.0-canary.103","v16.2.0-canary.102","v16.2.0-canary.101","v16.2.0-canary.100","v16.2.0-canary.99","v16.2.0-canary.98","v16.2.0-canary.97","v16.2.0-canary.96","v16.2.0-canary.95","v16.2.0-canary.94","v16.2.0-canary.93","v16.2.0-canary.92","v16.2.0-canary.91","v16.2.0-canary.90","v16.2.0-canary.89","v16.2.0-canary.88","v16.2.0-canary.87","v16.2.0-canary.86","v16.2.0-canary.85","v16.2.0-canary.84","v16.2.0-canary.83","v16.2.0-canary.82","v16.2.0-canary.81","v16.2.0-canary.78","v16.2.0-canary.80","v16.2.0-canary.79","v16.2.0-canary.77","v16.2.0-canary.76","v16.2.0-canary.75","v16.2.0-canary.74","v16.2.0-canary.71","v16.2.0-canary.73","v16.2.0-canary.69","v16.2.0-canary.72","v16.2.0-canary.70","v16.2.0-canary.68","v16.2.0-canary.67","v16.2.0-canary.66","v16.2.0-canary.65","v16.2.0-canary.64","v16.2.0-canary.63","v16.2.0-canary.62","v16.2.0-canary.61","v16.2.0-canary.60","v16.2.0-canary.59","v16.2.0-canary.58","v16.2.0-canary.57","v16.2.0-canary.56","v16.2.0-canary.55","v16.2.0-canary.54","v16.2.0-canary.53","v16.2.0-canary.52","v16.2.0-canary.51","v16.2.0-canary.50","v16.2.0-canary.49","v16.2.0-canary.48","v16.2.0-canary.47","v16.2.0-canary.46","v16.2.0-canary.45","v16.2.0-canary.44","v16.2.0-canary.43","v16.2.0-canary.42","v16.2.0-canary.41","v16.2.0-canary.40","v16.2.0-canary.39","v16.2.0-canary.38","v16.2.0-canary.37","v16.2.0-canary.36","v16.2.0-canary.35","v16.2.0-canary.34","v16.2.0-canary.33","v16.2.0-canary.32","v16.2.0-canary.31","v16.2.0-canary.30","v16.2.0-canary.29","v16.2.0-canary.28","v16.2.0-canary.27","v16.2.0-canary.26","v16.2.0-canary.25","v16.2.0-canary.24","v16.2.0-canary.23","v16.2.0-canary.22","v16.2.0-canary.21","v16.2.0-canary.20","v16.2.0-canary.19","v16.2.0-canary.18","v16.2.0-canary.17","v16.2.0-canary.16","v16.2.0-canary.15","v16.2.0-canary.14","v16.2.0-canary.11","v16.2.0-canary.13","v16.2.0-canary.12","v16.2.0-canary.10","v16.2.0-canary.9","v16.2.0-canary.8","v16.2.0-canary.7","v16.2.0-canary.6","v16.2.0-canary.5","v16.2.0-canary.4","v16.2.0-canary.3","v16.2.0-canary.2","v16.2.0-canary.1","v16.2.0-canary.0","v16.1.1-canary.36","v16.1.1-canary.35","v16.1.1-canary.34","v16.1.1-canary.33","v16.1.1-canary.32","v16.1.1-canary.30","v16.1.1-canary.31","v16.1.1-canary.29","v16.1.1-canary.28","v16.1.1-canary.27","v16.1.1-canary.26","v16.1.1-canary.25","v16.1.1-canary.24","v16.1.1-canary.23","v16.1.1-canary.22","v16.1.1-canary.21","v16.1.1-canary.20","v16.1.1-canary.19","v16.1.1-canary.18","v16.1.1-canary.17","v16.1.1-canary.16","v16.1.1-canary.15","v16.1.1-canary.14","v16.1.1-canary.13","v16.1.1-canary.12","v16.1.1-canary.11","v16.1.1-canary.10","v16.1.1-canary.9","v16.1.1-canary.8","v16.1.1-canary.7","v16.1.1-canary.6","v16.1.1-canary.5","v16.1.1-canary.4","v16.1.0","v16.1.1-canary.3","v16.1.1-canary.2","v16.1.1-canary.1","v16.1.1-canary.0","v16.1.0-canary.34","v16.1.0-canary.33","v16.1.0-canary.32","v16.1.0-canary.31","v16.1.0-canary.30","v16.1.0-canary.29","v16.1.0-canary.28","v16.1.0-canary.27","v16.1.0-canary.26","v16.1.0-canary.25","v16.1.0-canary.24","v16.1.0-canary.23","v16.1.0-canary.22","v16.1.0-canary.21","v16.1.0-canary.20","v16.1.0-canary.19","v16.1.0-canary.18","v16.1.0-canary.17","v16.1.0-canary.16","v16.1.0-canary.15","v16.1.0-canary.14","v16.1.0-canary.13","v16.1.0-canary.11","v16.1.0-canary.12","v16.1.0-canary.10","v16.1.0-canary.9","v16.1.0-canary.8","v16.1.0-canary.7","v16.1.0-canary.4","v16.1.0-canary.6","v16.1.0-canary.5","v16.1.0-canary.3","v16.1.0-canary.2","v16.1.0-canary.1","v16.1.0-canary.0","v16.0.2-canary.34","v16.0.2-canary.33","v16.0.2-canary.32","v16.0.2-canary.31","v16.0.2-canary.30","v16.0.2-canary.29","v16.0.2-canary.28","v16.0.2-canary.27","v16.0.2-canary.26","v16.0.2-canary.25","v16.0.2-canary.24","v16.0.2-canary.23","v16.0.2-canary.22","v16.0.2-canary.21","v16.0.2-canary.20","v16.0.2-canary.19","v16.0.2-canary.18","v16.0.2-canary.17","v16.0.2-canary.16","v16.0.1","v16.0.2-canary.15","v16.0.2-canary.14","v16.0.2-canary.13","v16.0.2-canary.12","v16.0.2-canary.11","v16.0.2-canary.10","v16.0.2-canary.9","v16.0.2-canary.8","v16.0.2-canary.7","v16.0.2-canary.6","v16.0.2-canary.5","v16.0.2-canary.4","v16.0.2-canary.3","v16.0.2-canary.2","v16.0.2-canary.1","v16.0.2-canary.0","v16.0.1-canary.6","v16.0.1-canary.5","v16.0.1-canary.4","v16.0.1-canary.3","v16.0.1-canary.2","v16.0.1-canary.1","v16.0.1-canary.0","v16.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64649.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N"}]}