Drupal Umami Analytics
CVE-2025-10931
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as high-privileged Drupal user
-
ExploitInject script via Umami Analytics config
-
ExecutionStored payload renders unsanitized
-
ImpactScript executes in victim browser session
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 attacker to already possess a high-privileged Drupal account (PR:H) with permission to configure the Umami Analytics module (versions 0.0.0 up to but not including 1.0.1). The malicious input must be injected through a module field/setting that is later rendered without output neutralization, so the payload affects other users who view the affected page. Limiting factors: the privileged-role prerequisite sharply narrows the attacker population to trusted/administrative users, there is no availability impact, and only the Umami Analytics contrib module on Drupal is affected. The precise configuration field is not named in the advisory description. |
| Impact | This is a low-severity issue (CVSS 3.8) that is unlikely to be an operational priority. The CVSS vector (AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N) is network-reachable with low complexity but requires high privileges (PR:H), meaning the attacker must already hold a privileged/administrative role in the Drupal site to inject the malicious payload - a significant limiting factor. EPSS is low at 0.20% (9th percentile), consistent with the low CVSS and the absence of any exploitation signal. There is no CISA KEV listing and no public POC identified, so there is no evidence of active or opportunistic exploitation. No SSVC decision data was provided in the input. The signals are mutually consistent (low CVSS, low EPSS, no KEV, no POC, high-privilege requirement all point the same direction); there is no conflict to flag. The only real-world risk is a malicious or compromised privileged user staging stored XSS against other users of the site, so this is best treated as a routine patch-when-convenient item rather than an emergency. |
| Exploit ScenarioDerived | A user who already holds a high-privileged role (e.g., a site administrator or content/configuration manager) that can configure the Umami Analytics module supplies a crafted value containing a script payload. When another user loads a page where that value is rendered without proper neutralization, the injected JavaScript executes in the victim's browser. No public exploit code was identified for this issue. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Cross-site scripting in the Drupal Umami Analytics contributed module (versions 0.0.0 up to but not including 1.0.1) allows a user who already holds a high-privileged Drupal account with permission to configure the module to inject markup that is later rendered without output neutralization for other users viewing the affected page. The high-privilege prerequisite (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N, score 3.8) sharply narrows the attacker population to trusted/administrative users, there is no availability impact, and EPSS places exploitation likelihood at about 0.2% (9th percentile). There is no public exploit identified at time of analysis and the issue is not in CISA KEV, but a vendor patch is available.
RemediationAI
Upgrade the Umami Analytics contributed module to version 1.0.1 or later, which is the vendor-released fix; the change is published in Drupal security advisory SA-CONTRIB-2025-109 at https://www.drupal.org/sa-contrib-2025-109, and Drupal site owners should also verify the module is not running an unmaintained release and subscribe to the Drupal security advisory list. If the upgrade cannot be applied immediately, the most effective compensating control is to restrict the permission that governs administration of the Umami Analytics module to the smallest possible set of trusted roles - ideally a single dedicated administrator account - recognizing that this does not remove the flaw and only reduces the number of users who can trigger it, and that legitimate configuration changes will then require the elevated account. In addition, review any stored module configuration for suspicious markup before and after updating, since previously injected values may persist and continue to render even after patching, and enforce multi-factor authentication and routine auditing of high-privilege Drupal accounts as a general control against misuse of the privileged access this vulnerability requires. No workaround that fully neutralizes the issue is described in the advisory, so patching to 1.0.1 or later should be treated as the required action.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in composer
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The Umami Analytics module is a Drupal contributed integration for the self-hosted, privacy-focused Umami web analytics platform; it adds configuration for the analytics endpoint and tracking behavior to a Drupal site. The root cause is CWE-79, improper neutralization of input during web page generation: values accepted through the module's administrative settings are stored and then emitted into generated pages without adequate escaping, so a crafted value executes as script in the browser of any user who renders the affected page. The supplied CVSS vector confirms the network attack vector, low attack complexity, no user-interaction requirement, and unchanged scope, with PR:H indicating the attacker must already be an authenticated, highly privileged administrator of the Drupal site - this is not an unauthenticated or anonymously reachable flaw. Impact is confined to low confidentiality and low integrity loss and no availability loss, and the CPE cpe:2.3:a:umami:umami_analytics:*:*:*:*:*:drupal:*:*: identifies the affected component as the Drupal module package rather than the standalone Umami analytics server product. The issue was reported by mlhess@drupal.org and disclosed through Drupal's contributed-module security advisory process as SA-CONTRIB-2025-109.
Know when Umami Analytics 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
AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N
Injection requires a high-privileged module-configuration role so PR:H; network-delivered stored XSS with low complexity (AC:L), limited confidentiality/integrity impact on the same scope and no availability impact.
Primary rating from Vendor (drupal).
CVSS VectorVendor: drupal
DescriptionCVE.org
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in Drupal Umami Analytics allows Cross-Site Scripting (XSS).This issue affects Umami Analytics: from 0.0.0 before 1.0.1.
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.
NVD
CVE.org
EPSS
GitHub PoC
Exploit-DB