Уязвимости в WordPress и WooCommerce позволяют перехватить контроль над сайтом

image

Для успешной эксплуатации уязвимости злоумышленнику потребуется получить доступ к учетной записи пользователя в роли «Shop Manager».

Воспользовавшись недоработкой в дизайне системы разрешений WordPress и уязвимостью в популярном плагине для электронной коммерции WooCommerce, злоумышленники могут полностью перехватить управление сайтами на WordPress, предупредил специалист компании RIPS Tech Саймон Скеннелл (Simon Scannell).

При установке плагинов, использующих различные роли, вместо создания собственной системы аутентификации они задействуют систему разрешений WordPress. Плагины создают новые роли с различными возможностями WordPress, а затем используют собственные функции для ограничения взаимодействия данных ролей с другими пользователями или настройками. По словам исследователя, при установке плагин WooCommerce содает роль «Shop Manager», обладающую разрешением «edit_users». Данная возможность позволяет пользователям редактировать любую учетную запись, в том числе администратора. Для предотвращения злоупотреблений в WooCommerce предусмотрена функция, запрещающая роли «Shop Manager» вносить изменения в аккаунты, связанные с администратором.

Проблема заключается в том, что при отключении плагина WooCommerce пользователи в роли «Shop Manager» могут редактировать пользователей в роли администратора. Отключить плагин возможно из учетной записи администратора либо удалив связанные с плагином файлы.

Проанализировав код WooCommerce, Скеннелл обнаружил уязвимость (версии WooCommerce 3.4.5 и более ранние), позволяющую пользователю в роли «Shop Manager» удалить основной файл плагина. В таком случае загрузка WooCommerce станет невозможной и WordPress отключит его. После деактивации плагина «Shop Manager» получит возможность редактировать любого пользователя, включая учетную запись администратора. Таким образом атакующий сможет получить полный доступ к сайту. Для успешной эксплуатации уязвимости злоумышленнику потребуется получить доступ к учетной записи пользователя в роли «Shop Manager», например, воспользовавшись XSS-уязвимостями или с помощью фишинговых атак.

Пример атаки продемонстрирован в видео ниже.


Telegram Подписывайтесь на канал "SecurityLab" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.