Search
Find a vulnerability
Search criteria
2 vulnerabilities by ionic-team
CVE-2026-103922 (GCVE-0-2026-103922)
Vulnerability from nvd – Published: 2026-10-01 17:27 – Updated: 2026-10-01 18:01
VLAI
EPSS
VEX
Title
Capacitor Android and iOS: remote content can be loaded at the app origin via the internal HTTP proxy path
Summary
Capacitor is a cross-platform native runtime for web applications. From 6.0.0 until 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1, the Android and iOS WebView navigation guard validates a target URL's host and scheme but not its path, allowing a victim who activates an untrusted link to navigate a frame to /_capacitor_http_interceptor_. The native proxy can fetch an attacker-selected URL and return the response as a document at the application's own origin, allowing script in that response to access same-origin storage, cookies, and registered Capacitor plugin capabilities. Applications remain affected when CapacitorHttp is disabled because affected releases serve the proxy path regardless of that setting. This issue is fixed in versions 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1.
Severity
9.3 (Critical)
SSVC
Exploitation: none
Automatable: no
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-01 18:01 UTC
CWE
Assigner
References
8 references
| URL | Tags |
|---|---|
| https://github.com/ionic-team/capacitor/security/… | x_refsource_CONFIRM |
| https://github.com/ionic-team/capacitor/commit/43… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/80… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/85… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/af… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/d5… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/ee… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/releases/… | x_refsource_MISC |
Impacted products
5 products
| Vendor | Product | Version | |
|---|---|---|---|
| ionic-team | capacitor |
Affected:
>= 6.0.0, < 6.2.2
Affected: >= 7.0.0, < 7.6.9 Affected: >= 8.0.0, < 8.3.5 Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.5.0, < 8.5.1 |
|
| @capacitor | android |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| @capacitor | ios |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| com.capacitorjs | core |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| swift | github.com/ionic-team/capacitor-swift-pm |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-103922",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-01T18:01:35.925716Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T18:01:54.381Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "capacitor",
"vendor": "ionic-team",
"versions": [
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
}
]
},
{
"product": "android",
"vendor": "@capacitor",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "ios",
"vendor": "@capacitor",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "core",
"vendor": "com.capacitorjs",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "github.com/ionic-team/capacitor-swift-pm",
"vendor": "swift",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Capacitor is a cross-platform native runtime for web applications. From 6.0.0 until 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1, the Android and iOS WebView navigation guard validates a target URL\u0027s host and scheme but not its path, allowing a victim who activates an untrusted link to navigate a frame to /_capacitor_http_interceptor_. The native proxy can fetch an attacker-selected URL and return the response as a document at the application\u0027s own origin, allowing script in that response to access same-origin storage, cookies, and registered Capacitor plugin capabilities. Applications remain affected when CapacitorHttp is disabled because affected releases serve the proxy path regardless of that setting. This issue is fixed in versions 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "CHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-346",
"description": "CWE-346: Origin Validation Error",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-441",
"description": "CWE-441: Unintended Proxy or Intermediary (\u0027Confused Deputy\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T17:27:05.758Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/ionic-team/capacitor/security/advisories/GHSA-rvm3-566m-v7fv",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/ionic-team/capacitor/security/advisories/GHSA-rvm3-566m-v7fv"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/430356a91e1419fc66862dc09835081aa501677e",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/430356a91e1419fc66862dc09835081aa501677e"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/80b6c5e81d062e1e158914040f49e044d95b7ccb",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/80b6c5e81d062e1e158914040f49e044d95b7ccb"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/85ccc44151fdd5ae5e0d806d875766ef4b84ad5d",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/85ccc44151fdd5ae5e0d806d875766ef4b84ad5d"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/af9a287fef45f0ac68ce640cb42fed2d06b0f1b4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/af9a287fef45f0ac68ce640cb42fed2d06b0f1b4"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/d5e3170ba0ff155fc542b7e6d16cff5201406540",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/d5e3170ba0ff155fc542b7e6d16cff5201406540"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/ee586ae680887ba99d066616f976db149542d922",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/ee586ae680887ba99d066616f976db149542d922"
},
{
"name": "https://github.com/ionic-team/capacitor/releases/tag/8.5.1",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/releases/tag/8.5.1"
}
],
"source": {
"advisory": "GHSA-rvm3-566m-v7fv",
"discovery": "UNKNOWN"
},
"title": "Capacitor Android and iOS: remote content can be loaded at the app origin via the internal HTTP proxy path"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-103922",
"datePublished": "2026-10-01T17:27:05.758Z",
"dateReserved": "2026-10-01T14:20:19.154Z",
"dateUpdated": "2026-10-01T18:01:54.381Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-103922 (GCVE-0-2026-103922)
Vulnerability from cvelistv5 – Published: 2026-10-01 17:27 – Updated: 2026-10-01 18:01
VLAI
EPSS
VEX
Title
Capacitor Android and iOS: remote content can be loaded at the app origin via the internal HTTP proxy path
Summary
Capacitor is a cross-platform native runtime for web applications. From 6.0.0 until 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1, the Android and iOS WebView navigation guard validates a target URL's host and scheme but not its path, allowing a victim who activates an untrusted link to navigate a frame to /_capacitor_http_interceptor_. The native proxy can fetch an attacker-selected URL and return the response as a document at the application's own origin, allowing script in that response to access same-origin storage, cookies, and registered Capacitor plugin capabilities. Applications remain affected when CapacitorHttp is disabled because affected releases serve the proxy path regardless of that setting. This issue is fixed in versions 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1.
Severity
9.3 (Critical)
SSVC
Exploitation: none
Automatable: no
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-01 18:01 UTC
CWE
Assigner
References
8 references
| URL | Tags |
|---|---|
| https://github.com/ionic-team/capacitor/security/… | x_refsource_CONFIRM |
| https://github.com/ionic-team/capacitor/commit/43… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/80… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/85… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/af… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/d5… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/commit/ee… | x_refsource_MISC |
| https://github.com/ionic-team/capacitor/releases/… | x_refsource_MISC |
Impacted products
5 products
| Vendor | Product | Version | |
|---|---|---|---|
| ionic-team | capacitor |
Affected:
>= 6.0.0, < 6.2.2
Affected: >= 7.0.0, < 7.6.9 Affected: >= 8.0.0, < 8.3.5 Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.5.0, < 8.5.1 |
|
| @capacitor | android |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| @capacitor | ios |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| com.capacitorjs | core |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
|
| swift | github.com/ionic-team/capacitor-swift-pm |
Affected:
>= 8.5.0, < 8.5.1
Affected: >= 8.3.5, < 8.4.3 Affected: >= 8.0.0, < 8.3.5 Affected: >= 7.0.0, < 7.6.9 Affected: >= 6.0.0, < 6.2.2 |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-103922",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-01T18:01:35.925716Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T18:01:54.381Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "capacitor",
"vendor": "ionic-team",
"versions": [
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
}
]
},
{
"product": "android",
"vendor": "@capacitor",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "ios",
"vendor": "@capacitor",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "core",
"vendor": "com.capacitorjs",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
},
{
"product": "github.com/ionic-team/capacitor-swift-pm",
"vendor": "swift",
"versions": [
{
"status": "affected",
"version": "\u003e= 8.5.0, \u003c 8.5.1"
},
{
"status": "affected",
"version": "\u003e= 8.3.5, \u003c 8.4.3"
},
{
"status": "affected",
"version": "\u003e= 8.0.0, \u003c 8.3.5"
},
{
"status": "affected",
"version": "\u003e= 7.0.0, \u003c 7.6.9"
},
{
"status": "affected",
"version": "\u003e= 6.0.0, \u003c 6.2.2"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Capacitor is a cross-platform native runtime for web applications. From 6.0.0 until 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1, the Android and iOS WebView navigation guard validates a target URL\u0027s host and scheme but not its path, allowing a victim who activates an untrusted link to navigate a frame to /_capacitor_http_interceptor_. The native proxy can fetch an attacker-selected URL and return the response as a document at the application\u0027s own origin, allowing script in that response to access same-origin storage, cookies, and registered Capacitor plugin capabilities. Applications remain affected when CapacitorHttp is disabled because affected releases serve the proxy path regardless of that setting. This issue is fixed in versions 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "CHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-346",
"description": "CWE-346: Origin Validation Error",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-441",
"description": "CWE-441: Unintended Proxy or Intermediary (\u0027Confused Deputy\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-01T17:27:05.758Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/ionic-team/capacitor/security/advisories/GHSA-rvm3-566m-v7fv",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/ionic-team/capacitor/security/advisories/GHSA-rvm3-566m-v7fv"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/430356a91e1419fc66862dc09835081aa501677e",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/430356a91e1419fc66862dc09835081aa501677e"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/80b6c5e81d062e1e158914040f49e044d95b7ccb",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/80b6c5e81d062e1e158914040f49e044d95b7ccb"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/85ccc44151fdd5ae5e0d806d875766ef4b84ad5d",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/85ccc44151fdd5ae5e0d806d875766ef4b84ad5d"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/af9a287fef45f0ac68ce640cb42fed2d06b0f1b4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/af9a287fef45f0ac68ce640cb42fed2d06b0f1b4"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/d5e3170ba0ff155fc542b7e6d16cff5201406540",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/d5e3170ba0ff155fc542b7e6d16cff5201406540"
},
{
"name": "https://github.com/ionic-team/capacitor/commit/ee586ae680887ba99d066616f976db149542d922",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/commit/ee586ae680887ba99d066616f976db149542d922"
},
{
"name": "https://github.com/ionic-team/capacitor/releases/tag/8.5.1",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/ionic-team/capacitor/releases/tag/8.5.1"
}
],
"source": {
"advisory": "GHSA-rvm3-566m-v7fv",
"discovery": "UNKNOWN"
},
"title": "Capacitor Android and iOS: remote content can be loaded at the app origin via the internal HTTP proxy path"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-103922",
"datePublished": "2026-10-01T17:27:05.758Z",
"dateReserved": "2026-10-01T14:20:19.154Z",
"dateUpdated": "2026-10-01T18:01:54.381Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}