Плагин Debugger & Troubleshooter для WordPress был уязвим для неаутентифицированного повышения привилегий в версиях до 1.3.2 включительно. Это произошло из-за того, что плагин принимал значение файла cookie wp_debug_troubleshoot_simulate_user непосредственно в качестве идентификатора пользователя без каких-либо криптографических проверок или проверок авторизации. Значение файла cookie использовалось для переопределения фильтра define_current_user, который позволял неаутентифицированным злоумышленникам выдавать себя за любого пользователя, просто установив в файле cookie идентификатор целевого пользователя.
Это позволило злоумышленникам, не прошедшим проверку подлинности, получить доступ на уровне администратора и выполнять любые привилегированные действия, включая создание новых учетных записей администратора, изменение содержимого сайта, установку плагинов или получение полного контроля над сайтом WordPress. Уязвимость была устранена в версии 1.4.0 путем внедрения системы проверки на основе криптографических токенов, в которой только администраторы могут инициировать моделирование пользователя, а файл cookie содержит случайный 64-значный токен, который необходимо проверять на соответствие хранящимся в базе данных сопоставлениям, а не принимать произвольные идентификаторы пользователей.
Показать оригинальное описание (EN)
The Debugger & Troubleshooter plugin for WordPress was vulnerable to Unauthenticated Privilege Escalation in versions up to and including 1.3.2. This was due to the plugin accepting the wp_debug_troubleshoot_simulate_user cookie value directly as a user ID without any cryptographic validation or authorization checks. The cookie value was used to override the determine_current_user filter, which allowed unauthenticated attackers to impersonate any user by simply setting the cookie to their target user ID. This made it possible for unauthenticated attackers to gain administrator-level access and perform any privileged actions including creating new administrator accounts, modifying site content, installing plugins, or taking complete control of the WordPress site. The vulnerability was fixed in version 1.4.0 by implementing a cryptographic token-based validation system where only administrators can initiate user simulation, and the cookie contains a random 64-character token that must be validated against database-stored mappings rather than accepting arbitrary user IDs.
Характеристики атаки
Последствия
Строка CVSS v3.1