CVE-2026-96454
📛 CVE Title
Pake grants unrestricted IPC access to every HTTPS origin loaded in generated applications
Description
Pake turns a website into a desktop application built on Tauri. Every application it generates inherits two settings from the upstream template, and together they hand native functionality to untrusted web content. The first is in src-tauri/capabilities/default.json, which grants IPC access with "remote": { "urls": ["https://*.*"] }. That wildcard tells Tauri to accept IPC from any HTTPS origin, not just the site the application was built to wrap. The second is "withGlobalTauri": true in src-tauri/tauri.conf.json, which puts window.__TAURI__.core.invoke() in reach of ordinary page JavaScript. Tauri's access control list only checks plugin commands, the ones prefixed with plugin:. Commands the application registers itself through generate_handler!, known as app commands, are never checked against the ACL. So once an origin holds IPC access, it can call every app command with nothing else standing in the way. Pake registers download_file as an app command, and it does not appear in the permissions list because it does not need to. The practical effect is that any script running on any HTTPS page inside a Pake application can invoke the application's native commands. That includes third-party script the wrapped site loads on its own, such as analytics, advertising, or a compromised CDN. Anyone distributing their own Pake application gets the same access without asking for it. Chained with the path traversal in download_file that is tracked separately as CVE-2026-82635, this reaches arbitrary file write and persistent code execution.
Overview
- State
- PUBLISHED
- Assigner (CNA)
- JFROG
- CVSS severity
- HIGH
- CVSS score
- 8.2 / 10
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:H/A:N- Effective score
- 8.2 / 10 HIGH source: CNA overview
- CWE(s)
-
CWE-862,CWE-923 - Reserved
- 2026-09-23
- Published
- 2026-09-23 09:56 UTC
- Last updated
- 2026-09-23 14:01 UTC
- Source
- https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/96xxx/CVE-2026-96454.json
- Linked Threat
- CVE-2026-96454 — Pake grants unrestricted IPC access to every HTTPS origin loaded in generated applications
NVD triage scoring NVD CVE 2.0
Layer NVD adds on top of the CNA's CVE record — published / last-modified timestamps, exploitability / impact subscores, and the FIRST.org EPSS probability that this CVE will be exploited in the wild in the next 30 days.
- NVD published
- 2026-09-23 10:17:09 UTC
- NVD last modified
- 2026-09-23 19:42:02 UTC
- NVD CVSS v3.1
- 8.2 / 10 HIGH source: reefs@jfrog.com
- NVD CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:H/A:N- Exploitability subscore
- 2.8 / 10
- Impact subscore
- 4.7 / 10
- EPSS score
- 0.0048 (probability of exploitation in next 30 days)
- EPSS percentile
- 40.84% vs all CVEs — higher = more likely to be exploited, as of 2026-09-23
NVD / KEV / EPSS data refreshed 2026-09-24 04:26 UTC. Re-run the 🛰 Backfill from NVD button above to refresh.
European Union Vulnerability Database ENISA EUVD
ENISA's official EU repository for curated vulnerability intelligence. Carries a separate identifier (EUVD-YYYY-NNNN) and frequently exposes an earlier-published description + CVSS than NVD does.
- EUVD ID
-
EUVD-2026-85184 - Assigner
- JFROG
- Published
- Sep 23, 2026, 9:56:32 AM
- Updated
- Sep 23, 2026, 2:01:32 PM
- EUVD base score (CVSS 3.1)
-
8.2 / 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:H/A:N - EUVD-reported EPSS
- 0.4800
- Vendors
- tw93
- Products
-
Pake (0 ≤3.17.0)
- Aliases
-
GHSA-jwcr-mx7v-qwwq
ENISA description: Pake turns a website into a desktop application built on Tauri. Every application it generates inherits two settings from the upstream template, and together they hand native functionality to untrusted web content. The first is in src-tauri/capabilities/default.json, which grants IPC access with "remote": { "urls": ["https://*.*"] }. That wildcard tells Tauri to accept IPC from any HTTPS origin, not just the site the application was built to wrap. The second is "withGlobalTauri": true in src-tauri/tauri.conf.json, which puts window.__TAURI__.core.invoke() in reach of ordinary page JavaScript. Tauri's access control list only checks plugin commands, the ones prefixed with plugin:. Commands the application registers itself through generate_handler!, known as app commands, are never checked against the ACL. So once an origin holds IPC access, it can call every app command with nothing else standing in the way. Pake registers download_file as an app command, and it does not appear in the permissions list because it does not need to. The practical effect is that any script running on any HTTPS page inside a Pake application can invoke the application's native commands. That includes third-party script the wrapped site loads on its own, such as analytics, advertising, or a compromised CDN. Anyone distributing their own Pake application gets the same access without asking for it. Chained with the path traversal in download_file that is tracked separately as CVE-2026-82635, this reaches arbitrary file write and persistent code execution.
Affected products (1)
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| tw93 | Pake |
0 (affected)
|
macOS, Windows, Linux |
Vendor references (5)
References embedded in the original CVE record by the assigning CNA.
- Pake product
- Pake capabilities/default.json - wildcard remote.urls grant product
- Pake tauri.conf.json - withGlobalTauri enabled product
- Tauri v2 capabilities and remote origin access technical-description
- Pake V3.17.0 - latest release, still affected release-notes
Web references (0)
DuckDuckGo results ranked by threat-intel / vendor advisory domains. Generated by the 🔎 Find references (web) button above — same flow as the Remediations search.
No web references attached yet.
NVD-tagged references (5)
Reference list NVD curates from the CNA record, vendor advisories, and third-party reports. The tag chips below are NVD's analyst-assigned categories.
- https://github.com/tw93/Pake reefs@jfrog.com
- https://github.com/tw93/Pake/blob/main/src-tauri/capabilities/default.json reefs@jfrog.com
- https://github.com/tw93/Pake/blob/main/src-tauri/tauri.conf.json reefs@jfrog.com
- https://github.com/tw93/Pake/releases/tag/V3.17.0 reefs@jfrog.com
- https://v2.tauri.app/security/capabilities/ reefs@jfrog.com
Remediations (10)
Remediations are stored against the linked Threat row; the list below is deduplicated across both pages.
-
web:blog.qualys.com
What can I do before Microsoft releases a patch ? Qualys TruRisk™ Eliminate provides a recommended mitigation for CVE - 2026 -69414 that can be applied to affected systems while Microsoft works on a fix . Assets can then be reassessed in Qualys VMDR to verify the remediation outcome.
2026-09-24 11:08 UTC -
web:cybersecuritynews.com
The U.S. Cybersecurity and Infrastructure Security Agency (CISA) has issued Binding Operational Directive (BOD) 26-04, titled "Prioritizing Security Updates Based on Risk," compelling all Federal Civilian Executive Branch (FCEB) agencies to remediate the most dangerous known exploited vulnerabilities within just three calendar days.
2026-09-24 11:08 UTC -
web:sec.cloudapps.cisco.com
On September 16, 2026 , the Cisco Product Security Incident Response Team (PSIRT) published the advisories that are listed in the following tables. To remediate these vulnerabilities, Cisco strongly recommends that customers upgrade to the fixed software that is indicated in the advisories. For more information about changes in Cisco PSIRT vulnerability disclosure, see Strengthening the ...
2026-09-24 11:08 UTC -
web:senserva.com
Every Microsoft security patch (KB) and the CVEs it fixes, with severity, CVSS, and CISA KEV status. Cross-linked to the CVE reference.
2026-09-24 11:08 UTC -
web:vulmon.com
Vulnerability Summary Any script running on an HTTPS page within a Pake-generated desktop application can invoke the application's native commands, enabling arbitrary file write and persistent code execution. This vulnerability arises from Pake applications inheriting broad IPC access from the upstream Tauri template, allowing untrusted web content to call app commands that are not checked ...
2026-09-24 11:08 UTC -
web:www.cisecurity.org
Microsoft reports CVE - 2026 -56164 has been exploited in the wild. CVE - 2026 -56164 may allow remote cyber threat actors to gain unauthorized access to on-premises SharePoint Server instances. Microsoft noted that integrating its Antimalware Scan Interface (AMSI) can provide temporary mitigation by actively scanning and detecting malicious POST requests associated with exploitation attempts. The ...
2026-09-24 11:08 UTC -
web:www.malwarebytes.com
Microsoft's September 2026 Patch Tuesday sets a new record number of vulnerabilities and includes two actively exploited zero-days
2026-09-24 11:08 UTC -
web:www.oracle.com
This Critical Patch Update contains 1448 new security patches across the product families listed below. Please note that a My Oracle Support (MOS) note summarizing the content of this Critical Patch Update and other Oracle Software Security Assurance activities is located at July 2026 Critical Patch Update: Executive Summary and Analysis.
2026-09-24 11:08 UTC -
web:www.techtimes.com
July 2026 Patch Tuesday permanently removes the Kerberos RC4 rollback registry key on July 14, leaving service accounts with RC4-only material unable to authenticate. Administrators must also ...
2026-09-24 11:08 UTC -
web:www.tenable.com
Pake turns a website into a desktop application built on Tauri. Every application it generates inherits two settings from the upstream template, and together they ...
2026-09-24 11:08 UTC
AI Forensic Analysis
Only Available for Registered Users. Sign in to view.
Raw JSON
The full cvelistV5 record. Download as CVE-2026-96454.json.
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-96454",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-23T14:01:27.089525Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T14:01:32.711Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"collectionURL": "https://registry.npmjs.org",
"defaultStatus": "affected",
"packageName": "pake-cli",
"platforms": [
"macOS",
"Windows",
"Linux"
],
"product": "Pake",
"programFiles": [
"src-tauri/capabilities/default.json",
"src-tauri/tauri.conf.json"
],
"repo": "https://github.com/tw93/Pake",
"vendor": "tw93",
"versions": [
{
"lessThanOrEqual": "3.17.0",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Yuval Moravchick | JFrog"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "<p>Pake turns a website into a desktop application built on Tauri. Every application it generates inherits two settings from the upstream template, and together they hand native functionality to untrusted web content.</p><p>The first is in src-tauri/capabilities/default.json, which grants IPC access with \"remote\": { \"urls\": [\"https://*.*\"] }. That wildcard tells Tauri to accept IPC from any HTTPS origin, not just the site the application was built to wrap. The second is \"withGlobalTauri\": true in src-tauri/tauri.conf.json, which puts window.__TAURI__.core.invoke() in reach of ordinary page JavaScript.</p><p>Tauri's access control list only checks plugin commands, the ones prefixed with plugin:. Commands the application registers itself through generate_handler!, known as app commands, are never checked against the ACL. So once an origin holds IPC access, it can call every app command with nothing else standing in the way. Pake registers download_file as an app command, and it does not appear in the permissions list because it does not need to.</p><p>The practical effect is that any script running on any HTTPS page inside a Pake application can invoke the application's native commands. That includes third-party script the wrapped site loads on its own, such as analytics, advertising, or a compromised CDN. Anyone distributing their own Pake application gets the same access without asking for it. Chained with the path traversal in download_file that is tracked separately as CVE-2026-82635, this reaches arbitrary file write and persistent code execution.</p>"
}
],
"value": "Pake turns a website into a desktop application built on Tauri. Every application it generates inherits two settings from the upstream template, and together they hand native functionality to untrusted web content.\n\n\n\nThe first is in src-tauri/capabilities/default.json, which grants IPC access with \"remote\": { \"urls\": [\"https://*.*\"] }. That wildcard tells Tauri to accept IPC from any HTTPS origin, not just the site the application was built to wrap. The second is \"withGlobalTauri\": true in src-tauri/tauri.conf.json, which puts window.__TAURI__.core.invoke() in reach of ordinary page JavaScript.\n\n\n\nTauri's access control list only checks plugin commands, the ones prefixed with plugin:. Commands the application registers itself through generate_handler!, known as app commands, are never checked against the ACL. So once an origin holds IPC access, it can call every app command with nothing else standing in the way. Pake registers download_file as an app command, and it does not appear in the permissions list because it does not need to.\n\n\n\nThe practical effect is that any script running on any HTTPS page inside a Pake application can invoke the application's native commands. That includes third-party script the wrapped site loads on its own, such as analytics, advertising, or a compromised CDN. Anyone distributing their own Pake application gets the same access without asking for it. Chained with the path traversal in download_file that is tracked separately as CVE-2026-82635, this reaches arbitrary file write and persistent code execution."
}
],
"exploits": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "<p>JFrog holds a private proof of concept. Reproduction is deterministic and affects every application Pake generates. Full exploit details are not included in this record.</p>"
}
],
"value": "JFrog holds a private proof of concept. Reproduction is deterministic and affects every application Pake generates. Full exploit details are not included in this record."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 8.2,
"baseSeverity": "HIGH",
"confidentialityImpact": "LOW",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "CHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:H/A:N",
"version": "3.1"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-862",
"description": "CWE-862 Missing Authorization",
"lang": "en",
"type": "CWE"
}
]
},
{
"descriptions": [
{
"cweId": "CWE-923",
"description": "CWE-923 Improper Restriction of Communication Channel to Intended Endpoints",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T09:56:32.668Z",
"orgId": "48a46f29-ae42-4e1d-90dd-c1676c1e5e6d",
"shortName": "JFROG"
},
"references": [
{
"name": "Pake",
"tags": [
"product"
],
"url": "https://github.com/tw93/Pake"
},
{
"name": "Pake capabilities/default.json - wildcard remote.urls grant",
"tags": [
"product"
],
"url": "https://github.com/tw93/Pake/blob/main/src-tauri/capabilities/default.json"
},
{
"name": "Pake tauri.conf.json - withGlobalTauri enabled",
"tags": [
"product"
],
"url": "https://github.com/tw93/Pake/blob/main/src-tauri/tauri.conf.json"
},
{
"name": "Tauri v2 capabilities and remote origin access",
"tags": [
"technical-description"
],
"url": "https://v2.tauri.app/security/capabilities/"
},
{
"name": "Pake V3.17.0 - latest release, still affected",
"tags": [
"release-notes"
],
"url": "https://github.com/tw93/Pake/releases/tag/V3.17.0"
}
],
"source": {
"discovery": "EXTERNAL"
},
"title": "Pake grants unrestricted IPC access to every HTTPS origin loaded in generated applications",
"x_generator": {
"engine": "Vulnogram 1.0.4"
}
}
},
"cveMetadata": {
"assignerOrgId": "48a46f29-ae42-4e1d-90dd-c1676c1e5e6d",
"assignerShortName": "JFROG",
"cveId": "CVE-2026-96454",
"datePublished": "2026-09-23T09:56:32.668Z",
"dateReserved": "2026-09-23T09:53:06.527Z",
"dateUpdated": "2026-09-23T14:01:32.711Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}