Read the docs

Cache interception in OpenNext Cloudflare bypasses middleware checks

Priority LOW 39CWE-177Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
High · None · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.

Summary

The @opennextjs/cloudflare npm package is affected from 0.3.0 before 1.20.2. It handles encoded pathnames inconsistently between middleware matching and cache lookup (CWE-180). An unauthenticated remote attacker can request a percent-encoded pathname that bypasses authorization middleware and returns cached content of a protected route when cache interception is enabled.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Description from the CNA

OpenNext Cloudflare is an open Next.js adapter for Cloudflare. From 0.3.0 until 1.20.2, applications that enable enableCacheInterception, rely on middleware for access control, and have a matching cached protected route process encoded pathnames inconsistently between middleware matching and cache lookup. An unauthenticated attacker can use a percent-encoded pathname that does not match authorization middleware but decodes to the cache key of a protected route, causing cached content to be returned without authorization. Malformed encodings can also be partially decoded, allowing cache lookup to continue with a pathname that middleware did not evaluate consistently. This issue is fixed in version 1.20.2.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00493 42nd percentileScored 2026-11-07
Fix Fixed opennextjs-cloudflare (opennextjs): 1.20.2@opennextjs/cloudflare (npm): 1.20.2

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
opennextjsopennextjs-cloudflare0.3.0 to before 1.20.21.20.2Patch availableCNA
—@opennextjs/cloudflare (npm)0.3.0 to before 1.20.21.20.2Patch availableGHSA-2vc4-c4r6-p6v6
  • opennextjs-cloudflare Vendoropennextjs Affected 0.3.0 to before 1.20.2 Fixed in 1.20.2 Patch available CNA
  • @opennextjs/cloudflare (npm) Vendor— Affected 0.3.0 to before 1.20.2 Fixed in 1.20.2 Patch available GHSA-2vc4-c4r6-p6v6

Remediation

Upgrade @opennextjs/cloudflare to version 1.20.2. The sources list no fixed version for opennextjs-cloudflare.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

  • Fix · CNA opennextjs-cloudflare (opennextjs) Fixed in 1.20.2
  • Fix · GHSA-2vc4-c4r6-p6v6 @opennextjs/cloudflare (npm) Fixed in 1.20.2 Advisory →

Timeline

  1. 2026-10-16 Threatist record created from CVE-2026-100409
  2. 2026-10-16 Alias added: GHSA-2vc4-c4r6-p6v6

References

  • TI-2025-05497 SSRF vulnerability in opennextjs-cloudflare via /_next/image endpoint CVSS 4.0HIGH 7.8
  • TI-2026-02700 SSRF vulnerability in opennextjs-cloudflare via /cdn-cgi/ path normalization bypass CVSS 4.0HIGH 7.7

Sources