Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. @opennextjs/cloudflare
  4. ›
  5. CVE-2026-3125

CVE-2026-3125: opennextjs-cloudflare has SSRF vulnerability via /cdn-cgi/ path normalization bypass

March 5, 2026

A Server-Side Request Forgery (SSRF) vulnerability was identified in the @opennextjs/cloudflare package, resulting from a path normalization bypass in the /cdn-cgi/image/ handler.

The @opennextjs/cloudflare worker template includes a /cdn-cgi/image/ handler intended for development use only. In production, Cloudflare’s edge intercepts /cdn-cgi/image/ requests before they reach the Worker. However, by substituting a backslash for a forward slash (/cdn-cgi\image/ instead of /cdn-cgi/image/), an attacker can bypass edge interception and have the request reach the Worker directly. The JavaScript URL class then normalizes the backslash to a forward slash, causing the request to match the handler and trigger an unvalidated fetch of arbitrary remote URLs.

For example: https://victim-site.com/cdn-cgi\image/aaaa/https://attacker.com

In this example, attacker-controlled content from attacker.com is served through the victim site’s domain (victim-site.com), violating the same-origin policy and potentially misleading users or other services.

Note: This bypass only works via HTTP clients that preserve backslashes in paths (e.g., curl –path-as-is). Browsers normalize backslashes to forward slashes before sending requests.

Additionally, Cloudflare Workers with Assets and Cloudflare Pages suffer from a similar vulnerability. Assets stored under /cdn-cgi/ paths are not publicly accessible under normal conditions. However, using the same backslash bypass (/cdn-cgi... instead of /cdn-cgi/…), these assets become publicly accessible. This could be used to retrieve private data. For example, Open Next projects store incremental cache data under /cdn-cgi/_next_cache, which could be exposed via this bypass.

References

  • github.com/advisories/GHSA-c7mq-gh6q-6q7c
  • github.com/advisories/GHSA-rvpw-p7vw-wj3m
  • github.com/opennextjs/opennextjs-cloudflare
  • github.com/opennextjs/opennextjs-cloudflare/commit/f5bd138fd3c77e02f2aa4b9c76d55681e59e98b4
  • github.com/opennextjs/opennextjs-cloudflare/pull/1147
  • github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-c7mq-gh6q-6q7c
  • nvd.nist.gov/vuln/detail/CVE-2026-3125
  • www.cve.org/cverecord?id=CVE-2025-6087
  • www.npmjs.com/package/@opennextjs/cloudflare/v/1.17.1

Code Behaviors & Features

Detect and mitigate CVE-2026-3125 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 1.17.1

Fixed versions

  • 1.17.1

Solution

Upgrade to version 1.17.1 or above.

Impact 9.3 CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N

Learn more about CVSS

Weakness

  • CWE-706: Use of Incorrectly-Resolved Name or Reference
  • CWE-918: Server-Side Request Forgery (SSRF)

Source file

npm/@opennextjs/cloudflare/CVE-2026-3125.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 25 Mar 2026 00:17:28 +0000.