Pimcore Admin Classic Bundle SQL Injection Vulnerability in Translation Grid Date Filter
The Pimcore admin-ui-classic-bundle is vulnerable to SQL injection via the translation grid date filter; the user-supplied `property` field from the filter JSON is interpolated directly into a SQL expression without proper sanitization or validation, potentially leading to arbitrary database data extraction and remote code execution when chained with other vulnerabilities.
The pimcore/admin-ui-classic-bundle version 2.3.5 and earlier contains an SQL injection vulnerability within the translation grid’s date filter functionality. This flaw arises because the property parameter, supplied by a user through a JSON filter, is incorporated directly into a SQL expression without sufficient sanitization or validation. Specifically, the str_replace('--', '') sanitization applied is easily bypassed, allowing malicious SQL code to be injected. Successful exploitation allows an authenticated user with the necessary permissions to extract sensitive information from the database. Furthermore, when combined with another vulnerability (GM-249, an unsafe unserialize), it can lead to remote code execution.
Attack Chain
- An attacker authenticates to the Pimcore application with translation view permissions.
- The attacker crafts a malicious POST request to
/admin/translation/translationswith a JSON payload containing adatetype filter. - The
propertyfield in the filter is manipulated to contain SQL injection payloads, such as1))) UNION SELECT password FROM users WHERE ((1. - The application’s
src/Controller/Admin/TranslationController.phpprocesses the request, extracting the maliciouspropertyvalue at line 565. - The inadequate sanitization
str_replace('--', '', $fieldname)at line 569 is bypassed using techniques like comment injection (/**/) or redundant dashes (----). - At line 593, the unsanitized
$fieldnameis interpolated into a SQL expression:UNIX_TIMESTAMP(DATE(FROM_UNIXTIME({$fieldname}))). - The application executes the crafted SQL query against the database.
- The attacker receives the results of the SQL injection, potentially including sensitive data. Chaining with GM-249 allows for RCE.
Impact
Successful exploitation of this SQL injection vulnerability (CVE-2026-44741) can lead to unauthorized data extraction from the Pimcore database by an attacker with translation view permissions. The combination of this SQL injection with the GM-249 unsafe unserialize vulnerability can lead to full remote code execution. The vulnerability affects pimcore/admin-ui-classic-bundle version 2.3.5 and earlier.
Recommendation
- Apply the vendor-supplied patch or upgrade to a version of
pimcore/admin-ui-classic-bundlegreater than 2.3.5 to remediate CVE-2026-44741. - Implement input validation on the
propertyfield in the translation grid date filter to only allow expected column names, as suggested in the provided fix (see “Suggested Fix” section in content). - Deploy the Sigma rule “Detect CVE-2026-44741 Exploitation Attempt — Pimcore Translation Grid SQL Injection” to detect potential exploitation attempts (see “rules” section).
- Monitor web server logs for POST requests to
/admin/translation/translationswith suspicious characters or SQL syntax in thefilterparameter.
Detection coverage 2
Detect CVE-2026-44741 Exploitation Attempt — Pimcore Translation Grid SQL Injection
highDetects CVE-2026-44741 exploitation attempts — HTTP POST requests to /admin/translation/translations with SQL injection attempts in the filter parameter.
Detect CVE-2026-44741 Exploitation Attempt — Pimcore Translation Grid SQL Injection (Comment Bypass)
mediumDetects CVE-2026-44741 exploitation attempts — HTTP POST requests to /admin/translation/translations with SQL injection attempts in the filter parameter using comment bypass techniques.
Detection queries are available on the platform. Get full rules →