Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessFetch Apple public RSA key
-
DeliveryForge JWT with alg=HS256
-
ExploitSign token using public key as HMAC secret
-
ExecutionSubmit to Omnivore Apple sign-in endpoint
-
PersistSignature check bypassed, session issued
-
ImpactImpersonate targeted Apple-linked account
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Signature verification
|
| Exploitation Conditions | Exploitation requires that the Omnivore deployment has Apple sign-in enabled and is running the vulnerable API (packages/api before commit abf53d6) built against jsonwebtoken v8, whose failure to validate key/algorithm compatibility is essential to the attack. No authentication, user interaction, or special privileges are needed (PR:N/UI:N), and the attacker needs only Apple's publicly available RSA public key plus a valid target Apple account identifier. What limits exploitation is narrow: instances that have disabled Apple sign-in, that already pin the algorithm to RS256, or that run a jsonwebtoken version enforcing key/algorithm compatibility are not exploitable via this path. |
| Impact | This is a genuine high-priority issue rather than an inflated CVSS number: the CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H) describes remote, unauthenticated, low-complexity exploitation yielding full account takeover, and the underlying algorithm-confusion technique is public and trivially scriptable, so any operator running an unpatched instance should treat it as urgent. There is no CISA KEV listing and no EPSS score in the provided data, so there is no evidence of active mass exploitation yet - the signals point to a serious but not-yet-confirmed-exploited weakness. The main tempering factor is deployment footprint: Omnivore is a niche, now largely discontinued read-it-later product, so real-world exposure is limited even though per-instance impact is severe. |
| Exploit ScenarioDerived | An attacker downloads Apple's publicly published RSA public key, crafts a JWT whose header sets alg=HS256 and whose payload names a target victim's Apple identifier, and signs it using that public key string as the HMAC secret. They submit this forged token to Omnivore's Apple sign-in endpoint; because verification is bypassed, the server issues a valid session and the attacker gains full control of the victim's account. No public exploit is identified in the provided data, but the algorithm-confusion method is well documented and straightforward to reproduce. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 29, 2026
Authentication bypass in the Omnivore API (packages/api) before commit abf53d6 lets a remote unauthenticated attacker impersonate any Apple-linked account through a JWT algorithm-confusion flaw in Apple sign-in. Because decodeAppleToken trusted the attacker-controlled 'alg' header and jsonwebtoken v8 does not enforce key/algorithm compatibility, an attacker can switch the token to HS256 and sign it with Apple's public RSA key used as the HMAC secret. Reported by VulnCheck; no public exploit identified at time of analysis, though the technique is a well-documented class of attack.
RemediationAI
Upstream fix available (PR/commit); a released, tagged patched version is not independently confirmed - apply the change in commit abf53d6508755d3d22a994e28e370a9193ea977a (PR https://github.com/omnivore-app/omnivore/pull/4652), which hardcodes algorithms to ['RS256'] in jwt.verify() and stops reading 'alg' from the token header. If you cannot immediately deploy the patched build, self-hosters should apply the equivalent one-line change to packages/api/src/routers/auth/apple_auth.ts (pin to RS256, drop the attacker-supplied alg), or as a stopgap disable the Apple sign-in provider entirely - the trade-off is that existing Apple-linked users lose that login method until the patch is applied. Upgrading jsonwebtoken beyond v8, which enforces key/algorithm compatibility, is a recommended defense-in-depth follow-up. Review the VulnCheck advisory for details.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a classic RS256-to-HS256 JWT algorithm-confusion attack (CWE-347, Improper Verification of Cryptographic Signature). Apple's sign-in issues identity tokens signed with RSA (RS256) whose public keys are published at Apple's JWKS endpoint. Omnivore's decodeAppleToken read the 'alg' field from the untrusted JWT header and passed it as the sole permitted algorithm to jwt.verify(). Under jsonwebtoken v8, which does not validate that the supplied key material matches the algorithm, an attacker sets alg=HS256 so the library treats the RSA public key (a known, public value) as a symmetric HMAC secret. The attacker can therefore compute a valid HMAC over an arbitrary payload, and the server accepts the forged signature. The affected component is the API server identified by cpe:2.3:a:omnivore-app:omnivore.
Know when Omnivore gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Remote, unauthenticated, low-complexity token forgery gives full account impersonation (C:H/I:H); no availability impact and no scope change beyond the authenticating service.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
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.
Executive ViewAI
Omnivore API contains a critical authentication bypass in Apple sign-in affecting all users with Apple-linked accounts, enabling unauthenticated remote attackers to impersonate user accounts and access sensitive data. No public exploit identified at time of analysis, but the vulnerability requires immediate patching given its high severity and broad user impact.
Apply vendor patch. Interim measures while patching: temporarily disable Apple sign-in if immediate deployment not feasible; monitor authentication logs for anomalous patterns; require re-verification of Apple-linked user credentials.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Blind Server-Side Request Forgery in Omnivore's webhook registration flow allows any authenticated user to coerce the ap
Server-side request forgery in Omnivore's scanFeedsResolver GraphQL endpoint allows authenticated users to direct the AP
EUVD-2026-68109
GHSA-8fpq-5wcx-76h3
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB