Skip to main content

OpenProject CVE-2026-44696

| EUVDEUVD-2026-39878 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-06-26 GitHub_M
5.7
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege project member
  2. Delivery
    Inject malicious CSS into work package description or comment
  3. Exploit
    Victim authenticated user views the work package
  4. Execution
    Browser renders attacker-controlled CSS in victim's DOM
  5. Persist
    UI redressing or phishing overlay displayed to victim
  6. Impact
    Victim credentials or actions captured

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 OpenProject account with write access to at least one formattable text field - specifically work package descriptions, work package comments, project descriptions, or news items. The attacker must be able to save rich text content to a resource that a target user will subsequently view (UI:R). No administrative or elevated role is required beyond standard contributor/member write permissions. Exploitation is limited by: (1) mandatory authentication - unauthenticated attackers cannot exploit this; (2) the victim must navigate to and render the page containing the malicious content; (3) the CSS injection is scoped to the rendered page context (S:U, no scope change to other origins). Instances where all project members are fully trusted employees represent minimal risk; externally accessible instances or those with untrusted contractor accounts face higher realistic risk.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N) scores 5.7 (Medium), reflecting a network-exploitable flaw requiring low privileges and victim interaction. PR:L confirms that write access to formattable fields is a hard prerequisite, limiting exposure relative to unauthenticated XSS. UI:R means a victim must actively view the injected content, further constraining impact. The I:H rating aligns with real-world CSS injection capabilities: full-page UI manipulation, phishing overlays, and clickjacking are achievable. C:N may slightly understate risk since CSS attribute-selector timing attacks and background-image exfiltration can leak limited data, though this is not explicitly confirmed in the advisory. No EPSS data was provided; without KEV listing or known POC, exploitation at scale is unlikely but opportunistic insider abuse (authenticated project members) is a realistic threat vector. This is a genuine medium-priority issue for multi-tenant or externally accessible OpenProject instances rather than a theoretical risk.

Exploit ScenarioDerived

An authenticated OpenProject user with write access to a shared project crafts a work package description containing an img or table element with a style attribute using position:fixed, top:0, left:0, width:100vw, height:100vh to overlay a fake login prompt over the entire viewport. When a colleague or project manager opens the work package, the CSS renders in their browser, presenting a phishing interface that mimics the OpenProject login page to harvest credentials. No public exploit code has been identified at time of analysis, but the technique requires only basic CSS knowledge.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 26, 2026

CSS injection in OpenProject's rich text rendering pipeline prior to version 17.4.0 allows any authenticated user with write access to inject arbitrary CSS into formattable text fields (work package descriptions, comments, project descriptions, news). The misconfigured Sanitize::Config::RELAXED[:css] setting permits all CSS properties on permitted HTML elements, enabling UI redressing, phishing overlays, and potential CSS-based side-channel data exfiltration when a victim views the malicious content. No public exploit or active exploitation (CISA KEV) has been identified at time of analysis; the vendor-released fix is available in 17.4.0.

RemediationAI

Upgrade to OpenProject 17.4.0 or later, which replaces the overly permissive Sanitize::Config::RELAXED[:css] configuration with a restrictive CSS allowlist. The vendor advisory is at https://github.com/opf/openproject/security/advisories/GHSA-j9q2-49mp-hmq5. If immediate upgrade is not feasible, a compensating control is to restrict write access to formattable text fields (work package descriptions, comments, project descriptions, news) to trusted internal users only, removing write permissions from untrusted or externally-facing project members. This reduces the attacker pool but does not eliminate the vulnerability for privileged users. Content-Security-Policy headers that block inline styles (style-src 'none' or a strict nonce-based policy) could further limit CSS injection impact, though retrofitting CSP onto an existing application may break legitimate styling and requires testing.

Affected VersionsENISA

openproject < 17.4.0

Affected Packages

euvd openproject fix: 17.4.0

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

OpenProject is a Ruby-based web application for project management. Its rich text (Markdown) rendering pipeline uses the sanitize Ruby gem for HTML/CSS sanitization. The vulnerability stems from applying Sanitize::Config::RELAXED[:css] - an overly permissive preset that whitelists essentially all CSS properties - to inline style attributes on permitted HTML elements including figure, img, table, th, tr, and td. CWE-79 (Improper Neutralization of Input During Web Page Generation / XSS) is the root cause class: user-controlled CSS content is not adequately restricted before being rendered into the browser DOM. This enables style-based attacks such as position:fixed overlays, background-image out-of-band requests (a known CSS data exfiltration technique), and full-page UI manipulation. The affected CPE is cpe:2.3:a:opf:openproject:*:*:*:*:*:*:*:*, indicating all OpenProject versions prior to the fix.

Know when Openproject 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

Vendor (GitHub_M) PRIMARY 5.7 MEDIUM
AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N
vuln.today AI 5.7 MEDIUM

Network-accessible web app, low-privilege write access required (PR:L), victim must view content (UI:R), integrity-only UI manipulation impact with no confirmed confidentiality or availability effect.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

1
Patch available
Jun 26, 2026 - 21:02 EUVD

DescriptionCVE.org

OpenProject is open-source, web-based project management software. Prior to 17.4.0, OpenProject's rich text (markdown) rendering pipeline uses Sanitize::Config::RELAXED[:css] for inline style sanitization. This configuration permits essentially all CSS properties in style attributes on permitted HTML elements (figure, img, table, th, tr, td). This allows any authenticated user with write access to formattable text fields (work package descriptions, comments, project descriptions, news) to inject CSS This vulnerability is fixed in 17.4.0.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
popular open-source project management platform, broad enterprise self-hosted adoption
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2019-11600 HIGH POC
8.1 May 13

A SQL injection vulnerability in the activities API in OpenProject before 8.3.2 allows a remote attacker to execute arbi

CVE-2023-33960 HIGH POC
7.5 Jun 01

OpenProject is web-based project management software. Rated high severity (CVSS 7.5), this vulnerability is remotely exp

CVE-2023-31140 MEDIUM POC
6.5 May 08

OpenProject is open source project management software. Rated medium severity (CVSS 6.5), this vulnerability is remotely

CVE-2026-46386 CRITICAL
9.9 Jun 26

Authenticated remote code execution affects the official openproject/openproject Docker image, which ships with a hardco

CVE-2026-52782 CRITICAL
9.9 Jun 26

Cross-project folder hijacking in OpenProject before 17.3.3 and 17.4.1 lets a project-admin abuse an insecure direct obj

CVE-2026-52785 CRITICAL
9.9 Jun 26

SQL injection in OpenProject's baseline-comparison (timestamps) functionality lets an authenticated, low-privileged user

CVE-2026-25763 CRITICAL POC
9.9 Feb 06

OpenProject has a CVSS 9.9 command injection vulnerability allowing authenticated users to execute OS commands on the pr

CVE-2026-52780 CRITICAL
9.6 Jun 26

Remote code execution in OpenProject before 17.3.3 and 17.4.1 arises from cache store poisoning, allowing an attacker wi

CVE-2026-32698 CRITICAL
9.1 Mar 18

OpenProject, a web-based project management platform, contains a critical SQL injection vulnerability in versions prior

CVE-2026-22600 CRITICAL
9.1 Jan 10

OpenProject (before 16.6.4) has a local file read vulnerability through SVG-based ImageMagick exploitation in the PDF ex

CVE-2026-32703 CRITICAL
9.0 Mar 18

OpenProject's Repositories module contains a stored cross-site scripting (XSS) vulnerability that occurs when displaying

CVE-2026-24772 HIGH
8.9 Jan 28

Token decryption in OpenProject 17.0 allows authenticated attackers to intercept and decrypt 24-hour authentication toke

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