ZeroHour

CVE-2026-55220

moderate

Unsafe PHP deserialization in Pimcore Hotspotimage fields enables gadget-chain RCE

CVSS 4.0
9.3 critical
EPSS
<1%p41
Published
()
Modified
AI analysis

CVE-2026-55220 is a PHP deserialization weakness (CWE-502) in the DataObject Hotspotimage field handler of the Pimcore Data & Experience Management Platform: when JSON decoding of the stored __hotspots object-store column fails, Hotspotimage::getDataFromResource() passes the raw column contents to Pimcore\Tool\Serialize::unserialize() with no allowed-classes restriction. Triggering the flaw requires an attacker who already has a separate capability to write crafted PHP-serialized bytes into that column; the payload then fires when an affected DataObject is loaded. Because deserialization is unrestricted, the attacker can instantiate available classes and trigger magic methods, achieving arbitrary file writes or code execution through gadget chains bundled with the application. All Pimcore deployments running versions before 11.5.19, 12.3.10, or 2026.1.6 (per release branch) that use Hotspotimage data-object fields are affected. No public proof-of-concept is known, the issue is not in CISA KEV, and EPSS currently puts the 30-day exploitation probability at 0.5%.

What to do: Upgrade to Pimcore 11.5.19, 12.3.10, or 2026.1.6 depending on your release branch. Restrict direct database write access to the DataObject object-store tables (particularly the __hotspots column) and audit which users or integrations hold such access, since exploitation depends on a separate write capability. Note that the June fix changed only the Hotspotimage caller, while ImageGallery, Block, and Video fields retain the same unrestricted-unserialize fallback pattern, so treat those field types as residual risk until a broader fix lands.

Affected
Pimcore (Open Source Data & Experience Management Platform)All versions prior to 11.5.19, 12.3.10, and 2026.1.6 (i.e., 11.x before 11.5.19, 12.x before 12.3.10, and 2026.x before 2026.1.6)
Estimated exposure
moderateon the order of tens of thousands of Pimcore deployments worldwide, with the directly exploitable subset (data classes using Hotspotimage fields plus a… — Pimcore is a specialized open-source PIM/DAM/CMS with a developer-oriented install base typically estimated in the tens of thousands of deployments, and only instances that define Hotspotimage object fields and expose a database write…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Pimcore is an Open Source Data & Experience Management Platform. Prior to 11.5.19, 12.3.10, and 2026.1.6, Pimcore\Model\DataObject\ClassDefinition\Data\Hotspotimage::getDataFromResource() in models/DataObject/ClassDefinition/Data/Hotspotimage.php passes the field __hotspots object-store column to Pimcore\Tool\Serialize::unserialize() without an allowed-classes restriction after JSON decoding fails. An attacker with a separate capability to write crafted PHP serialized bytes into that column can instantiate available classes and trigger magic methods when an affected DataObject is loaded, which can produce arbitrary file writes or code execution through bundled gadget chains. The related ImageGallery, Block, and Video callers use the same fallback pattern, but the identified June fix changes the Hotspotimage caller only. This issue is fixed for Hotspotimage in versions 11.5.19, 12.3.10, and 2026.1.6.

Weakness
CWE-502
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.