EspoCRM Arbitrary User Creation Vulnerability via Stored SVG Injection and CSRF

Vulnerability

A vulnerability in EspoCRM allows for arbitrary user creation, including administrative accounts, in versions prior to 9.1.9. This issue arises from a combination of stored SVG injection and inadequate Cross-Site Request Forgery (CSRF) protection. An attacker with Knowledge Base edit permissions can insert a malicious SVG link into an article's body. When clicked by an authenticated user, the link redirects to an attacker-controlled HTML page that executes a CSRF request to the api/v1/User endpoint. If the victim enters their credentials, an account is created with privileges defined by the CSRF payload.

Impact

Exploitation of this vulnerability allows for arbitrary user creation with attacker-defined attributes, including administrative rights. If an administrator is tricked into clicking the malicious link, the attacker gains full control over the system.

Reproduction

To reproduce this vulnerability, an attacker must have Knowledge Base edit permissions. They can embed a malicious SVG payload into the body field of an article. This payload should include a link to an attacker-controlled HTML page that, when accessed, automatically submits a CSRF request to the api/v1/User endpoint, creating a user account with specified attributes.

Remediation

Users are advised to update to EspoCRM version 9.1.9 or later. Additionally, SVG and HTML rendering in user-editable fields should be sanitized and restricted. Origin or Referer headers should be validated for requests to the api/v1/User endpoint, and administrative actions should be restricted to trusted domains via Content Security Policy.

Added: Oct 14, 2025, 3:21 PM
Updated: Oct 14, 2025, 11:20 PM

Vulnerability Rating

Custom Algorithm
spread
3.1
impact
5.0
exploitability
6.3
remediation
7.9
relevance
0.7
threat
6.4
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.