🇰🇷 한글 설명
Pimcore 플랫폼의 특정 엔드포인트에서 데이터 객체 필드 이름을 검증할 때 식별자 허용 목록을 사용하지 않아 발생하는 취약점입니다. 인증된 사용자가 특수 문자를 삽입하여 PHP 코드를 실행하거나 SQL 구문을 조작할 수 있는 심각한 보안 결함입니다.
💡 쉬운 설명
권한이 있는 사용자가 시스템의 규칙을 어기고 악성 코드를 몰래 끼워 넣을 수 있는 문제입니다. 이 코드가 실행되면 해커가 서버를 마음대로 조종하거나 데이터베이스를 망가뜨릴 수 있습니다.
🇺🇸 원문 (English)
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.
📍 영향받는 시스템
Pimcore 11.5.19 미만, 12.3.10 미만, 2026.1.6 미만 버전
⚔️ 공격 벡터
인증된 사용자가 API를 통해 특수 문자가 포함된 필드 이름을 전송하여 PHP 코드 주입 및 SQL 인젝션 수행
🛡️ 대응 방법
Pimcore를 최신 보안 패치 버전(11.5.19, 12.3.10, 2026.1.6 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 취약점이 해결된 버전(11.5.19, 12.3.10, 2026.1.6 이상)인지 확인합니다.
composer show pimcore/pimcore | grep 'versions'