Плагин Layouts for WPBakery для WordPress уязвим для несанкционированных действий из-за отсутствия проверки возможности обратного вызова Layouts_WPB_Remote::template_sync(), зарегистрированного через wp_ajax_nopriv_handle_sync во всех версиях до 1.1.3 включительно. Это позволяет неаутентифицированным злоумышленникам заставить сервер WordPress выдавать исходящие HTTP-запросы к внешнему API поставщика плагина (`https://www.layoutsforwpbakery.com/wp-json/layoutsforwpbakery/v1/{templates,categories}`) и дословно записывать ответы в формате JSON в таблицу `wp_options` сайта через `set_transient()` — в любом случае, выбранном злоумышленником, без проверки nonce, проверки возможностей или ограничения скорости.
Показать оригинальное описание (EN)
The Layouts for WPBakery plugin for WordPress is vulnerable to unauthorized actions due to a missing capability check on the `Layouts_WPB_Remote::template_sync()` callback registered via `wp_ajax_nopriv_handle_sync` in all versions up to, and including, 1.1.3. This makes it possible for unauthenticated attackers to force the WordPress server to issue outbound HTTP requests to the plugin vendor's external API (`https://www.layoutsforwpbakery.com/wp-json/layoutsforwpbakery/v1/{templates,categories}`) and to write the JSON-decoded responses verbatim into the site's `wp_options` table via `set_transient()` — at any rate the attacker chooses, with no nonce verification, capability check, or rate limiting.
Характеристики атаки
Последствия
Строка CVSS v3.1