Pipdig обновляет плагин P3 после того, как отчеты раскрывают бэкдоры поставщиков, встроенный аварийный выключатель и вредоносный код DDoS
Опубликовано: 2019-04-03На выходных Pipdig, небольшая коммерческая тематическая компания, оказалась в центре скандала после того, как в многочисленных отчетах было раскрыто множество неэтичных дополнений кода к ее плагину Pipdig Power Pack (P3).
В пятницу, 29 марта, аналитик угроз Wordfence Майки Винстра опубликовал отчет с примерами кода бэкдоров, встроенных в их плагин Pipdig, а также с некоторыми сомнительными и сомнительными дополнениями к коду.
«Мы подтвердили, что плагин Pipdig Power Pack (или P3) содержит код, который был запутан вводящими в заблуждение именами переменных, именами функций и комментариями, чтобы скрыть эти возможности», — сказал Винстра.
К ним относится сброс пароля без проверки подлинности на жестко закодированную строку, которая была намеренно скрыта комментариями кода, указывающими, что она была добавлена для «проверки новых социальных каналов для добавления на панель навигации». Veenstra также продемонстрировал, как плагин содержит код для удаления базы данных без проверки подлинности, при этом команда Pipdig может удаленно уничтожить любой сайт WordPress с помощью плагина P3.
Код для удаления удаленного сайта был удален в версии 4.8.0, но это все еще беспокоит пользователей, которые не обновлялись. Майкл Уотерфолл, инженер iOS в ASOS, протестировал функцию «выключатель отключения» и продемонстрировал, что она по-прежнему работает с предыдущими версиями.
Это также подтверждает, что они лгали. У них _по-прежнему_ есть возможность стереть любой блог, который не обновился до новой версии плагина (4.8.0), которую они поспешно выпустили, чтобы удалить переключатель уничтожения после того, как они были раскрыты на днях. pic.twitter.com/bNMfRQUBpr
— Майкл Водопад (@mwaterfall) 31 марта 2019 г.
Расследование Veenstra также выявило сомнительные удаленные вызовы в событиях cron плагина, нераскрытый контент и перезаписи конфигурации, а также список популярных плагинов, которые немедленно деактивируются при активации P3 без ведома пользователя. Он обнаружил, что некоторые из этих плагинов деактивируются вместе с admin_init, поэтому любые попытки пользователя повторно активировать плагины не будут иметь успеха.
По оценкам Wordfence, плагин P3 имеет установочную базу в 10 000–15 000 сайтов. Изменения, сделанные в версии 4.8.0 плагина, не указаны в журнале изменений, поэтому пользователям нелегко узнать, что изменилось. Фильтрация контента и деактивация плагинов остались в самой последней версии. Эти типы завуалированных функций, выполняемые без разрешения, могут иметь непредвиденные последствия на сайтах, использующих плагин, которые пользователи, не обладающие техническими знаниями, не смогут исправить самостоятельно.
Плагин Pipdig P3 провел DDoS-атаку на сайт конкурента
Джем Тернер, внештатный веб-разработчик из Великобритании, опубликовал подробный анализ плагина 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, будет отправлять запрос с поддельным агентом пользователя на 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 Фил Клотьер опубликовал публичный ответ компании, который начинается с характеристики недавних расследований как «различных обвинений и слухов, распространяющихся о pipdig» и включает эмоциональное заявление о том, насколько тревожными были последние события для его компании. Он утверждает, что его команду и их сторонников преследуют.
Выпустив версию 4.8.0 плагина P3, удалив часть, но не весь оскорбительный код, Клотье выбирает для своего поста формат вопросов и ответов, ставя каждый вопрос в настоящем времени:
Есть ли у вас конкуренты по 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, опубликованный ранее сегодня, вместо репозитория, содержащего весь их вредоносный код… Они изменили заявленную дату выпуска версии 4.8.0. pic.twitter.com/YqKASTUZE7
— Ники Блур (@nickstadb) 1 апреля 2019 г.
Публичное заявление Pipdig содержит ряд других ложных утверждений, которые изложены в последующей части Wordfence с примерами кода. Клотье завершает статью клеветой на прессу, по-видимому, чтобы побудить клиентов не доверять тому, что они читают из других источников.
Я связался с Pipdig, чтобы они прокомментировали недавние события, но Clothier отказался отвечать на мои вопросы. Одна из них заключалась в том, почему плагин отключает плагин кэширования Bluehost, не информируя об этом клиентов.
Еще один из плагина @pipdig. Если вы используете одну из их тем на @bluehost, то они намеренно замедляют работу вашего сайта, отключая плагин кеша BlueHost, тогда они могут вставлять контент с заголовком «Ваш хост замедляет работу?» CC @jemjabella @heyitsmikeyv pic.twitter.com/48DUXsDyBj
— Ники Блур (@nickstadb) 31 марта 2019 г.
Клотье сказал, что у него нет никаких комментариев, кроме того, что он сказал в публичном заявлении, но призвал всех, кто заинтересован, прочитать новые комментарии, добавленные в код в версии 4.9.0:
Мы также обновили версию 4.9.0 плагина, которая включает в себя дополнительные комментарии в коде, которые, как мы надеемся, помогут прояснить такие вещи, как кэширование Bluehost и фильтр the_content().
Если кто-то не уверен, мы рекомендуем, как всегда, обновиться до последней версии. Однако мы также утверждаем, что в предыдущих версиях также не было серьезных проблем.
Pipdig отказался отвечать на вопросы о лицензировании, но похоже, что продукты не находятся под лицензией GPL. Возможно, именно поэтому компания сочла своим правом принять меры в отношении тех, кто, по ее мнению, «украл» их темы.
Клиенты Pipdig неоднозначно реагируют на сообщения о бэкдорах поставщиков и DDoS-атаках
Возможно, это одно из самых наглых злоупотреблений, которые я когда-либо видел со стороны компании, занимающейся темами, в истории WordPress: пользовательская база Pipdig по незнанию использовалась для нацеливания на конкурентов компании. Независимо от мотивов компании в борьбе с несанкционированным распространением своих тем, такие лазейки и нераскрытая переписывание контента не могут быть оправданы. Они наживаются на доверии пользователей, и в данном случае жертвами в первую очередь стали блогеры.
Я думаю, именно поэтому многие из нас так злы. Блоггеры являются источником жизненной силы #WordPress, вы создаете контент и по большей части не имеете больших бюджетов. Поэтому, когда кто-то пользуется преимуществами тех, кто находится на «малобюджетном» конце рынка, тех, кто не может позволить себе разработчиков…
— Энди Пауэлл (@p0welly) 31 марта 2019 г.
Один из наиболее загадочных аспектов этой истории заключается в том, что многих пользователей Pipdig, похоже, не смущает серьезность выводов, содержащихся в этих отчетах. Без полного знания внутренней работы продукта многие клиенты принимают решения, основываясь на том, как они относятся к компании, несмотря на то, что сталкиваются с фактами, которые должны заставить их усомниться в своем опыте.
Я не беспокоюсь. Я доверяю им. И я, конечно же, не паникую и не действую в соответствии со словами двух сообщений в блогах со ссылкой на их конкурентов. Они хорошо служили мне много лет.
— Кэролайн Хиронс (@CarolineHirons) 29 марта 2019 г.
Другие возмущены тем, что их сайты были использованы для атаки. Настройка новой темы — нетривиальная задача для нетехнических пользователей, которым, возможно, пришлось заплатить разработчику за запуск своих сайтов.
Честно? Я очень зол. Я доверял им годами, а взамен мой сайт злонамеренно использовался против других малых предприятий. Я наблюдал за развитием событий с пятницы, но даже это обновление меня потрясло. https://t.co/mPsO8EoHBp
— Шарлотта (@bycharlotteann_) 2 апреля 2019 г.
«Я совершенно потрясен публичной реакцией pipdig, — сказал Джем Тернер. «Я понимаю, что они рассчитывали на то, что их пользователи совершенно не разбираются в технологиях, чтобы обмануть их, и поначалу это, безусловно, работало, но любой, у кого есть хоть какие-то знания в области кодирования, может увидеть, что они лгут, и я искренне не понимаю, как они думают, что им это сойдет с рук».
Сумасшедшая часть заключается в том, что если мы хотим быть действительно реальными в этом, это больше похоже на
Кабельщик проделал в моей стене большую дыру и установил на нее дверную ручку. Он взял малярный скотч и нацарапал «ЭТО КАБЕЛЬНАЯ КОРОБКА» на гипсокартоне. Затем посмотрел мне в глаза и сказал: «Нет, я этого не делал».
— ~$ ./mikey -v (@heyitsmikeyv) 31 марта 2019 г.
Этот инцидент проливает свет на то, насколько нерегулируемой является коммерческая экосистема плагинов и тем, и насколько слабо защищены пользователи от компаний, злоупотребляющих их полномочиями. Если вы являетесь клиентом Pipdig, пострадавшим от этого инцидента, нет никаких гарантий, что компания не встроит больше бэкдоров на ваш сайт в будущем. Обновления плагинов не проверяются никакими органами. К счастью, есть несколько действий, которые вы можете предпринять, чтобы создать более безопасную среду для своего веб-сайта.
Во-первых, ищите темы и плагины под лицензией GPL, потому что они предоставляют вам больше свободы как пользователю и совместимы с легальной лицензией WordPress. Продукты под лицензией GPL также являются убедительным свидетельством того, что авторы уважают свободы пользователей и общие экономические принципы, поддерживаемые этой лицензией с открытым исходным кодом.
Многие авторитетные тематические компании предпочитают размещать сопутствующие плагины своих продуктов на WordPress.org для простоты распространения и отправки обновлений. Официальный каталог не разрешает такие теневые методы кодирования, описанные в этой статье, и все плагины проходят проверку безопасности командой плагинов WordPress. Если вас беспокоит качество кода и возможность злоупотреблений, проведите небольшое исследование о вашем следующем потенциальном поставщике коммерческих тем или выберите бесплатные темы и плагины, размещенные на WordPress.org, которые прошли более строгий процесс проверки.
