Пару дней назад мы писали о критической уязвимости системы безопасности , которая была обнаружена в популярном плагине WordPress Slider Revolution и незаметно исправлена его автором. С тех пор Envato Market начала дальнейшее расследование этого вопроса, поскольку продукт не только размещен на их торговой площадке, но и упакован со многими другими продуктами.
Компания выявила более 1000 тем , продаваемых через ее торговую площадку, которые потенциально подвержены этой уязвимости. Хотя многие продукты уже были исправлены, некоторые авторы тем еще не начали действовать. В знак признания серьезности этой уязвимости и легкости ее использования, Marketplace временно отключает темы, которые еще не были исправлены:
Мы начинаем временно отключать затронутые темы, которые не были обновлены, связываясь с авторами этих тем, чтобы получить обновление через как можно скорее. Это займет некоторое время, так как есть много тем, которые нужно отсортировать вручную.
Даже после того, как продукты будут исправлены, следующая задача – заставить пользователей обновляться. Многие темы не имеют включенной системы автоматического обновления для уведомления пользователей, и пользователи WordPress не всегда применяют обновления, как только они становятся доступными, опасаясь что-то сломать. Envato Market решает эту проблему, отправляя пользователям электронные письма с информацией об уязвимости в системе безопасности:
Мы свяжемся со всеми покупателями затронутых тем напрямую через их адрес электронной почты Envato Market как можно скорее, чтобы убедиться, что они прочитали эту информацию и приняли меры в соответствии с ней.
Envato Market опубликовал подробные инструкции, чтобы помочь пользователям определить, затронуты ли они, и обновить их соответствующим образом.
Опасность связывания плагинов с темами
Когда уязвимость в системе безопасности потенциально затрагивает более 1000 продуктов, установка исправлений в автоматическом режиме неприемлема. Это должно было быть публично раскрыто командой ThemePunch в то время, когда это произошло, что могло предотвратить активное использование этой уязвимости в дикой природе.
В конце поста Envato Market рассказывает, что они делают, чтобы это больше не повторилось:
Мы будем выпускать руководства и процессы, чтобы подобные проблемы доходили до нас быстрее, а также чтобы помочь авторам убедиться, что их покупатели получают обновления и исправления как можно быстрее.
Мы также собираемся вернуться к тому, как обрабатываются обновления для пакетов и тем, которые включают отдельные плагины.
К сожалению, «дополнительные рекомендации и процессы» не решают корень этой проблемы. Эта уязвимость подчеркивает опасность того, что авторы тем могут включать плагины в свои продукты. Envato Market не нужно было бы перечислять более 1000 потенциально затронутых тем, если бы они не поощряли или даже запрещали авторам тем объединять плагины.
Поскольку подавляющее большинство самых продаваемых тем Envato не соответствуют лучшим отраслевым практикам, запрет на объединение плагинов наверняка приведет к потере прибыли. Похоже, что у Envato Market нет стимула решительно действовать, исходя из урока этой уязвимости безопасности, и двигаться в направлении лучших практик.
Уважаемые профессионалы в сообществе WordPress уже много лет призывают авторов тем хранить плагины отдельно. Эта ситуация возобновила дискуссию.
Исторически сложилось так, что Envato не спешит применять передовые методы работы с темами. Добавление в прошлом году варианта лицензирования GPL и обновленных требований к представлению тем стало хорошим началом, но авторы нашли способы обойти эти требования. Джастин Тэдлок предлагает некоторое представление об этой практике после своего эксперимента с Themeforest :
Основываясь на том, что я видел на форумах, многие авторы просто ищут способы сделать то, что они уже делали, но просто помещают это в плагин, упакованный со своей темой. По сути, они не хотят, чтобы кто-то «украл их код», и они не хотят по-настоящему создать замечательный пользовательский интерфейс, в который пользователи будут возвращаться еще долго после того, как они переключились на новую тему. Если вы упаковываете функциональность вашего плагина в плагин, который будет полезен только с вашей темой, то вы _doing_it_wrong(). Это то, что я себе представляю, но я надеюсь, что Envato выступит против этого. В противном случае вы просто проделываете те же трюки в другом костюме.
Этот опыт побудил Tadlock продолжить создание автономных плагинов , поддержку которых авторы тем могут добавлять при создании своих продуктов. Это позволяет авторам темы сосредоточиться на самой теме и предлагать пользователям лучшую переносимость данных с помощью плагинов. Принятие стандарта для функциональности плагинов хорошо для пользователей и создает меньше работы для авторов тем. Они могут продолжать создавать новые темы вместо того, чтобы тратить время на исправление своих тем для устранения уязвимости в системе безопасности ползунка.
В настоящее время WordPress используется более чем на 23% веб-сайтов в мире и всегда будет мишенью для хакеров, стремящихся использовать уязвимости. Если Envato Market не выступит против упаковывания плагинов авторами тем, он продолжит сталкиваться с теми же проблемами безопасности, которые были в заголовках новостей на этой неделе.