Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to ProjeQtor with low-privilege account
-
DeliveryUpload crafted HTML payload via image/attachment endpoint
-
ExploitDistribute file URL to target user
-
ExecutionVictim opens URL in browser
-
PersistBrowser executes JavaScript in application origin
-
ImpactExfiltrate session token or perform authenticated actions
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 a valid authenticated session in ProjeQtor with at least low-privileged user access (CVSS PR:L), meaning anonymous internet attackers cannot exploit this directly. The attacker must have permission to use the image upload or attachment upload endpoint. Exploitation further requires passive user interaction (CVSS UI:P): a second authenticated victim must access the URL of the uploaded file, either by being directed there or by organically navigating to it. The vulnerable function is specifically checkValidFileName(), which is invoked during file upload - the attack fails if that function is patched to block .html and .htm extensions. Exploitation is NOT automatable per SSVC assessment, confirming that chaining the upload with victim delivery requires manual steps. Limiting factors: authentication required for upload, victim must navigate to the file URL, no network-level exploit path exists. |
| Impact | The CVSS 4.0 score of 5.1 (Medium) reflects an accurate mid-tier risk profile. The PR:L metric confirms an authentication barrier - anonymous internet exploitation is not possible, which is the single most important limiting factor here. The UI:P metric indicates a victim must passively access the uploaded file URL, introducing a social engineering or phishing component. The subsequent-system impact (SC:L/SI:L) captures the session-context JavaScript execution in the victim's browser. EPSS at 0.03% (9th percentile) is very low, and SSVC rates exploitation as 'none' and automatable as 'no,' both consistent with the PR:L and UI:P constraints that prevent spray-and-pray attacks. Despite a publicly available POC referenced from damiri.fr and gryfman.fr, the combination of authentication requirement and required victim navigation substantially depresses real-world exploitation probability. The technical impact is partial - session hijacking or credential theft is plausible, but full system compromise is not directly achievable via this vector alone. No CVSS 3.x vector was provided by NVD; the CVSS 4.0 vector is the authoritative source here. |
| Exploit ScenarioDerived | An authenticated ProjeQtor user with access to the file upload functionality crafts an HTML file embedding JavaScript that exfiltrates the victim's session cookie to an attacker-controlled server. The attacker uploads this file via the image or attachment endpoint and then shares the resulting file URL with a privileged target (e.g., a project administrator) through a ProjeQtor message or external channel. When the target clicks the link, their browser renders the HTML file in the application's origin context and executes the script, delivering their session token to the attacker. A public POC is available at damiri.fr and gryfman.fr, lowering the skill bar for exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 24, 2026
Stored cross-site scripting in ProjeQtor 7.0 through 12.4.3 allows authenticated attackers to upload HTML or HTM files via the image upload or attachment endpoints, bypassing the defective checkValidFileName() filter, and achieve arbitrary JavaScript execution in any victim's browser who subsequently accesses the uploaded file URL. The vulnerability affects a wide version range spanning five major releases. A publicly available proof-of-concept exists, though SSVC assessment and EPSS of 0.03% (9th percentile) indicate no confirmed real-world exploitation at time of analysis. No actively exploited status per CISA KEV.
RemediationAI
Upgrade ProjeQtor to a version beyond 12.4.3 once the vendor publishes a patched release - no confirmed fixed version number was available in the referenced data at time of analysis; monitor https://www.projeqtor.com for release notes. As a compensating control, administrators can configure the web server (Apache/nginx) to serve files from the upload directory with a Content-Disposition: attachment header, forcing downloads rather than inline browser rendering, which prevents JavaScript execution regardless of file type. Adding a Content-Security-Policy header with script-src 'self' on file-serving routes would also block execution of inline scripts in uploaded HTML files. Restricting the upload directory at the web server level to deny direct browser access to .html and .htm extensions (via Deny rules or MIME type enforcement) is a targeted and low-side-effect mitigation. Restricting file upload permissions to trusted user roles within the application reduces the attacker population.
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
ProjeQtor is an open-source project management web application (CPE: cpe:2.3:a:projeqtor:projeqtor:*:*:*:*:*:*:*:*). The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation), specifically a stored XSS variant triggered through the file upload surface. The checkValidFileName() function, responsible for validating uploaded file extensions, fails to include .html and .htm in its blocklist, allowing these browser-executable file types to be stored on the server. Unlike reflected XSS, the payload persists in the application's storage layer and is served at a stable URL, meaning a single upload can compromise multiple victims over time. The attack vector is the web application's own file-serving mechanism - the browser treats the stored HTML file as a first-party document and executes embedded scripts with full same-origin context.
Know when Projeqtor 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:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Authenticated upload (PR:L), victim must access URL (UI:R), scope changes as JS executes in victim's browser same-origin context (S:C).
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
ProjeQtor versions 7.0 through 12.4.3 contain a stored cross-site scripting vulnerability in the file upload functionality where the checkValidFileName() function fails to restrict HTML and HTM file uploads. Authenticated attackers can upload HTML files containing arbitrary JavaScript through the image upload or attachment endpoints, and any user accessing the uploaded file URL will execute the embedded JavaScript in their browser.
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.
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
SQL injection in ProjeQtor's login endpoint lets unauthenticated remote attackers inject arbitrary SQL through the usern
projeqtor up to 11.2.0 was discovered to contain a remote code execution (RCE) vulnerability via the component /view/pri
The image-upload feature in ProjeQtOr 7.2.5 allows remote attackers to execute arbitrary code by uploading a .shtml file
Remote code execution in ProjeQtor 7.0 through 12.4.3 arises from a ZipSlip flaw in the plugin upload feature, where aut
SQL injection vulnerability in view/objectDetail.php in Project'Or RIA 3.4.0 allows remote attackers to execute arbitrar
Arbitrary file disclosure in ProjeQtor 7.0 through 12.4.3 allows authenticated attackers to read .log files anywhere on
Sensitive data disclosure in ProjeQtor 7.0 through 12.4.3 lets an authenticated guest-level user retrieve other users' r
projeqtor up to 11.2.0 was discovered to contain a SQL injection vulnerability via the component /view/criticalResourceE
Stored cross-site scripting in ProjeQtor 7.0 through 12.4.3 enables authenticated users to inject persistent malicious H
uploadImage.php in ProjeQtOr before 6.3.2 allows remote authenticated users to execute arbitrary PHP code by uploading a
Multiple cross-site scripting (XSS) vulnerabilities in ProjeQtOr (formerly Project'Or RIA) before 4.0.0 allow remote att
EUVD-2026-25870
NVD
CVE.org
EPSS
Vulnrichment
GitHub PoC
Exploit-DB