Description
Leantime contains an OIDC login CSRF vulnerability in the verifyState() method that unconditionally returns true without validating state parameters. Attackers can craft malicious callback URLs with attacker-controlled authorization codes to perform session fixation, logging victims in as the attacker.
Published: 2026-07-06
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Leantime implements an OAuth‑OpenID Connect login flow that depends on a verifyState() function. The function, however, always returns true, ignoring the state value supplied by the OIDC provider. Because the state parameter is never validated, an attacker can construct a callback URL containing a malicious authorization code and direct a victim to it. When the victim completes the OIDC authentication step, the callback is processed by Leantime, the bogus state is accepted, and the victim’s session token is replaced with the attacker’s credentials. The result is a session‑fixation or authentication‑bypass scenario that allows the attacker to gain unauthorized access as the victim without needing to compromise the victim’s credentials.

Affected Systems

Any installation of Leantime that has not yet incorporated the update you can see in commit 9630eb7db682fb1b4e23cdabf3428d03ec6f5094 is vulnerable. The vendor list does not specify a version the unpatched code base is at risk.

Risk and Exploitability

The CVSS score of 8.6 classifies the flaw as high severity, while an EPSS score of less than 1% indicates a very low current exploitation probability. The vulnerability is not listed in the CISA KEV catalog. The attack vector is remote deception: an attacker requires the victim to follow a crafted callback URL, which can be achieved via social engineering or an email link. Once the victim completes the OIDC flow, the attacker gains session control or the ability to log in as the victim. Because the vulnerability allows an attacker to establish a valid session without authenticating, the risk to confidentiality and integrity is significant once a victim is lured into the flow.

Generated by OpenCVE AI on July 26, 2026 at 20:04 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the Leantime patch from commit 9630eb7db682fb1b4e23cdabf3428d03ec6f5094 to implement proper state validation in the OIDC flow.
  • If the patch cannot be deployed immediately, temporarily disable OIDC login or block the affected endpoint until the fix is applied.
  • After remediation, review the OIDC implementation to confirm that the state parameter is stored, compared, and validated against the response before any session is created, ensuring no further CSRF path exists.

Generated by OpenCVE AI on July 26, 2026 at 20:04 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 07 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Mon, 06 Jul 2026 21:15:00 +0000

Type Values Removed Values Added
Description Leantime contains an OIDC login CSRF vulnerability in the verifyState() method that unconditionally returns true without validating state parameters. Attackers can craft malicious callback URLs with attacker-controlled authorization codes to perform session fixation, logging victims in as the attacker.
Title Leantime - OIDC Login CSRF via Unconditional State Verification Stub
First Time appeared Leantime
Leantime leantime
Weaknesses CWE-352
CPEs cpe:2.3:a:leantime:leantime:*:*:*:*:*:*:*:*
Vendors & Products Leantime
Leantime leantime
References
Metrics cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N'}

cvssV4_0

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


Subscriptions

Leantime Leantime
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-20T17:46:03.417Z

Reserved: 2026-07-06T15:31:46.188Z

Link: CVE-2026-59713

cve-icon Vulnrichment

Updated: 2026-07-07T14:22:38.718Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-26T20:15:04Z

Weaknesses
  • CWE-352

    Cross-Site Request Forgery (CSRF)