{"answers":{"affected":"2 open source packages ship an affected version, including next. It affects 1 product.","exploited":"There is no known exploitation of CVE-2021-39178 in the wild and no public exploit code.","fix":"Upgrade next to 11.1.1 or later.","what":"CVE-2021-39178 is a high-severity cross-site scripting vulnerability in Vercel Next.js, published on 30 Aug 2021. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2021-39178 and fix it if it is affected.\n\nWhat it is: CVE-2021-39178 is a high-severity cross-site scripting vulnerability in Vercel Next.js, published on 30 Aug 2021. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2021-39178 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- next (npm): affected from 10.0.0; fixed in 11.1.1\n- next (npm): affected from 10.0.0; fixed in 11.1.1\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2021-39178/ (Markdown: https://insights.sbomify.com/CVE-2021-39178/index.md)","id":"CVE-2021-39178","markdown":"https://insights.sbomify.com/CVE-2021-39178/index.md","name":"CVE-2021-39178","record":{"aliases":["GHSA-9gr3-7897-pp7m"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["code_execution"],"network_reachable":"yes","non_default_config":true,"product_category":"Next.js framework","requires_auth":"none","summary":"Attackers can execute arbitrary scripts via SVG images if specific image optimization configurations are enabled in Next.js applications.","user_interaction":"required","vuln_class":"xss"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"next.js","vendor":"vercel"}],"cvss":{"score":7.5,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-79","name":"Improper Neutralization of Input During Web Page Generation"}],"description":"Next.js is a React framework. Versions of Next.js between 10.0.0 and 11.0.0 contain a cross-site scripting vulnerability. In order for an instance to be affected by the vulnerability, the `next.config.js` file must have `images.domains` array assigned and the image host assigned in `images.domains` must allow user-provided SVG. If the `next.config.js` file has `images.loader` assigned to something other than default or the instance is deployed on Vercel, the instance is not affected by the vulnerability. The vulnerability is patched in Next.js version 11.1.1.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"XSS in Image Optimization API for Next.js versions between 10.0.0 and 11.1.0","id":"CVE-2021-39178","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":"vercel:next.js","products":["vercel:next.js"],"type":"xss","year":"2021"},"n_packages":2,"n_references":2,"next":{"headline":"SQL Injection in DHIS2 Tracker API","id":"CVE-2021-39179"},"packages":[{"ecosystem":"npm","fixed":["11.1.1"],"introduced":["10.0.0"],"last_affected":[],"package":"next","purl":null,"source":"GHSA-9gr3-7897-pp7m"},{"ecosystem":"npm","fixed":["11.1.1"],"introduced":["10.0.0"],"last_affected":[],"package":"next","purl":"pkg:npm/next","source":"GHSA-9gr3-7897-pp7m"}],"prev":{"headline":"User impersonation due to incorrect handling of the login JWT","id":"CVE-2021-39177"},"products":["next.js"],"published":"2021-08-30","related":[{"cvss_score":9.1,"headline":"Authorization Bypass in Next.js Middleware","id":"CVE-2025-29927","kev_date_added":null,"published":"2025-03-21"},{"cvss_score":8.6,"headline":"Next.js: Server-side request forgery in applications using WebSocket upgrades","id":"CVE-2026-44578","kev_date_added":null,"published":"2026-05-13"},{"cvss_score":8.3,"headline":"Next.js: Server-Side Request Forgery in Image Optimization","id":"CVE-2026-94483","kev_date_added":null,"published":"2026-10-02"},{"cvss_score":8.3,"headline":"Next.js: Middleware / Proxy bypass in App Router applications using Turbopack and single locale","id":"CVE-2026-64642","kev_date_added":null,"published":"2026-07-27"},{"cvss_score":8.3,"headline":"Next.js: Server-Side Request Forgery in rewrites via attacker-controlled destination hostname","id":"CVE-2026-64645","kev_date_added":null,"published":"2026-07-27"},{"cvss_score":8.3,"headline":"Next.js: Server-Side Request Forgery in Server Actions on Custom Servers","id":"CVE-2026-64649","kev_date_added":null,"published":"2026-07-27"},{"cvss_score":8.2,"headline":"Next.js: Denial of Service in App Router using Server Actions","id":"CVE-2026-64641","kev_date_added":null,"published":"2026-07-27"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-04","vendors":["vercel"]},"summary":"Attackers can execute arbitrary scripts via SVG images if specific image optimization configurations are enabled in Next.js applications.","url":"https://insights.sbomify.com/CVE-2021-39178/"}