Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as high-privilege admin
-
DeliveryInject script via Version Check input
-
ExploitPayload stored/reflected by html() in dmAdminCtrl.js
-
ExecutionVictim admin views page
-
ImpactScript executes in browser context
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 the attacker to be authenticated with high (administrative) privileges in the Diem admin plugin (PR:H), and a victim user must interact by viewing the affected Version Check Service view that renders attacker input through the html function in dmAdminCtrl.js (UI:P). The specific feature required is the Version Check Service component of the dmAdminPlugin. Limiting factors: the high-privilege precondition means an unprivileged or anonymous remote attacker cannot trigger this directly, the required user interaction further narrows realistic abuse, and because the project uses a rolling release with no vendor fix, exposure depends on running an unpatched checkout at or near commit 116974edfb9a5b8bd69cb13586dc62bcdbb485ad. |
| Impact | This is a genuinely low-priority issue despite being network-exploitable. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:P/VC:N/VI:L/VA:N) scores 4.8 (Medium), and the limiting metrics dominate: PR:H means the attacker must already hold high (administrative) privileges in the Diem admin interface, and UI:P means a victim must be induced to view the malicious content. The impact is confined to low integrity (VI:L) with no confidentiality or availability effect - consistent with a stored/reflected XSS in an admin-side JavaScript controller. Exploit maturity is E:P (proof-of-concept), matching the 'POC publicly available' signal: a public disclosure exists via the GitHub issue, but there is NO CISA KEV listing and NO EPSS score was provided, so there is no evidence of active or widespread exploitation. The high-privilege precondition largely makes this a self-XSS or admin-on-admin scenario rather than a path to initial compromise. No conflicting signals were found, but note the data originates solely from VulDB - there is no independent vendor advisory, and the project has reportedly not responded to the issue report. |
| Exploit ScenarioDerived | An authenticated high-privilege user of the Diem admin interface supplies crafted input that is reflected unsanitized by the html function in dmAdminPlugin/web/js/dmAdminCtrl.js (Version Check Service), so that when an administrator views the affected view, attacker-controlled script executes in their browser session. A public proof-of-concept is referenced in the project's GitHub issue tracker (issue #455). Because high privileges and victim interaction are both required, realistic abuse is limited to a malicious/compromised admin targeting another operator. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Cross-site scripting in the Diem admin plugin's Version Check Service lets a high-privileged authenticated attacker supply markup that the html handler in dmAdminCtrl.js renders without proper escaping, executing script in a victim administrator's browser when the affected view is opened. The impact is limited to low integrity per the independent CVSS:3.1 assessment (C:N/I:L/A:N), and exploitation also requires victim interaction, so the issue is network-reachable but gated by administrative privileges and user action. Publicly available exploit code exists, but there is no CISA KEV confirmation and overall risk is low, especially because Diem uses a rolling release with no vendor-issued fixed version.
RemediationAI
No vendor-released patch identified at time of analysis; the project has not responded to the public issue and uses a rolling release, so there is no fixed version to cite. Until a vendor fix appears, restrict access to the Diem admin interface to trusted administrator accounts and networks because exploitation requires administrative privileges; disable or remove the Version Check Service or the dmAdminPlugin entirely if it is not needed, accepting the loss of that management feature; correct the html sink in dmAdminCtrl.js so attacker-controlled values are encoded or inserted as text rather than raw markup, using textContent or a maintained sanitizer such as DOMPurify and testing the admin UI afterward; and deploy a restrictive Content-Security-Policy on the admin interface, recognizing that it may break inline scripts and must be validated before enforcement. Monitor admin sessions and logs for unexpected script injection or anomalous Version Check activity, track https://github.com/diem-project/diem/issues/455 and https://vuldb.com/vuln/421686 for a vendor fix, and pin deployments to a reviewed commit rather than running unpatched checkouts at or near 116974edfb9a5b8bd69cb13586dc62bcdbb485ad.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CWE-79 (improper neutralization of input during web page generation) applies to a client-side JavaScript sink in dmAdminPlugin/web/js/dmAdminCtrl.js, where the html function is used by the Version Check Service view. Input that reaches this helper is handled as HTML markup rather than encoded text, so an attacker who can control data rendered by that view can inject script into the Diem administrative interface. The CPE entry cpe:2.3:a:diem-project:diem:*:*:*:*:*:*:*:* uses wildcard versions because Diem follows a rolling-release model; the concrete affected boundary is commit 116974edfb9a5b8bd69cb13586dc62bcdbb485ad and earlier checkouts at or near that commit. Exploitation requires high administrative privileges in the admin plugin (PR:H) and victim interaction (UI:R/UI:P), and the independent CVSS:3.1 assessment records only low integrity impact (C:N/I:L/A:N). The supplied CVSS:4.0 vector (4.8) and the independent 3.1 vector agree on the privilege and interaction constraints, so this should be treated as a low-priority administrative XSS rather than an unauthenticated remote compromise.
Know when Diem 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
Network-reachable admin UI with low complexity, but high admin privileges (PR:H) and victim interaction (UI:R) are required; XSS yields low integrity impact only, no scope change.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A vulnerability has been found in diem-project diem up to 116974edfb9a5b8bd69cb13586dc62bcdbb485ad. Affected by this vulnerability is the function html of the file dmAdminPlugin/web/js/dmAdminCtrl.js of the component Version Check Service. The manipulation leads to cross site scripting. Remote exploitation of the attack is possible. The exploit has been disclosed to the public and may be used. This product follows a rolling release approach for continuous delivery, so version details for affected or updated releases are not provided. The project was informed of the problem early through an issue report but has not responded yet.
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.
Related Vulnerabilities in diem-project diem XSS and Auth Flaws
View all 6Insecure direct object reference (IDOR) in the dmWidget component of diem-project/diem (versions through 5.1.3) allows u
Default-password exposure in Diem CMS through 5.1.3 allows remote attackers to access unhardened installations whose cre
Unrestricted file upload in diem-project/diem through version 5.1.3 exposes the Widget Editor to remote authenticated at
Cross-site request forgery in diem-project/diem up to version 5.1.3 allows remote attackers to trigger unauthorized cons
Path traversal in Diem through 5.1.3 lets an authenticated user with high backend privileges abuse the dmCodeEditor acti
OS command injection in the Diem CMS Administrative Console (diem-project/diem ≤ 5.1.3) allows authenticated administrat
Weak SHA1-based password hashing in the Diem PHP framework's PluginDmUser handler (lib/model/doctrine/PluginDmUser.class
EUVD-2026-104033
GHSA-f334-cccv-q38h
NVD
CVE.org
EPSS
VulDB
Exploit-DB