Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconGain admin credentials via phishing or compromise
-
DeliveryAuthenticate to EspoCRM web interface
-
ExploitAccess formula scripting engine
-
InstallCraft Attachment update with traversal payload in sourceId
-
C2Trigger getFilePath() concatenation
-
ExecuteExecute arbitrary file read/write
-
ImpactExfiltrate config data or deploy webshell
-
Step 8Establish persistent access
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 authenticated access with administrative privileges (PR:H in CVSS vector) to EspoCRM's formula scripting interface where Attachment entity manipulation is permitted. The vulnerability specifically requires the ability to update the sourceId field on Attachment objects through the formula engine, which is an admin-level capability in EspoCRM's default role-based access control configuration. Exploitation is limited to files within the web server's PHP open_basedir restriction scope - if open_basedir is tightly configured, traversal impact is constrained to that directory tree. No additional user interaction or non-default configuration is required once admin access is achieved. Network-accessible attack vector (AV:N) means the exploitation can occur remotely over HTTP/HTTPS without local shell access to the server. |
| Impact | Real-world risk is significant but contextually limited. The CVSS 9.1 Critical rating reflects maximum confidentiality, integrity, and availability impact with Changed scope, indicating an authenticated admin can read sensitive configuration files, overwrite application code for webshells, or corrupt critical data structures. However, the PR:H requirement means only users with administrative privileges can exploit this - the threat model is primarily malicious insiders, compromised admin accounts, or chained attacks where initial access is gained through separate vulnerabilities. The Changed scope is particularly concerning as it suggests filesystem operations can escape application-level sandboxing within open_basedir limits. Publicly available exploit code (GitHub security advisory GHSA-7922-x7cf-j54x) lowers the skill barrier for exploitation. EPSS score was not provided in the intelligence data, preventing assessment of observed exploitation probability. No CISA KEV listing indicates this is not currently exploited at scale in the wild. The vendor-released patch in version 9.3.4 provides clear remediation path. Organizations should prioritize this based on: (1) whether admin accounts could be compromised through phishing or credential reuse, (2) multi-tenant deployments where Changed scope has broader blast radius, and (3) environments where EspoCRM runs with elevated filesystem permissions beyond typical web application sandboxing. |
| Exploit ScenarioDerived | A malicious administrator or attacker with compromised admin credentials logs into EspoCRM and accesses the formula scripting interface. Using the built-in formula engine, they craft an update operation targeting an Attachment entity, setting the sourceId field to a path traversal payload like '../../../config/config.php' or '../../../../var/www/html/shell.php'. When EspoCRM's getFilePath() method processes this manipulated sourceId, the unsanitized input is concatenated directly into filesystem operations, allowing the attacker to read sensitive configuration files containing database credentials, overwrite application code with a webshell for persistent access, or corrupt critical system files to cause denial of service. Public exploit code from the GitHub advisory provides ready-to-use proof-of-concept, lowering technical barriers. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
Path traversal in EspoCRM's formula scripting engine allows authenticated administrators to achieve arbitrary file read/write on the web server by manipulating attachment sourceId fields. The vulnerability chains unsanitized user input with filesystem operations, enabling admins to overwrite or access files anywhere within PHP's open_basedir restriction. Publicly available exploit code exists. Vendor-released patch version 9.3.4 addresses this critical issue. Despite the 9.1 CVSS score and Changed scope indicating potential container escape or cross-tenant impact, EPSS data was not provided to assess real-world exploitation likelihood.
RemediationAI
Upgrade EspoCRM to version 9.3.4 or later, which implements input sanitization in the getFilePath() method to prevent path traversal attacks on sourceId fields. The vendor advisory at https://github.com/espocrm/espocrm/security/advisories/GHSA-7922-x7cf-j54x contains upgrade instructions and patch details. If immediate patching is not feasible, implement compensating controls: restrict administrative access through multi-factor authentication and principle of least privilege to minimize insider threat surface; configure PHP open_basedir directives as restrictively as possible to limit filesystem access scope even if traversal succeeds; enable comprehensive file integrity monitoring on the web server to detect unauthorized modifications to application files or configuration; audit formula scripts created by administrators for suspicious file path manipulation patterns. Note that access restrictions only reduce attack surface - they do not eliminate the vulnerability, and determined attackers with legitimate admin credentials can still exploit the flaw. Deploy the vendor patch as the only complete remediation.
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
EspoCRM implements a built-in formula scripting engine for business logic automation. The vulnerability exists in the attachment handling subsystem where the getFilePath() method in EspoUploadDir directly concatenates user-controlled sourceId values into filesystem paths without validation or sanitization. This is a classic CWE-22 path traversal vulnerability where an attacker can inject directory traversal sequences like '../' to escape intended directory boundaries. The CVSS vector shows Changed Scope (S:C), indicating the vulnerability can affect resources beyond its security scope - in this context, the formula engine's trust boundary is violated to access the broader filesystem. The attack requires high privileges (PR:H) as administrative access to EspoCRM is necessary to manipulate Attachment entities through the formula interface, but once authenticated the attack has low complexity (AC:L) with no user interaction required.
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
AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
4DescriptionGitHub Advisory
EspoCRM is an open source customer relationship management application. Prior to version 9.3.4, EspoCRM's built-in formula scripting engine allowing updating attachment's sourceId thus allowing an authenticated admin to overwrite the sourceId field on Attachment entities. Because sourceId is concatenated directly into a file path with no sanitization in EspoUploadDir::getFilePath(), an attacker can redirect any file read or write operation to an arbitrary path within the web server's open_basedir scope. Version 9.3.4 fixes the issue.
Articles & Coverage 1
Executive ViewAI
CVE-2026-33656 is a critical path traversal vulnerability in EspoCRM's formula scripting engine that enables authenticated administrators to read and write arbitrary files on the web server, potentially compromising sensitive data, application integrity, and cross-tenant environments. With publicly available exploit code and a 9.1 CVSS score, this vulnerability poses an immediate risk to organizations using EspoCRM and should be treated as a priority remediation.
Apply vendor patch version 9.3.4. Until patching is complete: disable or restrict access to formula scripting functionality in EspoCRM administrative interfaces; implement file integrity monitoring on web server directories to detect unauthorized modifications; enhance logging and monitoring of administrator activities; consider network segmentation to limit lateral movement from compromised admin accounts.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
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
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
Information disclosure in EspoCRM's portal Note API allows an authenticated portal user (CVSS PR:L) who already has stre
EUVD-2026-25081
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB