Плагин WPForms Pro для WordPress уязвим к сохраненным межсайтовым сценариям с использованием значений однострочного текста и текстовых полей абзаца во всех версиях до 2.0.0.2 включительно из-за недостаточной очистки ввода и экранирования вывода. Это позволяет неаутентифицированным злоумышленникам внедрять произвольные веб-скрипты на страницы, которые будут выполняться всякий раз, когда пользователь обращается к внедренной странице. Эксплойт основан на собственном фильтре wp_kses_allowed_html плагина, расширяющем список разрешений «post», чтобы разрешить элементы iframe с атрибутом data-src, которого нет в списке очистки атрибутов URI WordPress, что позволяет javascript: URI, хранящемуся в data-src, выдерживать обработку kses и впоследствии повышаться до активного атрибута src с помощью встроенного административного скрипта view-entry.min.js.
Показать оригинальное описание (EN)
The WPForms Pro plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Single Line Text and Paragraph Text Field Values in all versions up to, and including, 2.0.0.2 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The exploit relies on the plugin's own wp_kses_allowed_html filter widening the 'post' allowlist to permit iframe elements with a data-src attribute, which is not on WordPress's URI-attribute sanitization list, allowing a javascript: URI stored in data-src to survive kses processing and subsequently be promoted to a live src attribute by the bundled admin script view-entry.min.js.
Характеристики атаки
Последствия
Строка CVSS v3.1