Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as project member with EDIT perm
-
DeliveryInject script into status/label name
-
ExploitOwner opens Project Dashboard
-
ExecutionRaw label echoed, JS executes in victim session
-
ImpactAct with Owner privileges
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated Leantime account with EDIT permission on the target project to plant the payload into a project status/label name, and a second user (typically the Owner) must subsequently view the Project Dashboard (/app/Domain/Dashboard/Templates/show.blade.php) for the raw-echoed label to fire - this cross-user viewing is the UI:P requirement. Limiting factors: it is not exploitable against a single-user instance, needs insider write access rather than anonymous reach, and impact is confined to script execution in a victim's browser session (no direct server compromise). Applies to Leantime up to and including 3.9.8. |
| Impact | This is a genuine but modest-severity stored XSS. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:P/VC:N/VI:L/VA:N, base 4.8) confirms network reach but with meaningful gating: an attacker must already hold write/edit access to a project and a victim must view the poisoned dashboard (UI:P). Confidentiality impact is rated none and integrity only Low, so this is not a critical issue despite the researcher's 'privilege escalation to Owner' framing - the escalation is script execution in a higher-privileged user's session, not direct account takeover. E:P (Proof-of-Concept) is set and a public exploit exists on GitHub, but there is no EPSS score, no CISA KEV listing, and no evidence of active exploitation - so this is 'publicly available exploit code exists,' distinct from real-world weaponization. I disagree with the vendor's PR:H: 'EDIT perm' in Leantime is a mid-tier collaborator capability, not administrative, so PR:L better reflects the low bar to plant the payload; this makes the practical risk slightly higher than the 4.8 suggests but still bounded by the requirement for an authenticated insider and a viewing victim. Net: a real, patch-worthy finding for multi-user Leantime instances, not an emergency. |
| Exploit ScenarioDerived | An authenticated project member with EDIT permission creates or renames a status/label with a malicious script payload as its name. When the project Owner (or any other user) opens the Project Dashboard, show.blade.php echoes the label name raw, executing the attacker's JavaScript in the victim's authenticated session - enabling actions or data access at the victim's privilege level. A public proof-of-concept for this exact issue is available on GitHub (natanmorette-thoropass research repo). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 21, 2026
Stored cross-site scripting (XSS) in Leantime 3.9.8 and earlier allows an authenticated user with EDIT permission on a project to plant a malicious status label that executes in the browser of any other user-including project Owners-who views the Project Dashboard. The payload is stored in a project status/label name and echoed without encoding in /app/Domain/Dashboard/Templates/show.blade.php, and it requires a second user to load the dashboard for the script to fire. Publicly available exploit code exists, but the vendor did not respond to the disclosure and no patch has been identified.
RemediationAI
No vendor-released patch identified at time of analysis; the vendor did not respond to the disclosure. For self-hosted Leantime instances, a direct code fix is to apply proper output encoding to the label name in /app/Domain/Dashboard/Templates/show.blade.php (e.g., use Blade's escaped {{ }} syntax instead of raw {!! !!} output), but this requires code changes and testing. As a compensating control, restrict EDIT permission on projects to trusted users only, which reduces the pool of potential planters but does not eliminate the risk from a malicious insider; be aware that this may hinder collaboration. Another option is to temporarily disable or restrict access to the Project Dashboard, though this impacts legitimate project visibility. Monitor for suspicious status/label names and audit user activity for unexpected changes. Track the VulDB entry (https://vuldb.com/vuln/408069) and the public exploit research repository (https://github.com/natanmorette-thoropass/thoropass-vuln-research-program/tree/main/2026/Stored%20XSS%20in%20Leantime%20Status%20Labels%20Enables%20Privilege%20Escalation%20to%20Owner) for any vendor response or patch, and upgrade to a patched version once available.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Leantime is a PHP-based open-source project management application that uses the Laravel Blade templating engine. The vulnerability is a stored cross-site scripting (XSS) issue (CWE-79) in the Project Dashboard component, specifically in /app/Domain/Dashboard/Templates/show.blade.php, where a project status or label name is rendered without proper output encoding. An attacker with EDIT permission on a project can set the label name to a malicious script; when any other user (including an Owner) views the Project Dashboard, the raw-echoed label executes in that user's browser session. The assessed CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) reflects network reach, low privileges required to plant, required user interaction for the victim to view the dashboard, and limited confidentiality/integrity impact within the browser session. The public exploit research title references 'Privilege Escalation to Owner', but the assessed impact is confined to script execution in the victim's browser, with no direct server compromise. The CPE cpe:2.3:a:hyve5:leantime:*:*:*:*:*:*:*:* indicates all versions up to 3.9.8 are potentially affected.
Know when Leantime 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:H/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
Stored XSS planted by a mid-tier EDIT user (PR:L) firing in a different, higher-privileged user's browser (UI:R, S:C) with limited confidentiality/integrity impact and no availability effect.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A vulnerability has been found in Hyve5 Leantime up to 3.9.8. Affected by this issue is some unknown functionality of the file /app/Domain/Dashboard/Templates/show.blade.php of the component Project Dashboard. Such manipulation leads to cross site scripting. The attack may be performed from remote. The exploit has been disclosed to the public and may be used. "EDIT perm" needed to plant; fires cross-user for anyone viewing the project dashboard since the poisoned label name is echoed raw. The vendor was contacted early about this disclosure but did not respond in any way.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Leantime 3.0.6 is vulnerable to Cross Site Request Forgery (CSRF). Rated high severity (CVSS 8.8), this vulnerability is
Cross-site request forgery in Leantime 3.6.2 lets a remote unauthenticated attacker execute state-changing actions in th
Server-side request forgery and local file inclusion in Leantime 3.6.2 lets authenticated attackers coerce the server in
Cross Site Scripting vulnerability in Leantime v3.0.6 allows attackers to execute arbitrary code via upload of crafted P
Leantime is an open source project management system. Rated medium severity (CVSS 6.5), this vulnerability is remotely e
In Leantime 3.0.6, a Cross-Site Scripting vulnerability exists within the ticket creation and modification functionality
Cross Site Scripting vulnerability in Leantime 3.0.6 allows a remote attacker to execute arbitrary code via the to-do ti
Open redirect in Leantime 3.6.2's Login controller lets unauthenticated attackers craft login URLs where the `redirectUr
Privilege escalation in Leantime prior to 3.10.0 allows an authenticated low-privilege user to create a full administrat
Missing centralized authorization in Leantime's JSON-RPC API dispatcher (through v3.9.0) enables any authenticated user
Leantime before versions 2.0.15 and 2.1-beta3 has a SQL Injection vulnerability. Rated high severity (CVSS 8.8), this vu
Leantime 3.0.6 is vulnerable to HTML Injection via /dashboard/show#/tickets/newTicket. Rated medium severity (CVSS 4.7),
EUVD-2026-83899
GHSA-7gh4-5fmq-457h
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB