Специалисты компании RIPS Technologies обнаружили проблему, связанную с работой WordPress и популярного e-commerce плагина WooCommerce, созданного фирмой Automattic. Согласно официальной статистике, это решение было загружено более четырех миллионов раз и насчитывает примерно столько же активных установок.

Исследователи объясняют, что проблем здесь сразу две. Первая проблема заключается в том, что когда для WordPress устанавливается плагин, в котором используются разные роли для пользователей, он не создает собственную систему аутентификации, но использует существующую систему привилегий CMS. Для этого плагин создает новую роль с новыми возможностями WordPress, а затем ограничивает ее взаимодействие с настройками CMS и другими пользователями посредством собственных функций.

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

Казалось бы, разработчики WooCommerce предусмотрели функцию, запрещающую пользователям с данной ролью вмешиваться в профили администраторов. Но из-за недочета в работе системы управления привилегиями плагинов, при отключении WooCommerce ограничивающая «менеджеров магазина» функция перестает действовать, и пользователи с этой ролью могут свободно редактировать учетные записи других пользователей.

В итоге единственным надежным способом отключения плагина становится его отключение со стороны администратора, а лучше удаление всех его файлов. И здесь в дело вступает вторая проблема.

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

Исследователи объясняют, что в такой ситуации для атакующего не составит труда захватить аккаунт администратора, а значит и контроль над всем сайтом. Видео ниже демонстрирует сочетание двух описанных проблем в деле.

Специалисты подчеркивают, что для успешной эксплуатации данной схемы, атакующему понадобится иметь доступ к аккаунту с ролью Shop manager. Однако это, по мнению исследователей, достижимо посредством XSS-уязвимостей или фишинговых атак.

Разработчики WooCommerce уже устранили проблему, выпустив новую версию плагина (3.4.6). Так как автоматическое обновление плагинов включено далеко не у всех, эксперты рекомендуют пользователям проверить обновления и убедиться, что они работают с новейшей версий WooCommerce.

5 комментариев

  1. petrozavodsky

    07.11.2018 at 21:59

    1) По порядку «популярного e-commerce плагина WooCommerce, ̶с̶о̶з̶д̶а̶н̶н̶о̶г̶о̶ фирмой Automattiс» — максимум купленного что уже как бы говорит о качестве контента на хакере.

    2) «Специалисты подчеркивают, что для успешной эксплуатации данной схемы, атакующему понадобится иметь доступ к аккаунту с ролью Shop manager.» — Плюс активированный и отключенный woocommerce нужной версии и еще заблокированные автоматические обновления которые по дефолту включены и отключаются только программно и из коробки этого вобще нельзя сделать

    3) «Однако это, по мнению исследователей, достижимо посредством XSS-уязвимостей или фишинговых атак.» -тут следует перефразировать так «Однако это, по не основному не на чем мнению исследователей» тогда будет правдоподобнее звучать.

    Итого с первых строк статья вводит в заблуждение заголовок не соответствует содержанию, описываемая уязвимость возможна только при стечении обстоятельств когда:

    — Установлен woocommerce старой версии.
    — woocommerce удален на момент атаки
    — Невозможно авто обновлениеплагинов
    — плюс сайт до этого скомпрометирован фишинговой ибо потенциальная xss уязвимость приданных вводных нигде не описана на момент написания статьи.

    Карл ФИШИНГОВОЙ АТАКОЙ, вопрос про вероятность совпадения всех этих факторов отбросим вовсе, ибо какой вобще вектор эксплуатации этой уязвимости место если она предполагает фишинговую атаку на аккаунт менеджера магазина, почему сразу не на админа сайта, в случае успешной атаки сразу на админа не требуется совпадение все выше описанных сайтов.

    И того на хакере статья про то что на сайты возможно проводить фишинговые атаки или если есть XSS уязвимость то ее можно эксплуатировать, но не уязвимость не эксплуатация не описаны.

    Спасибо КЭПЫ мы и так это знали. Можно в следующий раз про это больше не писать.

    • rutkit

      08.11.2018 at 05:46

    • Pavel

      08.11.2018 at 08:34

      @petrozavodsky ест свои борщи с солью

    • G-stream

      08.11.2018 at 18:44

      А ты хочешь гайды по взлому аля copy / paste и в дамки? Тогда тебе в светло-нете делать нечего. Статья хорошая интересная, описанные условия реальны (заблокирует параноик все порты, кроме 80-го и вот «не обновляется плагин»). Чего ещё нужно?

      • astana

        12.11.2018 at 09:17

        хотелось бы подробного технического разбора уязвимости. а ИБ-новостей и на других ресурсах полно.

Оставить мнение