Skip to main content

EspoCRM CVE-2026-63130

| EUVDEUVD-2026-102108 MEDIUM
Path Traversal (CWE-22)
2026-10-15 GitHub_M
5.5
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 EspoCRM administrator
  2. Exploit
    Submit crafted scope/language to Label Manager API
  3. Execution
    Insufficient path validation traverses outside custom directory
  4. Impact
    Read, modify, create, or delete arbitrary JSON files

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated session with administrator privileges (PR:H) and access to the administrative Label Manager feature, which exposes the vulnerable getScopeData/saveLabels actions that accept 'scope' and 'language' parameters. Exploitation is limited by: (1) the need for full admin rights, which is a high bar and reduces this to a privilege-abuse/defense-in-depth concern; (2) filesystem permissions and server configuration, which bound which JSON files the web server/PHP process can actually read or write; (3) the impact being scoped to JSON files accessible to the application rather than arbitrary file types. No end-user interaction is required (UI:N), and the vector is reachable over the network against any EspoCRM instance prior to 9.3.10 whose admin panel is accessible to the attacker.

Impact

This is a moderate, low-priority issue for most environments. The input CVSS vector (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:L = 5.5 Medium) is the binding constraint: PR:H means exploitation requires an authenticated administrator, which the description independently confirms ('an authenticated administrator can provide crafted input'). An attacker who already holds full admin rights over EspoCRM has limited incentive to abuse a Label Manager path-traversal bug, which substantially caps real-world risk despite the AV:N network vector. Signals are largely consistent rather than conflicting: there is NO CISA KEV listing and NO EPSS value supplied, so there is no evidence of active or widespread exploitation; a POC/patch commit is publicly available but POC availability is distinct from active exploitation. One notable discrepancy: the vendor vector sets C:N, yet the description explicitly says the flaw 'permits reading ... JSON files,' which does imply some confidentiality impact (e.g., reading config JSON) - this suggests the official vector slightly understates confidentiality and should be verified with the vendor. No SSVC decision data was provided. Net assessment: a genuine post-authentication integrity flaw worth patching, but gated behind admin access and not an emergency.

Exploit ScenarioDerived

An attacker who has obtained EspoCRM administrator credentials (via phishing, credential reuse, or a malicious/compromised admin) opens the administrative Label Manager and submits a crafted 'scope' or 'language' value containing path-traversal sequences. Because input is not validated, the request escapes the intended custom-language directory and lets the attacker read, overwrite, create, or delete JSON files the web application can access, subject to filesystem permissions. A public patch/commit exists demonstrating the vulnerable code path, so a working exploit is trivially reconstructable.

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

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

Alert me

AnalysisAIv1 – Oct 15, 2026

An authenticated administrator on EspoCRM instances prior to 9.3.10 can abuse the administrative Label Manager to read, modify, create, or delete JSON files outside the intended language directory by supplying crafted 'scope' and 'language' parameters. Exploitation requires a full administrator session (CVSS PR:H) and is bounded by filesystem permissions and server configuration, which limits the reachable files to those the PHP/web-server process can access, making this mainly a privilege-abuse and defense-in-depth concern rather than a path to arbitrary file compromise. Publicly available exploit code exists (the vendor's advisory and a fix commit were published), but there is no CISA KEV entry confirming active exploitation; EPSS data was not provided, so exploit likelihood should be treated as elevated but not critical.

RemediationAI

Upgrade EspoCRM to version 9.3.10, the first release containing the fix (vendor-released patch: 9.3.10, available at https://github.com/espocrm/espocrm/releases/tag/9.3.10); the upstream fix consists of commit 31540a04ca8ea96519c7dbf2d8d2273218e69ce6 and can be backported to custom forks by adding the string-type checks, the basename($scope) = $scope / basename($language) = $language guards, and the BadRequest exceptions in application/Espo/Controllers/LabelManager.php, plus the basename() sanitization of language and scope in application/Espo/Core/Utils/Language.php. Because the vulnerability is only reachable by an authenticated administrator, the highest-value compensating controls are reducing the number of admin accounts (enforce least privilege and rotate administrator credentials, since a compromised admin session is the sole precondition), restricting network access to the administrative panel (/api/v1/... and the admin UI) to trusted IP ranges via reverse-proxy ACLs or a VPN, and, where file-level hardening is possible, running the PHP/web-server process under a user whose write access is limited to the specific writable directories EspoCRM requires so that traversal cannot reach unrelated JSON files; each of these mitigations carries trade-offs, as IP allow-listing can disrupt legitimate remote administration and restrictive filesystem permissions can break legitimate cache/upload functionality. Also monitor EspoCRM logs for Label Manager requests containing path separators or '..' sequences in the scope or language parameters as a detection measure, and note that vendor advisories cited in the references (GHSA-jr5q-25fw-27f8) should be consulted for any updated guidance.

Affected VersionsENISA

espocrm < 9.3.10

Affected Packages

euvd espocrm fix: 9.3.10

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 flaw is a classic CWE-22 path traversal in the PHP-based EspoCRM application, specifically in the Label Manager administration feature. EspoCRM stores per-scope translation files as JSON under a language directory, and the vulnerable controller application/Espo/Controllers/LabelManager.php passed the user-supplied 'scope' and 'language' values from the postActionGetScopeList and saveLabels requests directly into the label manager tool. Downstream, application/Espo/Core/Utils/Language.php interpolated those same values into path strings such as 'languages/' . $language and str_replace('{language}', $this->currentLanguage, $this->customPath) . "/$scope.json", with no normalization or containment check. Because the parameters were only checked for emptiness (and not for string type), sequences such as '../' could escape the intended directory and reach arbitrary .json files within the process's reach. The upstream fix enforces type and format validation: the controller now rejects non-string values, throws BadRequest when scope/language are missing, and requires basename($scope) = $scope and basename($language) = $language; Language.php additionally applies basename() to the language and scope before building paths. The CPE record cpe:2.3:a:espocrm:espocrm:*:*:*:*:*:*:*:* with a wildcard version confirms the vendor/product identification, with the fixed boundary being the 9.3.10 release.

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

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

Admin-only Label Manager yields PR:H over the network (AV:N/AC:L); I raise C to L because the description explicitly permits reading JSON files, with I:H and A:L for file write/delete.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

2
Patch available
Oct 15, 2026 - 16:02 EUVD
CVE Published
Oct 15, 2026 - 14:56 cve.org
MEDIUM 5.5

DescriptionCVE.org

EspoCRM is an open source customer relationship management application. Prior to 9.3.10, an authenticated administrator can provide crafted input to the administrative Label Manager. Insufficient path validation allows traversal outside the intended directory and permits reading, modifying, creating, or deleting JSON files accessible to the application, subject to filesystem permissions and server configuration. This issue is fixed in version 9.3.10.

Threat Intelligence Overview

EPSS Score
0.3%
Top 75% exploitable
Prevalence
Low
niche open-source CRM, modest self-hosted footprint versus mainstream CRMs
Exploit
POC
Public exploit code exists
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 Yes
EPSS 0.3%
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
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

CVE-2014-7985 CRITICAL POC
10.0 Oct 31

Directory traversal vulnerability in EspoCRM before 2.6.0 allows remote attackers to include and execute arbitrary local

CVE-2026-47168 CRITICAL POC
9.1 Oct 15

PHP object deserialization in EspoCRM versions prior to 9.3.7 lets an authenticated administrator achieve remote code ex

CVE-2026-33656 CRITICAL POC
9.1 Apr 22

Path traversal in EspoCRM's formula scripting engine allows authenticated administrators to achieve arbitrary file read/

CVE-2022-38843 HIGH POC
8.8 Sep 16

EspoCRM version 7.1.8 is vulnerable to Unrestricted File Upload allowing attackers to upload malicious file with any ext

CVE-2019-14351 HIGH POC
8.8 Jul 28

EspoCRM 5.6.4 is vulnerable to user password hash enumeration. Rated high severity (CVSS 8.8), this vulnerability is rem

CVE-2020-37094 HIGH POC
8.6 Feb 03

Authorization bypass in EspoCRM 5.8.5 lets an authenticated low-privilege user reuse or manipulate Basic-Authorization a

CVE-2026-105833 HIGH POC
8.3 Oct 08

EspoCRM deployments before 10.0.5 allow an authenticated user with Email Account scope to retrieve other users' stored I

CVE-2022-38844 HIGH POC
8.0 Sep 16

CSV Injection in Create Contacts in EspoCRM 7.1.8 allows remote authenticated users to run system commands via creating

CVE-2026-53574 HIGH POC
7.6 Oct 15

Boolean-based blind SQL injection in EspoCRM versions 8.1.0 through 9.3.7 allows an authenticated non-administrator to i

CVE-2026-33733 HIGH POC
7.2 Apr 22

Path traversal in EspoCRM admin template management allows authenticated administrators to read, create, overwrite, or d

CVE-2026-88896 MEDIUM POC
6.9 Sep 10

Server-side request forgery in EspoCRM before 10.0.4 allows authenticated users to route outbound HTTP requests to inter

CVE-2026-33741 MEDIUM POC
6.8 May 19

Stored cross-site scripting in EspoCRM 9.3.3 and below enables an authenticated attacker to execute arbitrary JavaScript

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