Description
Pimcore is an Open Source Data & Experience Management Platform. Prior to 11.5.19, 12.3.10, and 2026.1.6, the class-definition import endpoint /pimcore-studio/api/class/definition/configuration-view/detail/{id}/import accepts a DataObject field name that is emitted without an identifier allowlist by lib/DataObject/ClassBuilder/FieldDefinitionPropertiesBuilder.php into generated PHP properties and by models/DataObject/ClassDefinition/Helper/Dao.php into ALTER TABLE identifiers. An authenticated user with the objects permission can inject PHP syntax into the generated DataObject class, causing attacker-controlled code in generated var/classes/DataObject/.php files to run when an object of that class is instantiated, and can also inject SQL identifier content into schema-changing statements. The central models/DataObject/ClassDefinition/Data.php::setName() validation did not reject semicolons, braces, backticks, spaces, or other non-identifier characters. This issue is fixed in versions 11.5.19, 12.3.10, and 2026.1.6.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
pimcore pimcore
< 11.5.19affected>= 12.0.0-RC1, < 12.3.10affected>= 2026.1.0, < 2026.1.6affected
References
- https://github.com/pimcore/pimcore/security/advisories/GHSA-9x44-4gxf-8c25 ↗
- https://github.com/pimcore/pimcore/pull/19183 ↗
- https://github.com/pimcore/pimcore/commit/a4f8c3cfee58b7d5fe4873d67782eff58dae9b9d ↗
- https://github.com/advisories/GHSA-r2f4-ff2p-xc64 ↗
- https://github.com/pimcore/pimcore/releases/tag/v2026.1.6 ↗