CVE-2026-59713: Leantime OIDC Session Fixation via Missing State Parameter Validation
Leantime's OIDC (OpenID Connect) single sign-on implementation contains a critical flaw in how it validates login callbacks. When users are redirected back from an identity provider after authentication, Leantime fails to properly verify that the response came from a legitimate request. An attacker can trick a victim into clicking a malicious link that logs them into Leantime using the attacker's own credentials, effectively hijacking the victim's session. This is a session fixation attack that requires user interaction but poses a serious risk to multi-user Leantime deployments, especially those relying on OIDC for centralized authentication.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.1 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
- Weaknesses (CWE)
- CWE-352
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-06 / 2026-07-07
NVD description (verbatim)
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.
4 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-59713 exploits a flaw in Leantime's verifyState() method within the OIDC authentication flow. The vulnerability stems from the method unconditionally returning true without cryptographic validation of the OAuth 2.0 state parameter—a standard CSRF protection mechanism. In a compliant OIDC implementation, the state parameter is a unique, server-generated value issued during the authorization request and validated upon callback to ensure the callback originated from the same user session that initiated the request. By omitting this check, Leantime allows an attacker to supply an authorization code obtained from their own OIDC provider account in a crafted callback URL. When a victim visits this URL, they are logged into the Leantime instance as the attacker, with the victim's browser session bound to the attacker's identity. This is classified as CWE-352 (Cross-Site Request Forgery) because it violates the CSRF principle that all state-changing operations must be validated via unique, per-request tokens.
Business impact
Compromised user accounts in Leantime can lead to unauthorized access to project management data, task assignments, timelines, and potentially sensitive attachments or communications. In organizations using Leantime for resource planning, an attacker account could be used for reconnaissance, data exfiltration, or disruption of project workflows. If Leantime integrates with other systems via API tokens or linked accounts, the foothold may extend beyond the project management platform. The need for user interaction (clicking a malicious link) reduces immediate enterprise-wide risk but remains significant in spear-phishing or watering-hole scenarios targeting specific users or teams.
Affected systems
All versions of Leantime employing the vulnerable verifyState() method in OIDC login are affected. The source data does not list specific version ranges; organizations using Leantime with OIDC authentication should assume their deployment is at risk and consult the vendor advisory for precise version information and patched releases.
Exploitability
The vulnerability is highly exploitable (CVSS 8.1 / HIGH severity) because it requires no authentication, no special privileges, and minimal complexity—only network access and social engineering to deliver a malicious link to a target user. The CVSS vector (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N) reflects that user interaction is necessary (the victim must click the link), but once that occurs, the attacker gains high-confidence confidentiality and integrity impact through account hijacking. No known public exploits are indexed in CISA's Known Exploited Vulnerabilities catalog as of the latest available data.
Remediation
The core remediation is to patch Leantime to a version that properly validates the state parameter in the verifyState() method. Verify against the vendor advisory for the specific patched version and deployment method applicable to your installation. As an interim mitigation, disable OIDC login if not critical to operations, reverting to local authentication. Organizations can also educate users about phishing attempts and implement email security controls to reduce the likelihood of malicious links reaching employees. Monitor Leantime logs for unusual login patterns or sessions authenticating from unexpected geographic locations.
Patch guidance
Obtain the latest patched version of Leantime from the official vendor repository or advisory. The patch must include cryptographic validation of the state parameter before accepting an authorization code. Follow the vendor's upgrade procedure carefully, including any database migrations or cache clearing. Test the OIDC login flow in a non-production environment before rolling out to production. After patching, revoke any active OIDC sessions in production to force re-authentication with the corrected validation logic.
Detection guidance
Log and alert on OIDC callback requests where the state parameter is missing, malformed, or does not match server-side records. Implement rate limiting on login endpoints to slow credential-stuffing or brute-force attempts. Monitor for logins from geographic regions inconsistent with user profiles or recent activity. Review Leantime access logs for sessions that immediately perform sensitive actions (data export, account changes) following a login. Correlate suspicious logins with corresponding OIDC provider logs if available to identify whether the authorization code originated from a legitimate or rogue client.
Why prioritize this
This vulnerability warrants immediate patching priority due to its high CVSS score (8.1), ease of exploitation, and direct impact on user account security. Session fixation attacks undermine the trust model of centralized authentication systems, and any delay in patching increases the window for attackers to compromise user accounts through phishing or other social engineering. The lack of privileged access requirements and minimal attack complexity mean threat actors can scale exploitation across multiple targets.
Risk score, explained
The CVSS 3.1 score of 8.1 (HIGH) reflects a network-exploitable vulnerability with low attack complexity and no required privileges. User interaction is required, reducing the score below 'Critical' (9.0+), but the high impact on both confidentiality and integrity—achieved through session hijacking—drives the score into the HIGH band. The vulnerability does not affect availability, keeping the score below Critical. In context, this is a serious flaw that should not be deferred in patch planning.
Frequently asked questions
Can this vulnerability be exploited without the victim clicking a link?
No. The vulnerability requires user interaction; an attacker must trick the victim into visiting a malicious URL or following a crafted link. This reduces opportunistic attack surface but remains a significant risk in targeted phishing campaigns.
Does this vulnerability allow an attacker to log in to any Leantime instance?
No. The attacker must have an account with the OIDC provider that Leantime is configured to trust. They then craft a callback URL containing their own authorization code. The vulnerability is exploitable only on Leantime instances using OIDC; local authentication is not affected.
How can I quickly check if my Leantime deployment is at risk?
If you are using OIDC (OpenID Connect) for authentication in Leantime, your deployment is at risk until patched. Review your Leantime configuration for enabled OIDC providers. If you use only local username/password authentication, this vulnerability does not directly affect you, but you should still stay informed about vendor advisories.
What should I do if I suspect an attacker has already logged in to my Leantime instance?
Review login logs for anomalous sessions, particularly logins from unfamiliar locations or times. Revoke active OIDC sessions, force password resets for high-privilege accounts, and audit recent data access and changes. If you have not yet patched, disable OIDC temporarily and revert affected users to local authentication until the patch is applied.
This analysis is provided for informational purposes only and should not be construed as actionable security advice for your specific environment. Always consult official vendor advisories and security bulletins for definitive information about affected versions, patches, and remediation procedures. Conduct testing in non-production environments before applying patches. SEC.co makes no warranties regarding the completeness or accuracy of this vulnerability intelligence. Organizations should engage qualified security professionals to assess their specific risk and implement appropriate controls. Source: NVD (public-domain), retrieved 2026-08-15. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2025-68052HIGHUnauthenticated CSRF in Eagle Booking ≤1.3.4.3 – Patch Guidance
- CVE-2026-11265HIGHGoogle Chrome Autofill Cross-Origin Data Leak (CVSS 7.5)
- CVE-2026-12158HIGHRegistrationMagic CSRF Privilege Escalation Vulnerability – WordPress Plugin Security
- CVE-2026-12740HIGHOAuth 2.0 State Parameter Missing in Plack::Middleware::OAuth – Account Takeover Risk
- CVE-2026-12746HIGHDancer2 OAuth 2.0 State Parameter Missing – Account Takeover Risk
- CVE-2026-15070HIGHSalon Booking System WordPress Plugin Remote Code Execution via CSRF
- CVE-2026-22342HIGHWordPress Dating Theme CSRF Vulnerability – High-Risk Patch Required
- CVE-2026-34171HIGHCoolify Password Reset CSRF Vulnerability (v4.0.0-beta.470 and Earlier)