На выходных Pipdig , небольшая коммерческая тематическая компания, оказалась в центре скандала после того, как многочисленные сообщения раскрыли список неэтичных добавлений кода к ее плагину Pipdig Power Pack (P3).
В пятницу, 29 марта, аналитик угроз Wordfence Майки Винстра опубликовал отчет с примерами кода бэкдоров, встроенных Pipdig в их плагин, а также с некоторыми сомнительными и сомнительными добавлениями в код.
«Мы подтвердили, что плагин Pipdig Power Pack (или P3) содержит код, который был замаскирован вводящими в заблуждение именами переменных, именами функций и комментариями, чтобы скрыть эти возможности», – сказал Винстра.
К ним относятся неаутентифицированный сброс пароля на жестко закодированную строку, которая была намеренно скрыта комментариями кода, указывающими, что она была добавлена для «проверки новых социальных каналов для добавления на панель навигации». Винстра также продемонстрировал, как плагин содержит код для удаления базы данных без аутентификации, при этом команда Pipdig может удаленно уничтожить любой сайт WordPress с помощью плагина P3.
Код для удаления удаленного сайта был удален в версии 4.8.0, но он по-прежнему вызывает беспокойство у пользователей, которые не обновились. Майкл Уотерфолл, инженер по iOS в ASOS, протестировал функцию «аварийного отключения» и продемонстрировал, что она по-прежнему работает с предыдущими версиями.
Расследование Винстры также обнаружило сомнительные удаленные вызовы в событиях cron плагина, нераскрытое содержимое и перезапись конфигурации, а также список популярных плагинов, которые немедленно деактивируются при активации P3 без ведома пользователя. Он обнаружил, что некоторые из этих плагинов деактивируются вместе с admin_init, поэтому любые попытки пользователя повторно активировать плагины не сохранятся.
Wordfence оценивает, что у плагина P3 есть база установки в 10-15 000 сайтов. Изменения, внесенные в версию 4.8.0 плагина, непрозрачно идентифицируются в журнале изменений, поэтому пользователям нелегко узнать, что изменилось. Фильтрация контента и деактивация плагинов остались в самой последней версии. Эти типы скрытых функций, выполняемые без разрешения, могут иметь непредвиденные последствия для сайтов, использующих плагин, которые нетехнические пользователи не смогут исправить самостоятельно.
Джем Тернер, внештатный веб-разработчик из Великобритании, опубликовал подробный анализ плагина P3 в тот же день, когда Wordfence опубликовал свой анализ. Она углубилась в удаленные запросы, демонстрируя, как Pipdig использует плагин P3 для выполнения DDoS-атаки на конкурента, который также предоставляет темы WordPress и услуги по установке для блоггеров. Код запускает ежечасное задание cron на сайтах пользователей, эффективно используя серверы своих клиентов для отправки злонамеренных запросов на сайт конкурента.
Комментарий к коду сообщает нам, что это «проверка кеша CDN (сети доставки контента)». Это не. Это выполнение запроса GET к файлу (id39dqm3c0_license_h.txt), размещенному на pipdigz.co.uk, который вчера утром вернул в теле ответа «https://kotrynabassdesign.com/wp-admin/admin-ajax.php».
Каждый час ночью и днем, без какого-либо ручного вмешательства, любой блоггер, использующий плагин pipdig, будет отправлять запрос с поддельным User Agent на https://kotrynabassdesign.com/wp-admin/admin-ajax.php со случайным числовая строка прилагается. Это эффективно выполняет мелкомасштабный DDoS (распределенный отказ в обслуживании) на сервере kotrynabassdesign.com.
Тернер также связалась с Котриной Басс , конкурентом Pipdig, которая сказала, что связалась со своим хостом после того, как обнаружила, что ее файл admin-ajax.php подвергся какой-либо атаке. Обмены Басс с ее хозяином также опубликованы в отчете Тернера.
Сообщение Тернера объяснило, как код плагина Pipdig P3 манипулирует ссылками, чтобы указывать на их собственные продукты и услуги, когда пользователь включает ссылку на конкурента в контент:
Здесь у нас есть плагин pipdig, который ищет упоминания о ‘blogerize.com’ со строкой, разделенной пополам и объединенной – конкатенированной – чтобы затруднить поиск упоминаний конкурентов при выполнении массового поиска в файлах через плагин (среди прочего ). Когда плагин находит ссылки на blogerize.com в контенте блоггера (сообщениях, страницах), они заменяются ссылкой на pipdig.co/shop/blogger-to-wordpress-migration/, т. е. на собственные службы миграции блога pipdig. Замена этих ссылок увеличивает преимущества SEO для pipdig, и подавляющее большинство блоггеров не заметят переключения (тем более, что если страница / сообщение были отредактированы, ссылка на blogerize будет отображаться в бэкэнде как обычно).
Плагин не запрашивал разрешения у пользователей перед выполнением любого из этих действий, и большинство из них было реализовано с использованием обфусцированного кода. Исследование Тернера также касается того, как плагин P3 может собирать данные и изменять пароли администраторов. Многие результаты совпадают с анализом Wordfence.
«Мне было известно, что к Wordfence связались, чтобы узнать мнение, хотя я не знал, что они писали пост и наоборот», – сказал Тернер. «Я не удивился, что они написали об этом, учитывая риск для пользователей WordPress».
Она связалась с властями по поводу неэтичной практики кодирования Pipdig и нарушений конфиденциальности.
«Со своей стороны, я был в контакте с Action Fraud (отправил отчет через их веб-сайт) и NCSC (который указал мне на Action Fraud и дал мне номер телефона). Со стороны pipdig, в их сообщении в блоге есть угрозы судебного иска, но я пока ничего не получил ».
Креативный директор Pipdig Фил Клотье опубликовал публичный ответ компании, который начинается с охарактеризования недавних расследований как «различных обвинений и слухов, распространяющихся о pipdig» и включает эмоциональную просьбу о том, насколько печальными для его компании были недавние события. Он утверждает, что его команда и их сторонники подвергаются преследованиям.
После выпуска версии 4.8.0 плагина P3, удаления некоторого, но не всего оскорбительного кода, Clothier выбирает формат в стиле вопросов и ответов для своего сообщения, помещая все вопросы в настоящем времени:
Вы конкуренты DDOS?
Нет.
Вы «убиваете» сайты?
Нет!
У вас есть возможность убивать сайты с помощью pipdig Power Pack?
Нет
Что касается встроенной функции «аварийного отключения», которая обнаруживает все таблицы с префиксом WordPress и удаляет каждую из них, Клотье сказал, что это просто функция, позволяющая вернуть сайт к настройкам по умолчанию. Он намеренно исказил то, что он делает:
В более старой версии плагина была функция, которую можно было использовать для возврата сайта к настройкам по умолчанию. Эта функция не подвергалась риску злонамеренного или непреднамеренного использования. Могу категорически сказать, что для вашего сайта не было никакого риска, если бы вы использовали тему pipdig. Эта функция была выкопана и помечена как «Kill Switch» для максимального негативного воздействия на нас.
Clothier утверждает, что эта функция была доступна в плагине P3 в июле 2018 года, когда третья сторона начала публиковать темы Pipdig для продажи на своем собственном сайте:
Третья сторона смогла незаконно загрузить все наши темы и разместить их на клоне нашего собственного сайта. Это включало предварительные просмотры наших тем и возможность их приобретения. Впервые нас предупредили об этом люди, которые купили там тему pipdig, но обнаружили, что некоторые функции работают некорректно. После расследования мы обнаружили, что жертва приобрела тему у третьего лица, думая, что это были мы. Третья сторона не только получила финансовую выгоду от оплаты темы, но и использовала ее как способ внедрения вредоносных программ и рекламы на сайт жертвы. Функция сброса была введена для того, чтобы лишить сторонних разработчиков возможности размещать сайты предварительного просмотра с нашими темами. Это сработало, и с тех пор они исчезли. Затем эта функция была удалена в более поздней версии плагина.
Это ложное утверждение, как указал Wordfence в обновленной статье . Первый экземпляр кода, ответственного за удаление базы данных, был добавлен в плагин в ноябре 2017 года .
Компания не смогла решить наиболее важные проблемы, представленные в анализе Wordfence, при первом же прохождении публичного заявления. Вместо этого, говоря о координации DDoS-атаки на конкурентов, Pipdig обвиняет пользователей и предполагает, что они, возможно, добавили URL-адрес конкурента на свои сайты.
«Сейчас мы выясняем, почему эта функция возвращает этот URL-адрес», – сказал Клотье. «Однако, похоже, предполагается, что некоторые из« URL-адресов авторов »были установлены на« kotrynabassdesign.com ». В настоящее время мы не знаем, почему это так, и намеренно ли это изменил владелец сайта ».
Дальнейшие исследования, опубликованные сегодня Wordfence, показали, что Pipdig также добавил код DDoS в свои шаблоны Blogger и до вчерашнего дня активно отправлял вредоносные запросы:
Во время исследования плагина и тем WordPress от Pipdig мы также обнаружили любопытный код, связанный с их темами Blogger. Этот код является частью предполагаемой DDoS-кампании Pipdig против своего конкурента и был активен до 1 апреля, через четыре дня после отрицания Pipdig любого такого поведения.
Подтверждено, что некоторые из тем Blogger Pipdig выполняют внешние вызовы JavaScript на сервер Pipdig, в частности, на сценарий hXXps: // pipdigz [.] Co [.] Uk / js / zeplin1.js.
31 марта, когда результаты расследования стали общедоступными, Pipdig удалил свой публичный репозиторий Bitbucket и заменил его «чистым», удалив историю коммитов за три года. Wordfence и многие другие клонировали репозиторий до того, как он был удален, и сохранили снимки страниц, чтобы ссылаться на них в ходе расследования.
Публичное заявление Pipdig содержит ряд других ложных утверждений, которые изложены в последующей части Wordfence с примерами кода. Clothier закрывает статью, подвергая критике прессу, предположительно, чтобы побудить клиентов не доверять тому, что они читают из других источников.
Я связался с Pipdig за их комментарием по поводу недавних событий, но Clothier отказался отвечать ни на один из моих вопросов. Одна из них заключалась в том, почему плагин отключает плагин кеширования Bluehost без уведомления клиентов.
Клотье сказал, что у него нет никаких комментариев, кроме того, что он сказал в публичном заявлении, но призвал всех, кто заинтересован, прочитать новые комментарии, добавленные в код в версии 4.9.0:
Мы также обновили версию 4.9.0 плагина, которая включает в себя дополнительные комментарии в коде, которые, мы надеемся, помогут прояснить такие вещи, как проблемы с кешированием Bluehost и фильтром the_content ().
Если кто-то не уверен, рекомендуем как всегда обновляться до последней версии. Однако мы также утверждаем, что и в предыдущих версиях серьезных проблем не было.
Pipdig отказался отвечать на вопросы о лицензировании, но , похоже, продукты под лицензией GPL не распространяются . Возможно, именно поэтому компания сочла своим правом принимать меры в отношении тех, кто, по ее мнению, «украл» их темы.
Это, пожалуй, одно из самых наглых злоупотреблений, которые я когда-либо видел со стороны тематической компании в истории WordPress, когда пользовательская база Pipdig неосознанно использовалась для нацеливания на конкурентов компании. Независимо от мотивов компании в борьбе с несанкционированным распространением своих тем, подобные бэкдоры и скрытые перезаписи контента не имеют оправдания. Они питаются доверием пользователей, и в этом случае жертвами в основном были блоггеры.
Одним из наиболее загадочных аспектов этой истории является то, что многих пользователей Pipdig, похоже, не смущает серьезность выводов, содержащихся в этих отчетах. Без полного знания внутренней работы продукта многие клиенты принимают решения на основе того, что они думают о компании, независимо от того, сталкиваются ли они с фактами, которые должны заставить их усомниться в своем опыте.
Другие недовольны тем, что их сайты использовались в атаке. Настройка новой темы – нетривиальная задача для нетехнических пользователей, которым, возможно, сначала пришлось заплатить разработчику за запуск своих сайтов.
Честно? Я очень зол. Я доверял им в течение многих лет, а взамен мой сайт злонамеренно использовали против других малых предприятий. Я наблюдал за этим с пятницы, но даже это обновление шокировало меня. https://t.co/mPsO8EoHBp
– Шарлотта (@bycharlotteann_) 2 апреля 2019 г.
«Я совершенно потрясен публичным откликом pipdig, – сказал Джем Тернер. «Я понимаю, что они рассчитывали на совершенно нетехнический опыт своих пользователей, чтобы ввести их в заблуждение, и, конечно, казалось, что вначале это работало, но любой, кто хоть немного разбирается в программировании, может видеть, что они лгут, а я искренне не понимаю, как они думают, что им это сойдет с рук ».
Этот инцидент проливает свет на то, насколько нерегулируется коммерческая экосистема плагинов и тем и насколько слаба защита пользователей от компаний, злоупотребляющих своей властью. Если вы являетесь клиентом Pipdig, затронутым этим инцидентом, нет никаких гарантий, что компания не будет в будущем создавать дополнительные бэкдоры на вашем сайте. Обновления плагина не проверяются никакими властями. К счастью, вы можете предпринять несколько действий, чтобы создать более безопасную среду для своего веб-сайта.
Во-первых, ищите темы и плагины под лицензией GPL , потому что они предоставляют вам как пользователю больше свободы и совместимы с юридической лицензией WordPress. Продукты под лицензией GPL также убедительно свидетельствуют о том, что авторы уважают свободы пользователей и общие экономические принципы, поддерживаемые этой лицензией с открытым исходным кодом.
Многие авторитетные тематические компании предпочитают размещать плагины-компаньоны для своих продуктов на WordPress.org, чтобы упростить распространение и доставку обновлений. Официальный каталог не разрешает подобные методы теневого кодирования, описанные в этой статье, и все плагины проходят проверку безопасности командой WordPress Plugin Team. Если вас беспокоит качество кода и возможность злоупотреблений, проведите небольшое исследование своего следующего потенциального поставщика коммерческих тем или выберите бесплатные темы и плагины, размещенные на WordPress.org, которые прошли более тщательный процесс проверки.
Поскольку до крайнего срока соблюдения GDPR ЕС осталось всего 178 дней , многие владельцы сайтов…
Команда Gutenberg создаст станцию тестирования удобства использования в WordCamp US, где посетители смогут принять участие…
Сегодня компания 10up опубликовала предварительную версию своего плагина Distributor , нового решения для синдикации контента…
На этой неделе был выпущен Gutenberg 1.8 с несколькими заметными улучшениями, которые предоставят разработчикам плагинов…
На этой неделе был выпущен Gutenberg 15.5 с новыми функциями и улучшениями возможностей полнофункционального редактирования…
DesktopServer выпустил версию 3.8.4 своего программного обеспечения для локальной разработки. Эта версия включает в себя…