Skip to main content

Logto EUVDEUVD-2026-43012

| CVE-2026-55377 HIGH
Improper Authentication (CWE-287)
2026-07-10 security-advisories@github.com
8.1
CVSS 3.1 · Vendor: github
Share

Severity by source

Vendor (github) PRIMARY
8.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
vuln.today AI
7.1 HIGH

Network-reachable and low-complexity but needs an existing valid bearer token (PR:L); impact is chiefly integrity of MFA/account settings (I:H) with only incidental confidentiality (C:L).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

2
Patch available
Jul 10, 2026 - 21:02 EUVD
Analysis Generated
Jul 10, 2026 - 20:31 vuln.today

DescriptionCVE.org

Logto is the modern, open-source auth infrastructure for SaaS and AI apps. Prior to 1.41.0, Logto's Account Center step-up check accepted any active verification record that belonged to the current user and had isVerified === true. A WebAuthn registration verification record for binding a new passkey could be created and verified with only an existing Account API bearer token, then sent in the logto-verification-id header and treated as identityVerified=true by Account Center routes, allowing MFA factor management without proving possession of an existing password, identifier, or MFA factor. This issue is fixed in version 1.41.0.

AnalysisAI

Authentication step-up bypass in Logto self-hosted auth infrastructure prior to 1.41.0 lets an already-authenticated user manage MFA factors without re-proving their identity. The Account Center accepted any of the user's own verified records - including a self-created WebAuthn passkey-registration record - as proof of identity verification, so an attacker holding only a valid Account API bearer token could forge the logto-verification-id header and satisfy step-up checks. No public exploit identified at time of analysis, and it is not listed in CISA KEV; the flaw is fixed in 1.41.0.

Technical ContextAI

Logto is an open-source OIDC/OAuth identity provider for SaaS and AI applications. The Account Center exposes self-service account routes (including MFA factor management) that require a 'step-up' re-verification: the client obtains a verification record and passes its ID in the logto-verification-id header, and the route treats the request as identityVerified=true. The root cause is CWE-287 (Improper Authentication): the step-up check only confirmed that a verification record belonged to the current user and had isVerified === true, without confirming the record's TYPE proved possession of an existing credential. Because a WebAuthn registration flow for binding a *new* passkey also produces an isVerified record, it could be minted using nothing more than the current session's Account API bearer token, then replayed as if it were a genuine re-authentication.

RemediationAI

Vendor-released patch: upgrade Logto to version 1.41.0 or later, which corrects the step-up check to require a verification record that actually proves possession of an existing credential rather than accepting any isVerified record (see PR #9110 and commit f56255a). Apply the upgrade per the release notes at https://github.com/logto-io/logto/releases/tag/v1.41.0 and advisory GHSA-q4h3-38gc-4p4j. If you cannot upgrade immediately, reduce exposure by restricting or monitoring Account Center MFA-management routes, shortening Account API bearer token lifetimes and tightening session/token protections to limit an attacker's window, and reviewing audit logs for unexpected MFA factor changes; these are stop-gaps that do not close the underlying bypass and the fixed release remains the only complete remediation.

Share

EUVD-2026-43012 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy