Headline
CVE-2023-42817: [Bug]: Fix avoid recursion on replaced arguments having further % (#264) · pimcore/admin-ui-classic-bundle@abd7739
Pimcore admin-ui-classic-bundle provides a Backend UI for Pimcore. The translation value with text including “%s” (from “%suggest%) is parsed by sprintf() even though it’s supposed to be output literally to the user. The translations may be accessible by a user with comparatively lower overall access (as the translation permission cannot be scoped to certain “modules”) and a skilled attacker might be able to exploit the parsing of the translation string in the dialog box. This issue has been patched in commit abd77392
which is included in release 1.1.2. Users are advised to update to version 1.1.2 or apply the patch manually.
Expand Up
@@ -322,7 +322,7 @@ pimcore.settings.translation.domain = Class.create({
icon: "/bundles/pimcoreadmin/img/flat-color-icons/delete.svg",
handler: function (grid, rowIndex) {
let data = grid.getStore().getAt(rowIndex);
pimcore.helpers.deleteConfirm(t(‘translation’), Ext.util.Format.htmlEncode(data.data.key), function () {
pimcore.helpers.deleteConfirm(t(‘translation’).toLowerCase(), Ext.util.Format.htmlEncode(data.data.key), function () {
grid.getStore().removeAt(rowIndex);
}.bind(this));
}.bind(this)
Expand Down
Related news
### Impact The translation value with text including “%s” (from “%suggest%) is parsed by sprintf() even though it’s supposed to be output literally to the user. The translations may be accessible by a user with comparatively lower overall access (as the translation permission cannot be scoped to certain “modules”) and a skilled attacker might be able to exploit the parsing of the translation string in the dialog box. ### Patches https://github.com/pimcore/admin-ui-classic-bundle/commit/abd7739298f974319e3cac3fd4fcd7f995b63e4c.patch ### Workarounds Update to version 1.1.2 or apply this patches manually https://github.com/pimcore/admin-ui-classic-bundle/commit/abd7739298f974319e3cac3fd4fcd7f995b63e4c.patch