Search
Find a vulnerability
Search criteria
2 vulnerabilities found for opennextjs-cloudflare by opennextjs
CVE-2026-100409 (GCVE-0-2026-100409)
Vulnerability from nvd – Published: 2026-10-15 16:57 – Updated: 2026-10-15 17:50
VLAI
EPSS
VEX
Title
OpenNext Cloudflare: Cache interception can bypass middleware protection for encoded paths
Summary
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.
Severity
7.5 (High)
SSVC
Exploitation: none
Automatable: yes
Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-15 17:50 UTC
CWE
Assigner
References
5 references
| URL | Tags |
|---|---|
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_CONFIRM |
| https://github.com/opennextjs/opennextjs-aws/pull/1199 | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-aws/pull/1200 | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_MISC |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| opennextjs | opennextjs-cloudflare |
Affected:
>= 0.3.0, < 1.20.2
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-100409",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-15T17:50:22.601978Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-15T17:50:33.255Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "opennextjs-cloudflare",
"vendor": "opennextjs",
"versions": [
{
"status": "affected",
"version": "\u003e= 0.3.0, \u003c 1.20.2"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "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."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-177",
"description": "CWE-177: Improper Handling of URL Encoding (Hex Encoding)",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-180",
"description": "CWE-180: Incorrect Behavior Order: Validate Before Canonicalize",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-15T16:57:50.999Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-2vc4-c4r6-p6v6",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-2vc4-c4r6-p6v6"
},
{
"name": "https://github.com/opennextjs/opennextjs-aws/pull/1199",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-aws/pull/1199"
},
{
"name": "https://github.com/opennextjs/opennextjs-aws/pull/1200",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-aws/pull/1200"
},
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/commit/38ea40b669be272ddf09a7df7e70c69d0b57404b",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/commit/38ea40b669be272ddf09a7df7e70c69d0b57404b"
},
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/releases/tag/@opennextjs/cloudflare@1.20.2",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/releases/tag/@opennextjs/cloudflare@1.20.2"
}
],
"source": {
"advisory": "GHSA-2vc4-c4r6-p6v6",
"discovery": "UNKNOWN"
},
"title": "OpenNext Cloudflare: Cache interception can bypass middleware protection for encoded paths"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-100409",
"datePublished": "2026-10-15T16:57:50.999Z",
"dateReserved": "2026-09-25T20:08:33.084Z",
"dateUpdated": "2026-10-15T17:50:33.255Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-100409 (GCVE-0-2026-100409)
Vulnerability from cvelistv5 – Published: 2026-10-15 16:57 – Updated: 2026-10-15 17:50
VLAI
EPSS
VEX
Title
OpenNext Cloudflare: Cache interception can bypass middleware protection for encoded paths
Summary
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.
Severity
7.5 (High)
SSVC
Exploitation: none
Automatable: yes
Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-15 17:50 UTC
CWE
Assigner
References
5 references
| URL | Tags |
|---|---|
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_CONFIRM |
| https://github.com/opennextjs/opennextjs-aws/pull/1199 | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-aws/pull/1200 | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_MISC |
| https://github.com/opennextjs/opennextjs-cloudfla… | x_refsource_MISC |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| opennextjs | opennextjs-cloudflare |
Affected:
>= 0.3.0, < 1.20.2
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-100409",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-15T17:50:22.601978Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-15T17:50:33.255Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "opennextjs-cloudflare",
"vendor": "opennextjs",
"versions": [
{
"status": "affected",
"version": "\u003e= 0.3.0, \u003c 1.20.2"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "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."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-177",
"description": "CWE-177: Improper Handling of URL Encoding (Hex Encoding)",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-180",
"description": "CWE-180: Incorrect Behavior Order: Validate Before Canonicalize",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-15T16:57:50.999Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-2vc4-c4r6-p6v6",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/security/advisories/GHSA-2vc4-c4r6-p6v6"
},
{
"name": "https://github.com/opennextjs/opennextjs-aws/pull/1199",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-aws/pull/1199"
},
{
"name": "https://github.com/opennextjs/opennextjs-aws/pull/1200",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-aws/pull/1200"
},
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/commit/38ea40b669be272ddf09a7df7e70c69d0b57404b",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/commit/38ea40b669be272ddf09a7df7e70c69d0b57404b"
},
{
"name": "https://github.com/opennextjs/opennextjs-cloudflare/releases/tag/@opennextjs/cloudflare@1.20.2",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/opennextjs/opennextjs-cloudflare/releases/tag/@opennextjs/cloudflare@1.20.2"
}
],
"source": {
"advisory": "GHSA-2vc4-c4r6-p6v6",
"discovery": "UNKNOWN"
},
"title": "OpenNext Cloudflare: Cache interception can bypass middleware protection for encoded paths"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-100409",
"datePublished": "2026-10-15T16:57:50.999Z",
"dateReserved": "2026-09-25T20:08:33.084Z",
"dateUpdated": "2026-10-15T17:50:33.255Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}