CVE-2026-10696 Overview
CVE-2026-10696 affects Devolutions UniGetUI 2026.2.0 and earlier. The flaw resides in the pinget backend, which incorrectly resolves application names when matching installed software to WinGet community catalog packages. A WinGet community catalog contributor can publish a crafted package whose normalized name appears as a substring within a legitimate installed application name. When a user applies the proposed update, UniGetUI executes the attacker-controlled installer instead of the genuine update. The vulnerability is tracked under CWE-706: Use of Incorrectly-Resolved Name or Reference and carries network-based exploitation characteristics with no authentication or user interaction required beyond initiating an update.
Critical Impact
A malicious catalog contributor can substitute attacker-controlled installers for legitimate application updates, resulting in arbitrary installer execution on user systems.
Affected Products
- Devolutions UniGetUI 2026.2.0
- Devolutions UniGetUI versions earlier than 2026.2.0
- Installations sourced from the WinGet community catalog
Discovery Timeline
- 2026-06-17 - CVE-2026-10696 published to NVD
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2026-10696
Vulnerability Analysis
UniGetUI acts as a graphical front-end over multiple package managers, including WinGet. The pinget backend correlates locally installed applications with catalog entries to surface available updates. The matching logic relies on substring containment between a catalog package's normalized name and the installed application's display name. This loose matching strategy treats unrelated packages as updates for installed software when the names share a substring.
An attacker who submits a package to the WinGet community catalog can choose a normalized name that is a substring of a widely installed product. UniGetUI then presents the attacker's package as a proposed update. When the user accepts, UniGetUI downloads and executes the installer referenced by the attacker's catalog entry under the user's privileges.
Root Cause
The root cause is improper name resolution [CWE-706]. The pinget backend does not require an exact, canonical identifier match or cryptographic binding between an installed application and the catalog package proposed as its update. Substring matching against attacker-controllable catalog metadata allows unrelated packages to be presented as legitimate updates.
Attack Vector
Exploitation requires the attacker to publish a crafted package to the WinGet community catalog with a chosen normalized name. No prior authentication to the victim system is needed. The victim must trigger or accept the proposed update inside UniGetUI. Execution occurs in the user's security context, and the installer can perform any action permitted to that user. Verified code examples are not available for this advisory; see the Devolutions Security Advisory DEVO-2026-0019 for vendor-provided technical detail.
Detection Methods for CVE-2026-10696
Indicators of Compromise
- Unexpected installer processes launched as child processes of UniGetUI or pinget shortly after an update action.
- Newly installed applications whose publisher, signing certificate, or installation path does not match the previously installed version.
- WinGet catalog manifest fetches referencing packages with names that loosely overlap installed applications.
Detection Strategies
- Audit endpoints running UniGetUI 2026.2.0 or earlier and inventory their installed package sources.
- Correlate application update events with the catalog package identifier used to source the installer, flagging mismatches between installed DisplayName and the catalog PackageIdentifier.
- Monitor for unsigned or unfamiliar code-signing certificates appearing on installers delivered through UniGetUI.
Monitoring Recommendations
- Log all child processes spawned by UniGetUI and pinget along with their command lines and hashes.
- Alert on installer executions originating from temporary directories used by UniGetUI when the resulting binary is unsigned or newly observed in the environment.
- Track WinGet catalog package submissions and updates against an allowlist of trusted publishers where feasible.
How to Mitigate CVE-2026-10696
Immediate Actions Required
- Upgrade Devolutions UniGetUI to a version later than 2026.2.0 once a fixed release is available per the vendor advisory.
- Pause acceptance of community catalog updates in UniGetUI until the patched version is deployed.
- Restrict UniGetUI usage to administrators or controlled accounts while the issue is unmitigated.
Patch Information
Refer to the Devolutions Security Advisory DEVO-2026-0019 for fixed version details and remediation guidance from the vendor.
Workarounds
- Configure UniGetUI to use only trusted, curated package sources rather than the WinGet community catalog.
- Require manual review of each proposed update, validating the PackageIdentifier and publisher against the originally installed application before applying.
- Apply application allowlisting (for example, Windows Defender Application Control or AppLocker) so that only installers signed by approved publishers can execute.
# Configuration example: enumerate UniGetUI-managed packages and verify sources
winget list --source winget
winget source list
# Remove the community source if not required
winget source remove --name winget
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

