Description
The Omnivore API (packages/api) before the fix in commit abf53d6 contains an authentication bypass in Apple sign-in token verification. The decodeAppleToken function extracted the 'alg' field from the attacker-supplied JWT header and passed it as the sole allowed algorithm to jwt.verify(). Using jsonwebtoken v8 (which does not validate key/algorithm compatibility), an attacker can set alg=HS256 and sign a forged token using Apple's publicly available RSA public key as the HMAC secret, bypassing signature verification and impersonating any Apple-linked account.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| omnivore-app | omnivore | — | — |
References
- Pull Request #4652 issue-tracking patch
- Patch Commit patch
- https://github.com/omnivore-app/omnivore product
- VulnCheck Advisory: Omnivore before android-0.227.0 Authentication Bypass via Apple Sign-in third-party-advisory