Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-16798

CVE-2026-16798: PowerShell Universal Info Disclosure Flaw

CVE-2026-16798 is an information disclosure vulnerability in Devolutions PowerShell Universal that exposes OAuth refresh tokens through automation jobs API. This article covers technical details, affected versions, and mitigation.

Published:

CVE-2026-16798 Overview

CVE-2026-16798 is an information disclosure vulnerability in the automation jobs API of Devolutions PowerShell Universal version 2026.2.2 and earlier. The flaw allows an authenticated user with scoped job or script read permission to obtain another user's stored OAuth refresh token. Job read responses fail to strip the refresh token before returning data to the caller. The vulnerability is tracked under [CWE-201: Insertion of Sensitive Information Into Sent Data].

Critical Impact

A low-privileged authenticated user can harvest OAuth refresh tokens belonging to other users, enabling impersonation and lateral access to downstream OAuth-protected resources.

Affected Products

  • Devolutions PowerShell Universal 2026.2.2 and earlier
  • Automation jobs API component
  • Scoped job and script read permission model

Discovery Timeline

  • 2026-07-24 - CVE-2026-16798 published to NVD
  • 2026-07-29 - Last updated in NVD database

Technical Details for CVE-2026-16798

Vulnerability Analysis

The vulnerability resides in the automation jobs API endpoints of Devolutions PowerShell Universal. When a client requests job read data, the API returns response objects that include the OAuth refresh token associated with the job's originating user. The response serializer does not strip or redact this sensitive field before returning the payload. Any user holding scoped job or script read permission can therefore observe refresh tokens belonging to other users through routine API queries.

Refresh tokens are long-lived credentials used to obtain new access tokens without re-authentication. Their exposure permits an attacker to mint valid access tokens as the victim identity, bypassing multi-factor authentication and directly consuming the OAuth-protected resources granted to that user.

Root Cause

The root cause is inadequate output filtering in the job read response path. The data model backing job records contains authentication material intended for internal use. The API layer serializes the full record without applying a projection or field-level redaction policy for callers who do not own the record. This design pattern maps to [CWE-201] and reflects a missing separation between internal persistence schema and external API schema.

Attack Vector

Exploitation requires network access to the PowerShell Universal API and an authenticated account with the scoped job or script read permission. The attacker enumerates jobs owned by other identities and reads their responses. Each response containing an OAuth-linked job discloses the associated refresh token. No user interaction is required, and no elevated privileges are needed beyond the read scope.

No public proof-of-concept code is available. Refer to the Devolutions Security Advisory DEVO-2026-0025 for vendor technical details.

Detection Methods for CVE-2026-16798

Indicators of Compromise

  • Unusual volume of GET requests against automation job read endpoints by non-owner accounts
  • API access patterns where a single account enumerates jobs across multiple user contexts
  • Downstream OAuth provider events showing refresh token exchanges from unexpected client IPs
  • Sudden access token issuance for user accounts that did not initiate a session

Detection Strategies

  • Review PowerShell Universal audit logs for job read operations performed by users who do not own the referenced job
  • Correlate API job read events with OAuth token refresh events at the identity provider to detect stolen-token usage
  • Alert on scoped read accounts that iterate through job identifiers sequentially or at high frequency

Monitoring Recommendations

  • Enable verbose API access logging on PowerShell Universal and forward events to a centralized log platform
  • Track OAuth refresh token usage metrics per user and flag anomalies in issuing IP, user agent, or geography
  • Monitor role and permission assignments so that job or script read scope is granted only to accounts that require it

How to Mitigate CVE-2026-16798

Immediate Actions Required

  • Upgrade Devolutions PowerShell Universal to a version later than 2026.2.2 as instructed in advisory DEVO-2026-0025
  • Rotate all OAuth refresh tokens stored by PowerShell Universal automation jobs after patching
  • Audit historical job read API access to identify potentially exposed tokens
  • Revoke and reissue OAuth client credentials that may have been used with the exposed refresh tokens

Patch Information

Devolutions has released a fix documented in Devolutions Security Advisory DEVO-2026-0025. Apply the vendor-supplied update to remediate the response serialization behavior in the automation jobs API.

Workarounds

  • Restrict the scoped job or script read permission to a minimal set of trusted service accounts until the patch is applied
  • Remove or reissue OAuth integrations that store refresh tokens within automation jobs, favoring short-lived credentials where feasible
  • Segment network access to the PowerShell Universal API so that only authorized management hosts can reach job endpoints
bash
# Configuration example
# Refer to Devolutions Security Advisory DEVO-2026-0025 for vendor-provided remediation guidance

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.