Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit crafted data to public Lead Capture form
-
ExploitPayload stored unescaped in LeadCaptureLogRecord.data
-
ExecutionAdministrator opens the log record
-
ImpactInjected HTML rendered in admin UI
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 | Requires that the EspoCRM Lead Capture public form feature be enabled and externally reachable - the injection vector is the public form submission, so instances without an exposed Lead Capture form are not exploitable. The payload only takes effect when a privileged administrator subsequently opens the affected LeadCaptureLogRecord in the admin UI (the UI:P / passive-interaction requirement), so there is no immediate attacker-controlled trigger. Impact is further limited by Content Security Policy, which blocks JavaScript execution, confining the issue to stored HTML/markup injection (content and UI spoofing) rather than full script-based XSS or session theft. |
| Impact | This is a genuinely low-to-moderate risk issue rather than a top-tier priority, and the signals are broadly consistent. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:P/VC:N/VI:L/VA:N) and the 5.3 Medium score align with the description: network-reachable, no attacker authentication (PR:N), but dependent on passive user interaction (UI:P) - an administrator must open the log record for the injected HTML to render. Only integrity is affected and only at Low (VI:L); there is no confidentiality or availability impact, which fits the description's note that Content Security Policy blocks JavaScript execution, reducing this from a classic stored XSS to stored HTML injection (content/UI spoofing, not script execution). Exploitation status: publicly available exploit code exists (GitHub security advisory referenced as an exploit), but this is NOT in CISA KEV and there is no evidence of active exploitation - do not conflate POC availability with in-the-wild use. EPSS score was not provided in the input, so the statistical exploitation-probability signal is unavailable and cannot be weighed. No SSVC decision data was supplied. Net: a credible, easy-to-trigger but low-impact flaw whose real-world severity is capped by CSP and by the requirement that a privileged user view the malicious record. |
| Exploit ScenarioDerived | An unauthenticated attacker locates a publicly exposed EspoCRM Lead Capture form and submits crafted form data containing HTML markup, which is stored verbatim in the LeadCaptureLogRecord.data field. When an administrator later opens that log record in the CRM UI, the attacker-supplied HTML is rendered unescaped, enabling UI spoofing, misleading content, or phishing-style injection; CSP prevents accompanying JavaScript from executing. Public exploit code for this technique is available via the vendor's GitHub security advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Stored HTML injection in EspoCRM before 10.0.6 allows unauthenticated attackers to plant arbitrary markup through the public Lead Capture form, which is persisted in LeadCaptureLogRecord.data and rendered unescaped when an administrator later opens the log record in the admin UI; the practical impact is limited to content and interface spoofing because the application's Content Security Policy blocks JavaScript execution, preventing classic script-based XSS or session theft. Exploitation requires the Lead Capture public form to be enabled and externally reachable, and the payload stays inert until a privileged administrator views the affected entry, so there is no immediate attacker-controlled trigger. Vendor-released patch 10.0.6 is available, publicly available exploit code exists, and no active exploitation has been confirmed (CISA KEV). The independently assessed severity is low-to-moderate (CVSS 3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N), consistent with the limited integrity-only, interaction-gated impact.
RemediationAI
Upgrade EspoCRM to 10.0.6 or later, the vendor-released fixed version referenced by advisory GHSA-xfqv-j65r-qqgh (https://github.com/espocrm/espocrm/security/advisories/GHSA-xfqv-j65r-qqgh) and the VulnCheck advisory (https://www.vulncheck.com/advisories/espocrm-before-10.0.6-unauthenticated-stored-html-injection-via-lead-capture-form). If immediate patching is not possible, disable the Lead Capture public form or restrict it to trusted networks, since the injection vector is the unauthenticated public submission endpoint - the trade-off is that legitimate lead-capture functionality stops collecting external submissions until the form is re-enabled after upgrade. Verify that a restrictive Content Security Policy remains in place, as the existing CSP is the control currently confining the impact to HTML/markup spoofing instead of script execution; weakening or removing it would escalate this issue to a full stored XSS with session-compromise potential. Administrators should also treat existing LeadCaptureLogRecord entries as untrusted and avoid opening records with suspicious markup until the upgrade and remediation steps are complete, and consider purging untrusted log records as a precaution.
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
The issue is a stored HTML injection (CWE-79 family) arising from a missing output-encoding step on an administrative log view rather than from a missing input filter. EspoCRM's Lead Capture feature accepts public, unauthenticated form submissions; the raw request body is written to the LeadCaptureLogRecord.data field without sanitization, and that field is subsequently rendered into the administrator UI without escaping, so any markup an anonymous submitter provides becomes part of the admin's page DOM. The trust boundary is crossed twice: attacker-controlled input from an anonymous public endpoint crosses into privileged administrative rendering. The root-cause class (CWE-79) normally implies cross-site scripting, but in this instance the platform's Content Security Policy prevents inline or remote JavaScript from executing, downgrading the realistic outcome from script execution to stored HTML/markup injection - layout manipulation, deceptive links, and UI redressing. The CVSS:4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N) matches the independent CVSS:3.1 assessment (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N): network reachable, no privileges required, passive/required administrator interaction, integrity-only impact with no confidentiality or availability loss. The affected CPE is cpe:2.3:a:espocrm:espocrm:*:*:*:*:*:*:*:*, covering all EspoCRM releases prior to 10.0.6, and ENISA EUVD-2026-95018 records the same range (espocrm 0 < 10.0.6).
Know when Espocrm 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:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Unauthenticated remote form submission gives PR:N/AV:N/AC:L, but an admin must view the record (UI:R); CSP blocks JS so only low integrity impact (I:L), no C or A.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
EspoCRM before 10.0.6 contains a stored HTML injection vulnerability that allows unauthenticated attackers to inject HTML by submitting crafted Lead Capture public form data. The request body is stored in LeadCaptureLogRecord.data and rendered unescaped when administrators view the log record, though Content Security Policy blocks JavaScript execution.
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.
Directory traversal vulnerability in EspoCRM before 2.6.0 allows remote attackers to include and execute arbitrary local
PHP object deserialization in EspoCRM versions prior to 9.3.7 lets an authenticated administrator achieve remote code ex
Path traversal in EspoCRM's formula scripting engine allows authenticated administrators to achieve arbitrary file read/
EspoCRM version 7.1.8 is vulnerable to Unrestricted File Upload allowing attackers to upload malicious file with any ext
EspoCRM 5.6.4 is vulnerable to user password hash enumeration. Rated high severity (CVSS 8.8), this vulnerability is rem
Authorization bypass in EspoCRM 5.8.5 lets an authenticated low-privilege user reuse or manipulate Basic-Authorization a
EspoCRM deployments before 10.0.5 allow an authenticated user with Email Account scope to retrieve other users' stored I
CSV Injection in Create Contacts in EspoCRM 7.1.8 allows remote authenticated users to run system commands via creating
Boolean-based blind SQL injection in EspoCRM versions 8.1.0 through 9.3.7 allows an authenticated non-administrator to i
Path traversal in EspoCRM admin template management allows authenticated administrators to read, create, overwrite, or d
Server-side request forgery in EspoCRM before 10.0.4 allows authenticated users to route outbound HTTP requests to inter
Stored cross-site scripting in EspoCRM 9.3.3 and below enables an authenticated attacker to execute arbitrary JavaScript
EUVD-2026-95018
GHSA-qv95-q49f-g838
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB