GHSA-vcvr-r3jv-pc5j
Next.js: Remote Code Execution in next/og ImageResponse
- Risk score
- 67/100
- CVSS
- 9.5 v4.0
- Published
- 30 Sep 2026
Open in the live forecast Today's forecast
What to know
- What it is
- The Node.js ImageResponse implementation from next/og is affected by an upstream vulnerability. This can lead to remote code execution. Affected applications pass attacker-controlled values into SVG content, attributes, or styles during image generation: tsx import { ImageResponse } from 'next/og' export async functio…
- Affected
- next (npm) >= 16.2.0, < 16.3.6
- Fix
- Upgrade next to 16.3.6 or later.
- Exploitation
- No known exploitation
Why it is Amber
- CVSS 9.5 critical
- Remotely exploitable without logging in
- On your watchlist: npm
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| next | npm | >= 16.2.0, < 16.3.6 | 16.3.6 |
References
- https://github.com/advisories/GHSA-vcvr-r3jv-pc5j
- https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j
- https://github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp
- https://github.com/vercel/next.js/commit/868fad38690d72088868f299fa2bef339b26838e
- https://github.com/vercel/next.js/releases/tag/v16.3.6
- https://github.com/advisories/GHSA-vcvr-r3jv-pc5j
Original description
## Impact The Node.js `ImageResponse` implementation from `next/og` is affected by an upstream vulnerability. This can lead to remote code execution. Affected applications pass attacker-controlled values into SVG content, attributes, or styles during image generation: ```tsx import { ImageResponse } from 'next/og' export async function GET(request: Request) { const value = new URL(request.url).searchParams.get('value') ?? '' return new ImageResponse( <svg width="1200" height="630"> <title>{value}</title> </svg> ) } ``` Applications using the Edge `ImageResponse` implementation, or applications that do not pass attacker-controlled values into SVG content, attributes, or styles, are not affected. ## Workaround If upgrading is not immediately possible, do not pass attacker-controlled values into SVG content, attributes, or styles rendered by the Node.js `ImageResponse` implementation from `next/og`.
Last activity 30 Sep 2026. Patch Forecast updates every hour.