Сразу две уязвимости были обнаружены в плагине Jupiter X Core для сайтов WordPress и WooCommerce. Баги позволяют захватывать чужие учетные записи, а также загружать файлы без аутентификации.
Jupiter X Core представляет собой визуальный редактор, входящий в состав темы Jupiter X, которая используется более чем на 172 000 сайтов.
Исследователи из компании Patchstack, специализирующейся на безопасности WordPress, обнаружили сразу две критические уязвимости в плагине и сообщили о них ArtBee, разработчику Jupiter X Core. В итоге в настоящее время проблемы уже устранены.
Первая уязвимость получила идентификатор CVE-2023-38388 и позволяла загружать файлы без аутентификации, что могло привести к выполнению произвольного кода на сервере. Проблема затрагивает все версии JupiterX Core, начиная с версии 3.3.5 и ниже. Уязвимость исправлена в версии 3.3.8.
CVE-2023-38388 была связана с тем, что в функции upload_files, которую любой желающий может вызвать через фронтэнд, отсутствовали проверки аутентификации. Такая проверка была добавлена в вышедшем патче, а также сообщается, что теперь будут предотвращаться загрузки файлов потенциально опасного типа.
Вторая уязвимость, CVE-2023-38389, позволяет неаутентифицированным злоумышленникам получить контроль над любой учетной записью пользователя WordPress, если известен его email-адрес. Проблема получила статус критической (9,8 балла по шкале CVSS) и затрагивает все версии Jupiter X Core, начиная с 3.3.8 и ниже. Уязвимость исправлена в версии 3.4.3.
В данном случае проблема заключалась в том, что функция ajax_handler, задействованная в процессе входа через Facebook* , позволяла неаутентифицированному пользователю устанавливать произвольное метазначение social-media-user-facebook-id для любого пользователя WordPress (посредством функции set_user_facebook_id).
Поскольку это метазначение используется для аутентификации пользователей в WordPress, злоумышленник может использовать это для аутентификации под видом любого зарегистрированного на сайте пользователя, включая администраторов. Нужно было лишь использовать корректный адрес электронной почты.
Теперь всем пользователям JupiterX Core рекомендуется как можно скорее обновить плагин до версии 3.4.3, чтобы снизить риски, связанные с этими двумя уязвимостями.
* Запрещен в России. Принадлежит Meta Platforms, деятельность которой признана экстремисткой и запрещена в России.