На первый взгляд подобные виджеты размещают только “Васи Пупкины” на страницах своих личных блогов, но за последнюю неделю мне довелось анализировать три коммерческих и достаточно посещаемых проекта, которые также использовали зараженные виджеты (один размещал калькулятор для подсчета суммы заказа, второй – календарь на новостном сайте, третий – онлайн-радио).
Ситуация с распространением вредоносного кода через виджеты усугубляется еще и тем, что каталоги и агрегаторы данных ресурсов выводятся на первых строчках поисковых систем по целевым запросам, что явно увеличивает вероятность их использования веб-мастерами.
Итак, какие проблемы появлялись на сайтах, где были установлены зараженные виджеты? Всегда выполнялись редиректы, но зависели они от платформы и браузера:
1. При заходе с андроид-устройства в результате серии перенаправлений происходила загрузка вирусного .apk файла на устройство посетителя под видом обновления системных компонентов или антивируса для мобильного.
2. При заходе с браузера на Mac OS платформе посетителя перебрасывало на сайт, который уведомлял о том, что на компьютере обнаружены вирусы и необходимо срочно установить приложение под видом антивирус.
3. При посещении страниц с браузера под Windows, посетителю открывались попандеры или перенаправляло на различные партнерские программы.
Редирект выполнялся один раз в сутки для одного IP при установленном поле Referer, что несколько затрудняло обнаружение проблем при просмотре кода виджета в браузере или при повторном заходе на сайт в течение дня. Для иллюстрации приведу результат загрузки виджета с установленным полем Referer и без оного:
Проанализированные виджеты с редиректами загружались с двух агрегаторов:
101widgets.com
widgetsmonster.com
Дальнейший поиск выявил еще ряд сайтов того же владельца:
xuxu.org.ua
widgetok.com
mygold.pp.ua
www.mygold.pp.ua
widgeta.net
В свое время похожая проблема была в сервисе “Одна кнопка”, которая вместе с полезной нагрузкой в виде сервиса добавления в закладки и функции “поделиться” подгружала код мобильных и WAP-партнерок. Выглядело это так:
Но в последнее время все больше веб-мастеров пользуются
К сожалению, подобные проблемы с виджетами невозможно выявить, проверяя файлы сайта антивирусами или специализированными сканерами вредоносного кода, какими бы эффективными они ни были. Поскольку код самого виджета не является вредоносным, а редиректы возникают в результате несанкционированной подгрузки сторонних скриптов вместе с загрузкой flash кода. Эффективным способом обнаружения «левых» скриптов при загрузке страниц является применение снифферов трафика (Fiddler, Wireshark, Charles, etc). Анализ HTTP трафика поможет выявить причины редиректов, рекламных баннеров, попандеров и пр.
В качестве решения проблем с редиректами (кроме, естественно, удаления самого источника редиректа с сайта) можно также посоветовать настроить правила CSP, добавив в доверенные только те источники кода и данных (хосты), в которых вы уверены. Это поможет избавиться в том числе и от «левых» переходов в статистике посещений сайта, что сейчас является достаточно частым явлением.
В завершении хотелось бы еще раз обратить внимание веб-разработчиков и владельцев сайтов на источники, из которых загружаются скрипты, виджеты и шаблоны. Не стоит устанавливать на сайт взломанные коммерческие компоненты и плагины, или бесплатные, но загруженные не с официального сайта или репозитория разработчика. Подобные простые правила значительно снизят вероятность добровольного размещения несанкционированной рекламы, бэкдоров, спам-ссылок, мобильного редиректа или вредоносного кода на своем сайте. Ну и, конечно, если вы используете виджеты с одного из перечисленных в статье доменов, лучше с сайта их убрать.
Комментарии (9)
evnuh
14.10.2015 15:37+5Но в последнее время все больше веб-мастеров пользуются pluso
у меня для вас плохие новости…revisium
14.10.2015 15:44Вы имеете ввиду это habrahabr.ru/post/231887? Там хотя бы треккеры встраиваются. Но все это, конечно, тоже зло.
evnuh
14.10.2015 17:54+1Компания, которая имеет полный доступ к вашему сайту (with great power comes great responsibility) и при этом что-то вставляет без вашего ведома туда, полностью должна терять любое доверие. Что бы они ни вставляли, что бы ни говорили, уже не важно.
Ну и да, эти «счётчики» незабесплатно стоят в плюсо, это продажа трафика этим счётчикам и большие деньги. Трафика ваших сайтов, ваших пользователей, себе в карман.
Invision70
14.10.2015 20:51Меня смущает у сервиса ulogin куча фреймов, там тоже дела обстоят печально? Можно использовать?:)
Fibril
15.10.2015 06:21На самом деле все, что грузится с внешних сервисов — есть зло. Такие услуги не могут быть бескорыстны. В лучшем случае это слежка, в худшем вирусы. К сожалению, сегодня многие готовы подключать внешние файлы вообще без какой-либо конкретной выгоды для себя, чего уже говорить о полезных виджетах. И не похоже, что ситуация в ближайшее время изменится в лучшую сторону.
timurminulin
15.10.2015 13:43А вы jQuery с гугловского CDN берете или тоже себе копируете? Или Google Fonts? Не говоря уж о JS-ках всякой аналитики типа mixpanel или платежек?
Fibril
15.10.2015 14:33Вы думаете, что гугл все это раздает по доброте душевной? Подключение jQuery с чужих серверов хороший пример того, как поставить свой проект под чужое влияние и ничего не получить взамен.
iXCray
Думаю, что эти «разработчики» — те же личности, что устанавливают себе Амиго и тулбары Одноклассников для IE.