Description
EspoCRM before 10.0.4 is vulnerable to server-side request forgery. HostCheck::ipAddressIsNotInternal(), which validates outbound URLs to block requests to internal/private IP addresses, strips ::ffff: (IPv4-mapped IPv6) prefixes but does not recognize IPv6 transition addresses that embed private IPv4 addresses: NAT64 (64:ff9b::), 6to4 (2002::), and Teredo (2001:0000::). An attacker who controls a domain with AAAA records pointing to such transition addresses can bypass both the internal-host validation and the CURLOPT_RESOLVE IP-pinning check, causing EspoCRM to issue outbound requests to internal network services. Affected paths include POST /Attachment/fromImageUrl, reachable by any authenticated user with attachment access, and outbound webhook delivery, which requires an admin or API user.
Published: 2026-09-10
Score: 6.9 Medium
EPSS: n/a
KEV: No
Impact: Server‑side request forgery
Action: Apply Patch
AI Analysis

Impact

EspoCRM versions prior to 10.0.4 allow an attacker who can control a domain with IPv6 transition address records to bypass internal IP filtering. The HostCheck component removes the ::ffff: prefix from IPv4‑mapped IPv6 addresses but fails to recognize NAT64 (64:ff9b::), 6to4 (2002::) and Teredo (2001::) addresses that embed private IPv4 addresses. An attacker can therefore supply a URL that resolves to one of these transition addresses, causing EspoCRM to issue an outbound request to an internal or private IP space. The internal‑host checks and CURLOPT_RESOLVE IP‑pinning are both bypassed, enabling server‑side request forgery (CWE‑918). The exposed paths are POST /Attachment/fromImageUrl, which any authenticated user with attachment permission can reach, and outbound webhook delivery, which requires an admin or API user.

Affected Systems

EspoCRM systems running software versions earlier than 10.0.4. The vulnerability is present in any deployment of EspoCRM before the 10.0.4 release, regardless of operating system or hosting environment, and affects endpoints that process outbound URLs, notably /Attachment/fromImageUrl for authenticated users with attachment access and webhook delivery for administrators or API users.

Risk and Exploitability

The assigned CVSS score of 6.9 indicates moderate severity, and no EPSS value is available, suggesting a currently unknown exploitation probability. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is an attacker who can control a domain with AAAA records pointing to an IPv6 transition address; such a domain can be used to craft URLs that bypass the internal host checks. Successful exploitation would allow the attacker to force EspoCRM to contact internal network services, potentially exposing sensitive data or manipulating internal services. The impact is limited to systems where the vulnerable endpoints are enabled and the attacker can obtain either standard user or admin privileges to trigger the outbound requests.

Generated by OpenCVE AI on September 10, 2026 at 14:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade EspoCRM to version 10.0.4 or later to apply the corrected HostCheck logic that properly validates IPv6 transition addresses.
  • If an immediate upgrade is not possible, restrict the POST /Attachment/fromImageUrl endpoint to trusted domains or disable it for non‑trusted users, thereby preventing abuse of uncontrolled external image URLs.
  • Configure outbound webhook delivery to allow only whitelisted domains and require administrator approval before new webhooks are added, eliminating the risk of unauthorized internal requests from third‑party services.

Generated by OpenCVE AI on September 10, 2026 at 14:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 10 Sep 2026 13:30:00 +0000

Type Values Removed Values Added
Description EspoCRM before 10.0.4 is vulnerable to server-side request forgery. HostCheck::ipAddressIsNotInternal(), which validates outbound URLs to block requests to internal/private IP addresses, strips ::ffff: (IPv4-mapped IPv6) prefixes but does not recognize IPv6 transition addresses that embed private IPv4 addresses: NAT64 (64:ff9b::), 6to4 (2002::), and Teredo (2001:0000::). An attacker who controls a domain with AAAA records pointing to such transition addresses can bypass both the internal-host validation and the CURLOPT_RESOLVE IP-pinning check, causing EspoCRM to issue outbound requests to internal network services. Affected paths include POST /Attachment/fromImageUrl, reachable by any authenticated user with attachment access, and outbound webhook delivery, which requires an admin or API user.
Title EspoCRM before 10.0.4 SSRF via IPv6 Transition Address Bypass
First Time appeared Espocrm
Espocrm espocrm
Weaknesses CWE-918
CPEs cpe:2.3:a:espocrm:espocrm:*:*:*:*:*:*:*:*
Vendors & Products Espocrm
Espocrm espocrm
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N'}

cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:L'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-10T13:05:43.054Z

Reserved: 2026-09-10T11:28:50.297Z

Link: CVE-2026-88896

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-09-10T14:17:19.050

Modified: 2026-09-10T15:13:07.090

Link: CVE-2026-88896

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-10T15:00:15Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)