Unity Catalog JWT Issuer Validation Bypass Allows User Impersonation (CVE-2026-27478)
A critical authentication bypass vulnerability exists in the Unity Catalog token exchange endpoint (CVE-2026-27478), allowing attackers to impersonate any user by forging JWTs with a self-controlled issuer and exchanging them for valid access tokens, granting unauthorized access to catalogs and other resources.
A critical authentication bypass vulnerability, tracked as CVE-2026-27478, has been identified in the token exchange endpoint (/api/1.0/unity-control/auth/tokens) of Unity Catalog. This vulnerability allows an attacker to completely impersonate any user within the system. The issue arises because the endpoint dynamically fetches the JWKS (JSON Web Key Set) for signature validation based on the issuer (iss) claim in incoming JWTs without validating whether the issuer is a trusted identity provider. Additionally, the implementation does not validate the audience (aud) claim, enabling tokens intended for other services to be used. This bypass has been observed in unitycatalog-server versions 0.4.0 and earlier. Successful exploitation grants unauthorized access to all catalogs, schemas, tables, and other resources accessible to the impersonated user.
Attack Chain
- The attacker sets up their own OIDC-compliant server. This server needs to have a valid JWKS endpoint, serving the public key.
- The attacker generates an RSA key pair and creates a JWKS containing the public key.
- The attacker crafts a malicious JWT. The
issclaim is set to the attacker’s OIDC server URL. Thesubandemailclaims are set to the email address of the target user in Unity Catalog. Theaudclaim is optionally set to a value other than “unity-catalog”. - The crafted JWT is signed with the attacker’s private key, using the RS256 algorithm and including the key ID (
kid) in the header. - The attacker sends a POST request to the Unity Catalog token exchange endpoint (
/api/1.0/unity-control/auth/tokens). - The request includes the
grant_typeset tourn:ietf:params:oauth:grant-type:token-exchange, therequested_token_typeset tourn:ietf:params:oauth:token-type:access_token, thesubject_token_typeset tourn:ietf:params:oauth:token-type:id_token, and thesubject_tokenset to the crafted JWT. - The Unity Catalog server retrieves the JWKS from the attacker’s OIDC server based on the
issclaim. It then validates the JWT signature using the public key from the JWKS. - Due to the lack of issuer validation, the server trusts the attacker’s JWT and exchanges it for a valid internal access token, effectively impersonating the target user, and allowing unauthorized access to Unity Catalog resources.
Impact
Successful exploitation of CVE-2026-27478 allows an attacker to completely impersonate any user within the Unity Catalog system. This grants the attacker unauthorized access to all catalogs, schemas, tables, and other resources that the impersonated user has permissions to access. The vulnerability affects unitycatalog-server versions 0.4.0 and earlier, potentially impacting all organizations using these vulnerable versions. Data breaches, unauthorized data modification, and complete compromise of the Unity Catalog system are potential outcomes.
Recommendation
- Upgrade
maven/io.unitycatalog:unitycatalog-serverto a version later than 0.4.0 to remediate CVE-2026-27478. - Monitor network traffic for POST requests to
/api/1.0/unity-control/auth/tokenswith suspicioussubject_tokenvalues, using the Sigma ruleDetect Unity Catalog JWT Issuer Validation Bypass Attempt. - Implement strict validation of the
issclaim in JWTs at the token exchange endpoint to ensure that only trusted identity providers are allowed.
Detection coverage 1
Detect Unity Catalog JWT Issuer Validation Bypass Attempt
highDetects attempts to exploit CVE-2026-27478 by monitoring POST requests to the token exchange endpoint with JWTs potentially signed by untrusted issuers.
Detection queries are available on the platform. Get full rules →