Skip to main content

DataEase CVE-2026-102755

| EUVDEUVD-2026-101560 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-14 security-advisories@github.com
5.1
CVSS 4.0 · Vendor: github
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as folder-creating user
  2. Delivery
    Store HTML payload in folder name
  3. Exploit
    Victim opens 'Move to' dialog and searches
  4. Execution
    Highlight code writes name to innerHTML
  5. Persist
    Script runs in victim session
  6. Impact
    Hijack session / act as victim

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 account with folder-creation permission to store an HTML-bearing name through the datasource/createFolder or datasetTree/save endpoints (PR:L). It is further gated by victim interaction (UI:P): a second user must open a datasource or dataset 'Move to' dialog and type into its search box, which triggers the vulnerable search-highlight code path in CreatDsGroup.vue that assigns the stored title to innerHTML. It does not fire on default page loads and does not affect versions 2.10.26 or later where the sink was replaced with safe segment rendering. These factors - required authentication, required folder-creation privilege, and required victim search interaction - meaningfully limit real-world exploitation despite the network attack vector.

Impact

This is a stored/DOM cross-site scripting flaw (CWE-79) in DataEase rated CVSS 5.1 (medium) via the vendor-supplied CVSS 4.0 vector CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N. The signals are internally consistent and point to a real-but-contained issue rather than a drop-everything priority: network attack vector and low complexity ease delivery, but PR:L means the attacker must already be an authenticated user holding folder-creation permission, and UI:P means a second (victim) user must actively open a 'Move to' dialog and type into its search box before the payload fires - exploitation is not self-triggering. The confirmed root cause is corroborated by the vendor's GitHub Security Advisory (GHSA-pjh9-r96g-pcqw) and the fix commit, which shows the vulnerable ele.innerHTML = content.replace(...) sink being replaced with a safe segment-based template. No EPSS score was supplied, this CVE is not in CISA KEV, and no public exploit code was provided (the GitHub link is the patch diff, not a weaponized POC) - so there is no public exploit identified at time of analysis. Impact is limited to low confidentiality/integrity in the victim's authenticated DataEase session (session/token theft, actions as the victim), with no availability impact. Net: a legitimate stored-XSS bug worth patching, but the combination of required authentication, required victim interaction, and absence of KEV/POC/EPSS evidence makes it a moderate, insider-leaning risk rather than a widely-exploitable critical one.

Exploit ScenarioDerived

An authenticated low-privileged user with folder-creation rights creates a datasource or dataset folder whose name contains an HTML/JavaScript payload via datasource/createFolder or datasetTree/save. Later, when a higher-privileged user opens a 'Move to' dialog and types into the search box, the stored name is reflected into innerHTML with search highlighting and the attacker's script executes in the victim's DataEase session, enabling session hijacking or actions performed as the victim. No public exploit code exists, but the patch commit clearly documents the vulnerable innerHTML sink.

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

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

Alert me

AnalysisAIv1 – Oct 14, 2026

Stored cross-site scripting in DataEase allows an authenticated user who holds folder-creation permission to inject HTML into folder or dataset names via the datasource/createFolder and datasetTree/save endpoints; the payload is later rendered as live markup when another user opens a datasource or dataset "Move to" dialog and types into its search box, executing JavaScript in that victim's session. The flaw affects DataEase versions prior to 2.10.26 and is rated CVSS 5.1 (medium) with the vector CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N, reflecting required authentication, folder-creation privilege, and victim search interaction. No public exploit code or confirmed active exploitation was identified at time of analysis; the vendor fixed the issue in version 2.10.26 by replacing the unsafe innerHTML highlight sink with structured segment rendering.

RemediationAI

Vendor-released patch: upgrade to DataEase 2.10.26 or later, which replaces the innerHTML-based highlight logic with the getHighlightSegments helper in commit f9082e2fa7a3d289115ae6f4a20ca58afd001be3 and is published in release v2.10.26 (https://github.com/dataease/dataease/releases/tag/v2.10.26); the vendor advisory is at https://github.com/dataease/dataease/security/advisories/GHSA-pjh9-r96g-pcqw. If immediate upgrade is not possible, compensate by restricting folder-creation permission so that only fully trusted accounts can call datasource/createFolder or datasetTree/save, since the attacker must be authenticated and hold that permission, and by sanitizing or rejecting HTML-bearing characters in folder and dataset names at the API or reverse-proxy layer (this can break legitimate names containing angle brackets and requires a policy decision). Alternatively, front-load the backend patch by applying the upstream frontend change to the two CreatDsGroup.vue components, or temporarily advise users to avoid typing into the Move to search box in datasource and dataset dialogs - a fragile, awareness-dependent control that reduces but does not eliminate the attack surface. Note that a strict Content-Security-Policy that disallows inline script would limit payload execution but must be validated against DataEase's own inline scripts before deployment.

Affected VersionsENISA

dataease < 2.10.26

Affected Packages

euvd dataease fix: 2.10.26

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

The vulnerability is a stored/DOM cross-site scripting issue (CWE-79) in DataEase's Vue-based frontend, specifically in core-frontend/src/views/visualized/data/datasource/form/CreatDsGroup.vue and core-frontend/src/views/visualized/data/dataset/form/CreatDsGroup.vue. Folder and dataset names supplied through datasource/createFolder or datasetTree/save were persisted server-side and then bound into a tree node's :title attribute; the search filter handler read that stored title with ele.getAttribute('title') and wrote it straight into ele.innerHTML after wrapping the typed query in a <span class="highLight"> element. Because the interpolation was performed as raw HTML rather than text, any HTML/script markup embedded in the node name became executable in the context of the rendering user's authenticated DataEase session. The upstream fix commit f9082e2fa7a3d289115ae6f4a20ca58afd001be3 adds a getHighlightSegments utility that splits the label into typed text/highlight segments, which the template renders through normal Vue interpolation (and a v-if-guarded span), eliminating the innerHTML assignment entirely. Exploitation is not triggered on default page load; it requires the victim to actively open a Move to dialog and type into its search box, which limits both reachability and severity.

Know when the next one hits your stack

  • 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) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated attacker with folder-creation rights gives PR:L, the victim must open a dialog and search so UI:R, script runs in the victim's browser context giving S:C with low C/I and no availability impact.

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

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 14, 2026 - 20:34 EUVD

DescriptionCVE.org

DataEase is an open source data visualization and analysis tool. Prior to 2.10.26, authenticated users with folder creation permission can store HTML-bearing names through datasource/createFolder or datasetTree/save. The datasource and dataset Move to dialogs in core/core-frontend/src/views/visualized/data/datasource/form/CreatDsGroup.vue and core/core-frontend/src/views/visualized/data/dataset/form/CreatDsGroup.vue read the stored name from a node title attribute and assign search-highlighted content to innerHTML. When another user opens a Move to dialog and types in its search box, attacker-controlled JavaScript can execute in the victim's DataEase session. This issue is fixed in version 2.10.26.

Threat Intelligence Overview

EPSS Score
0.4%
Top 73% exploitable
Prevalence
Medium
popular open-source BI/data-visualization tool, common but not ubiquitous infrastructure
Data Quality
5 sources
Confidence: Medium

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.4%
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

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
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.

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