CVE-2026-59358 in UAAinfo

Summary

by MITRE • 10/06/2026

Improper authentication (CWE-287) in the OAuth token endpoint in Cloud Foundry UAA allows a remote, authenticated attacker holding a valid user access token to obtain a fully-privileged client_credentials token for the OAuth client that issued it, by presenting the user token as an OAuth 2.0 Bearer credential on a client_credentials grant request in place of the client’s configured secret.



UAA’s client_credentials handling does not verify that the Bearer credential supplied for client authentication is actually a client credential (a client secret or a valid configured client authentication method); it accepts any valid access token whose client_id matches the request. A token obtained by a normal end user through a public authorization_code + PKCE flow — scoped only to uaa.user, carrying a user_id, and recording client_auth_method=none — satisfies this check. That user token cannot itself administer OAuth clients (POST /oauth/clients correctly returns 403), but when replayed as Bearer authentication on a client_credentials request for the same client, UAA issues a new client-only token carrying the client’s full authorities, such as clients.write. An attacker can use that token to create arbitrary new OAuth clients, including clients with attacker-chosen authorities, without ever possessing the client’s actual secret.



Exploitation requires a valid user access token (the attacker’s own) for a client that is configured to support both a public, user-facing authorization flow and the client_credentials grant type on the same client_id — a non-default combination. Practical impact scales with the authorities assigned to that client.

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 10/06/2026

The vulnerability identified as CWE-287 represents a critical failure in authentication logic within the Cloud Foundry User Account and Authentication service, specifically affecting its OAuth token endpoint implementation. This flaw allows an attacker who possesses a valid user access token to escalate their privileges by obtaining a fully privileged client_credentials token for the OAuth client that originally issued the user token. The core technical deficiency lies in how UAA validates credentials during the client_credentials grant flow. Instead of strictly verifying that the presented Bearer credential is indeed a configured client secret or another authorized method of client authentication, the service accepts any valid access token where the client_id matches the request parameters. This design oversight effectively bypasses the intended separation between user-level and client-level identities within the OAuth 2.0 framework.

From an operational perspective, this flaw enables privilege escalation that circumvents standard security controls. An attacker can leverage a normal end-user access token obtained through public authorization_code flows with PKCE to authenticate as a service account. These user tokens are typically scoped narrowly, such as uaa.user, and record client_auth_method=none because they do not require a secret for issuance. However, when this same token is replayed as the Bearer credential in a request for a client_credentials grant targeting the issuing client, UAA erroneously issues a new token carrying the full authorities of that OAuth client. This includes high-privilege scopes like clients.write, which are normally restricted to service accounts authenticated via secrets or mutual TLS. Consequently, an attacker can create arbitrary new OAuth clients with self-chosen authorities without ever possessing the actual secret for the target client.

The exploitation path aligns closely with ATT&CK techniques related to credential access and privilege escalation, specifically leveraging valid tokens to gain unauthorized administrative control over identity management resources. The practical impact of this vulnerability is directly proportional to the permissions assigned to the compromised OAuth client. If the targeted client possesses broad administrative rights, such as managing other clients or accessing sensitive data stores, an attacker can achieve significant lateral movement within the Cloud Foundry environment. It is important to note that exploitation requires specific configuration conditions: the target client must be configured to support both public user-facing authorization flows and the client_credentials grant type simultaneously under the same client_id. This combination is not a default setting in many deployments but represents a common pattern for applications requiring both human users and service-to-service communication, thereby expanding the potential attack surface significantly.

Mitigation strategies should focus on enforcing strict separation of authentication methods based on the intended use case of the token. Organizations must review their OAuth client configurations to ensure that clients supporting public flows do not also possess high-privilege scopes required for administrative operations via client_credentials grants. If such dual-purpose clients are necessary, additional controls such as IP whitelisting or mutual TLS should be implemented to restrict who can invoke the client_credentials endpoint. Furthermore, UAA implementations should be updated to strictly validate that credentials presented in a client_credentials request match the configured authentication method for that specific client, rejecting any user-issued access tokens regardless of their validity or matching client_id. This ensures that service accounts remain authenticated only through secrets or certificates as intended by the OAuth 2.0 specification and secure design principles.

Responsible

Vmware

Reservation

07/04/2026

Disclosure

10/06/2026

Moderation

accepted

EPSS

0.00346

KEV

no

Activities

low

Sources

Do you need the next level of professionalism?

Upgrade your account now!