Плагин ShortPixel Image Optimizer для WordPress уязвим к хранимому межсайтовому сценарию через вложение post_title во всех версиях до 6.4.3 включительно. Это связано с недостаточным экранированием вывода в функции getEditorPopup() и соответствующем ей шаблоне media-popup.php. В частности, post_title вложения извлекается из базы данных с помощью get_post() в AjaxController.php (строка 435) и передается непосредственно в шаблон представления (строка 449), где он преобразуется в атрибут value элемента ввода HTML без экранирования esc_attr() (строка media-popup.php 139).
Поскольку WordPress позволяет авторам устанавливать произвольные заголовки вложений (включая символы двойных кавычек) через REST API, злонамеренный автор может создать заголовок вложения, который выходит за рамки атрибута HTML и внедряет произвольные обработчики событий JavaScript. Это позволяет аутентифицированным злоумышленникам с уровнем доступа «Автор» и выше внедрять произвольные веб-скрипты, которые выполняются всякий раз, когда пользователь с более высокими привилегиями (например, администратор) открывает всплывающее окно редактора AI ShortPixel («Удаление фона» или «Увеличение изображения») для отравленного вложения.
Показать оригинальное описание (EN)
The ShortPixel Image Optimizer plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the attachment post_title in all versions up to, and including, 6.4.3. This is due to insufficient output escaping in the getEditorPopup() function and its corresponding media-popup.php template. Specifically, the attachment's post_title is retrieved from the database via get_post() in AjaxController.php (line 435) and passed directly to the view template (line 449), where it is rendered into an HTML input element's value attribute without esc_attr() escaping (media-popup.php line 139). Since WordPress allows Authors to set arbitrary attachment titles (including double-quote characters) via the REST API, a malicious author can craft an attachment title that breaks out of the HTML attribute and injects arbitrary JavaScript event handlers. This makes it possible for authenticated attackers, with Author-level access and above, to inject arbitrary web scripts that execute whenever a higher-privileged user (such as an administrator) opens the ShortPixel AI editor popup (Background Removal or Image Upscale) for the poisoned attachment.
Характеристики атаки
Последствия
Строка CVSS v3.1