CVE-2026-95625
📛 CVE Title
Tauri framework v2 missing updater signature version number validation can be exploited into forced downgrade
Description
The Tauri updater plugin verifies update binaries using minisign signatures, but the signature covers only the raw binary bytes. The update manifest -- which contains the version number, download URL, and signature -- is fetched over TLS but is never itself signed or authenticated. Because the only anti-rollback check compares the manifest's version field against the current version, and that field is unsigned, an attacker who can serve a crafted manifest can force installation of any older signed release without possessing the developer's private key.
Overview
- State
- PUBLISHED
- Assigner (CNA)
- JFROG
- CVSS severity
- MEDIUM
- CVSS score
- 5.9 / 10
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N- Effective score
- 5.9 / 10 MEDIUM source: CNA overview
- CWE(s)
-
CWE-354 - Reserved
- 2026-09-22
- Published
- 2026-09-23 08:51 UTC
- Last updated
- 2026-09-23 14:10 UTC
- Source
- https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/95xxx/CVE-2026-95625.json
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 09:17:09 UTC
- NVD last modified
- 2026-09-23 19:42:02 UTC
- NVD CVSS v3.1
- 5.9 / 10 MEDIUM source: reefs@jfrog.com
- NVD CVSS vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N- Exploitability subscore
- 0.7 / 10
- Impact subscore
- 5.2 / 10
- EPSS score
- 0.0022 (probability of exploitation in next 30 days)
- EPSS percentile
- 13.01% vs all CVEs — higher = more likely to be exploited, as of 2026-09-23
NVD / KEV / EPSS data refreshed 2026-09-24 04:27 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-85170 - Assigner
- JFROG
- Published
- Sep 23, 2026, 8:51:53 AM
- Updated
- Sep 23, 2026, 2:10:35 PM
- EUVD base score (CVSS 3.1)
-
5.9 / 10
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N - EUVD-reported EPSS
- 0.2200
- Vendors
- Tauri
- Products
-
tauri-plugin-updater (2.0.0 <2.12.0)tauri-plugin-updater (2.12.0 ≤*)
- Aliases
-
GHSA-p8c6-29q6-cqw7
ENISA description: The Tauri updater plugin verifies update binaries using minisign signatures, but the signature covers only the raw binary bytes. The update manifest -- which contains the version number, download URL, and signature -- is fetched over TLS but is never itself signed or authenticated. Because the only anti-rollback check compares the manifest's version field against the current version, and that field is unsigned, an attacker who can serve a crafted manifest can force installation of any older signed release without possessing the developer's private key.
Affected products (1)
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| Tauri | tauri-plugin-updater |
2.0.0 (affected),
2.12.0 (affected)
|
— |
Vendor references (4)
References embedded in the original CVE record by the assigning CNA.
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 (4)
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/tauri-apps/plugins-workspace reefs@jfrog.com
- https://github.com/tauri-apps/plugins-workspace/commit/690dcfd694 reefs@jfrog.com
- https://github.com/tauri-apps/plugins-workspace/releases/tag/updater-v2.12.0 reefs@jfrog.com
- https://github.com/tauri-apps/plugins-workspace/security/advisories/GHSA-j38x-g3m3-95fr reefs@jfrog.com
Remediations (10)
-
web:blogs.oracle.com
For more information about the Critical Patch Update program, see the security vulnerability remediation practices page located on the Oracle Trust Center.
2026-09-24 11:45 UTC -
web:dailysecurityreview.com
Microsoft confirmed CVE - 2026 -50656, a zero-day in the Defender Malware Protection Engine allowing SYSTEM-level privilege escalation, is under active exploitation with no patch currently available.
2026-09-24 11:45 UTC -
web:msrc.microsoft.com
The Microsoft Security Response Center (MSRC) investigates all reports of security vulnerabilities affecting Microsoft products and services, and provides the information here as part of the ongoing effort to help you manage security risks and help keep your systems protected.
2026-09-24 11:45 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:45 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:45 UTC -
web:ubuntu.com
Description The Tauri updater plugin verifies update binaries using minisign signatures, but the signature covers only the raw binary bytes. The update manifest -- which contains the version number, download URL, and signature -- is fetched over TLS but is never itself signed or authenticated. Because the only anti-rollback check compares the manifest's version field against the current ...
2026-09-24 11:45 UTC -
web:windowsforum.com
ShieldBreak, a newly published proof of concept from the researcher known as Nightmare Eclipse, claims to bypass Microsoft's July fix for the Microsoft Defender privilege-escalation flaw CVE - 2026 -50656, better known as RoguePlanet.
2026-09-24 11:45 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:45 UTC -
web:www.oracle.com
Additional CVEs addressed are: The patch for CVE - 2026 -34481 also addresses CVE - 2026 -34477, CVE - 2026 -34478, CVE - 2026 -34479, and CVE - 2026 -34480. Oracle Fusion Middleware Risk Matrix This Critical Security Patch Update contains 106 new security patches for Oracle Fusion Middleware. 53 of these vulnerabilities may be remotely exploitable without authentication, i.e., may be exploited over a ...
2026-09-24 11:45 UTC -
web:www.tenable.com
Microsoft patched 569 CVEs in July 2026 , the largest Patch Tuesday release in its history. 56 critical CVEs patched including three zero-day vulnerabilities.
2026-09-24 11:45 UTC
AI Forensic Analysis
Only Available for Registered Users. Sign in to view.
Raw JSON
The full cvelistV5 record. Download as CVE-2026-95625.json.
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-95625",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-23T14:07:42.715205Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T14:10:35.332Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"collectionURL": "https://crates.io/crates/tauri-plugin-updater",
"defaultStatus": "unaffected",
"packageName": "tauri-plugin-updater",
"product": "tauri-plugin-updater",
"programFiles": [
"plugins/updater/src/updater.rs",
"plugins/updater/src/config.rs"
],
"repo": "git://github.com/tauri-apps/plugins-workspace",
"vendor": "Tauri",
"versions": [
{
"lessThan": "2.12.0",
"status": "affected",
"version": "2.0.0",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "affected",
"version": "2.12.0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Yuval Moravchick"
},
{
"lang": "en",
"type": "coordinator",
"value": "JFrog Security Research"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "<p>The Tauri updater plugin verifies update binaries using minisign signatures, but the signature covers only the raw binary bytes. The update manifest -- which contains the version number, download URL, and signature -- is fetched over TLS but is never itself signed or authenticated. Because the only anti-rollback check compares the manifest's version field against the current version, and that field is unsigned, an attacker who can serve a crafted manifest can force installation of any older signed release without possessing the developer's private key.</p>"
}
],
"value": "The Tauri updater plugin verifies update binaries using minisign signatures, but the signature covers only the raw binary bytes. The update manifest -- which contains the version number, download URL, and signature -- is fetched over TLS but is never itself signed or authenticated. Because the only anti-rollback check compares the manifest's version field against the current version, and that field is unsigned, an attacker who can serve a crafted manifest can force installation of any older signed release without possessing the developer's private key."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "HIGH",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 5.9,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "HIGH",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N",
"version": "3.1"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-354",
"description": "CWE-354: Improper Validation of Integrity Check Value",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T08:51:53.922Z",
"orgId": "48a46f29-ae42-4e1d-90dd-c1676c1e5e6d",
"shortName": "JFROG"
},
"references": [
{
"name": "GHSA-j38x-g3m3-95fr (tauri-apps/plugins-workspace)",
"tags": [
"issue-tracking"
],
"url": "https://github.com/tauri-apps/plugins-workspace/security/advisories/GHSA-j38x-g3m3-95fr"
},
{
"name": "tauri-apps/plugins-workspace repository",
"tags": [
"product"
],
"url": "https://github.com/tauri-apps/plugins-workspace"
},
{
"name": "Add requireSignedVersion to bind an update to its signed version",
"tags": [
"patch"
],
"url": "https://github.com/tauri-apps/plugins-workspace/commit/690dcfd694"
},
{
"name": "tauri-plugin-updater 2.12.0 release notes",
"tags": [
"release-notes"
],
"url": "https://github.com/tauri-apps/plugins-workspace/releases/tag/updater-v2.12.0"
}
],
"solutions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "<p>addressed in tauri-plugin-updater 2.12.0, and it has to be switched on. The new requireSignedVersion option compares the version announced by the endpoint against the version recorded in the signature's trusted comment, which the signature does cover, and rejects the update when they differ.</p>"
}
],
"value": "addressed in tauri-plugin-updater 2.12.0, and it has to be switched on. The new requireSignedVersion option compares the version announced by the endpoint against the version recorded in the signature's trusted comment, which the signature does cover, and rejects the update when they differ."
}
],
"source": {
"discovery": "EXTERNAL"
},
"timeline": [
{
"lang": "en",
"time": "2026-09-01T13:31:00.000Z",
"value": "Reported to the Tauri team as GHSA-j38x-g3m3-95fr"
},
{
"lang": "en",
"time": "2026-09-19T23:57:00.000Z",
"value": "Opt-in fix released in tauri-plugin-updater 2.12.0, commit 690dcfd694, adding the requireSignedVersion option"
}
],
"title": "Tauri framework v2 missing updater signature version number validation can be exploited into forced downgrade",
"x_generator": {
"engine": "Vulnogram 1.0.5"
}
}
},
"cveMetadata": {
"assignerOrgId": "48a46f29-ae42-4e1d-90dd-c1676c1e5e6d",
"assignerShortName": "JFROG",
"cveId": "CVE-2026-95625",
"datePublished": "2026-09-23T08:51:53.922Z",
"dateReserved": "2026-09-22T10:38:03.883Z",
"dateUpdated": "2026-09-23T14:10:35.332Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}