Description
Authentication Bypass by Spoofing vulnerability in ueberauth ueberauth_apple allows account takeover via unvalidated ID token claims.

The Ueberauth.Strategy.Apple.Token.payload/2 function verifies the JWT signature of the callback id_token against Apple's JWKS but does not validate any registered claims. The iss, aud, exp, and iat claims are read from the token and passed on to Ueberauth.Strategy.Apple.handle_callback!/1, which derives the logged-in user's uid and email directly from the unvalidated sub claim.

An attacker who obtains any Apple-signed ID token bearing the victim's sub (via a captured expired token, or via an ID token issued to a sibling client in the same Apple developer team) can replay it against the vulnerable callback and be authenticated as the victim. The absent exp check makes stolen tokens usable indefinitely, and the absent aud check enables cross-application account takeover across clients that share an Apple developer team.

This issue affects ueberauth_apple: from 0.1.0 before 0.6.2.
Published: 2026-07-14
Score: 9.1 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability in ueberauth_apple exemplifies a CWE‑290 authentication bypass flaw, allowing an attacker to replay an Apple‑signed ID token that carries the victim’s unique sub claim. The strategy verifies only the JWT signature but neglects to validate issuer, audience, expiration, and issued‑at claims, enabling replay of stolen or expired tokens indefinitely and full access to the application.

Affected Systems

The affected component is the ueberauth_apple strategy module used by Elixir and Phoenix web applications for Apple sign‑in. Versions from 0.1.0 up to but not including 0.6.2 are vulnerable. Both listings for ueberauth:ueberauth_apple in the CNA data refer to the same library; any application that integrates this component is exposed.

Risk and Exploitability

The CVSS score of 9.1 indicates a critical flaw, while the EPSS score of less than 1% suggests low recent exploitation activity. However, because the vulnerability permits replay of any Apple‑signed token without claim checks, it can be exploited by attackers who capture or otherwise obtain a token containing a victim’s sub claim. The absence of an exp check makes stolen tokens usable indefinitely, and the missing aud check enables cross‑application takeover among clients sharing an Apple developer team. The issue is not listed in CISA’s KEV catalog, but the impact on user credentials and potential for full account takeover warrants immediate remediation.

Generated by OpenCVE AI on July 31, 2026 at 10:14 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade ueberauth_apple to version 0.6.2 or later.
  • If upgrading is not possible, modify the callback handling logic to enforce validation of the iss, aud, exp, and iat claims before accepting the token.
  • Monitor authentication logs for anomalous sign‑ins and suspicious token usage to detect potential exploitation attempts.

Generated by OpenCVE AI on July 31, 2026 at 10:14 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 14 Jul 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 14 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
Description Authentication Bypass by Spoofing vulnerability in ueberauth ueberauth_apple allows account takeover via unvalidated ID token claims. The Ueberauth.Strategy.Apple.Token.payload/2 function verifies the JWT signature of the callback id_token against Apple's JWKS but does not validate any registered claims. The iss, aud, exp, and iat claims are read from the token and passed on to Ueberauth.Strategy.Apple.handle_callback!/1, which derives the logged-in user's uid and email directly from the unvalidated sub claim. An attacker who obtains any Apple-signed ID token bearing the victim's sub (via a captured expired token, or via an ID token issued to a sibling client in the same Apple developer team) can replay it against the vulnerable callback and be authenticated as the victim. The absent exp check makes stolen tokens usable indefinitely, and the absent aud check enables cross-application account takeover across clients that share an Apple developer team. This issue affects ueberauth_apple: from 0.1.0 before 0.6.2.
Title Missing ID token claim validation in ueberauth_apple allows account takeover
First Time appeared Ueberauth
Ueberauth ueberauth Apple
Weaknesses CWE-290
CPEs cpe:2.3:a:ueberauth:ueberauth_apple:*:*:*:*:*:*:*:*
Vendors & Products Ueberauth
Ueberauth ueberauth Apple
References
Metrics cvssV4_0

{'score': 9.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Ueberauth Ueberauth Apple
cve-icon MITRE

Status: PUBLISHED

Assigner: EEF

Published:

Updated: 2026-07-15T04:14:10.603Z

Reserved: 2026-06-17T17:55:15.686Z

Link: CVE-2026-55954

cve-icon Vulnrichment

Updated: 2026-07-14T15:56:48.746Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T10:15:06Z

Weaknesses
  • CWE-290

    Authentication Bypass by Spoofing