Борцы с компьютерными угрозами из компании McAfee Labs сообщили о выявлении 5-и вредоносных расширений Chrome. Количество установивших их пользователей оценивается в более чем 1,4 миллиона.
Подробности
Авторы расширений увеличивают клиентскую базу путем обещания всевозможных благ, начиная от опции совместного просмотра сериалов Netflix – заканчивая возможностью создания скриншотов сайта. Последняя функция заимствует несколько фраз у другого популярного расширения под названием GoFullPage.
Расширения также отслеживают активность пользователя при просмотре сайтов. Информация о каждом посещенном ресурсе отправляется на серверы, принадлежащие создателю зловреда. Это делается для того, чтобы “умельцы” могли вставлять коды на посещаемые жертвами сайты е-коммерции.
Цель указанных действий – изменение файлов cookie на сайте для получения злоумышленниками партнерских платежей за любые приобретенные гражданами товары.
Пользователи расширений не знают об этой функциональности и сопутствующих рисках (утечка конфиденциальных данных и пр.)
Пять выявленных расширений (название/идентификатор/количество загрузок)
- Netflix Party/mmnbenehknklpbendgmgngeaignppnbe/800 000.
- Netflix Party 2/flijfnhifgdcbhglkneplegafminjnhn/300 000.
- Расширение для отслеживания цен FlipShope/adikhbfjdbjkhelbdnffogkobkekkkej/80 000.
- Расширения для скриншота страницы целиком Full Page Screenshot Capture/pojgkmkfincpdkdgjepkmdekcahmckjp/200 000.
- Расширение для покупки авто AutoBuy Flash Sales/gbnahglfafmhaehbdmjedfhdmimjcbed/20 000.
Технический анализ на примере вредоноса Netflix Party
Все “фигуранты” настоящего обзора действуют по единой схеме. В качестве примера специалисты McAfee Labs привели алгоритм работы расширения с идентификатором mmnbenehknklpbendgmgngeaignppnbe.
В HTML-файле manifest.json фоновая страница задается как bg.html. Далее производится загрузка b0.js – файла, который отвечает за отправку посещаемого URL и внедрение кода на сайты электронной коммерции.
Скрипт b0.js содержит множество опций, включая те, которые отвечают за отправку посещенных URL на сервер и обработку ответа.
После срабатывания расширение установит переменную curl с URL-вкладки с помощью переменной tab.url. Это создаст несколько других переменных, которые затем отправляются на d.langhort.com. Данные POST имеют следующий формат:
Расширения Chrome работают, подписываясь на события, которые они затем используют в качестве триггеров для выполнения определенных действий. Анализируемые расширения подписываются на события, исходящие от chrome.tabs.onUpdated. chrome.tabs.onUpdated, и срабатывают, когда пользователь переходит на новый URL-адрес во вкладке.
Случайный идентификатор создается путем выбора 8 случайных символов. Код показан ниже:
Страна, город и почтовый индекс собираются с помощью ip-api.com.
Получив URL, langhort.com проверит, совпадает ли он со списком сайтов, для которых у него есть партнерский ID, и если да, то ответит на запрос. Пример показан ниже:
Возвращаемые данные представлены в формате JSON. Ответ проверяется с помощью указанной ниже функции и провоцирует другие события (зависят от содержимого ответа).
Если результатом является ‘c’, расширение запросит URL-адрес, затем проверит ответ. Если получен статус 200 или 404, последует проверка возможности получения URL в ответ на запрос. При позитивном исходе полученный от сервера URL будет вставлен в виде Iframe на посещаемый сайт.
Если результат равен ‘e’, расширение вставляет результат в файл cookie. Команда McAfee Labs не смогла найти ответ ‘e’ во время анализа. Тем не менее, по утверждениям борцов с вирусами, такой подход позволяет авторам расширений добавлять любой файл cookie на любой сайт.
Поведенческий поток
На изображениях ниже показан пошаговый ход событий при переходе на сайт BestBuy.
- Пользователь переходит на сайт bestbuy.com, после чего расширение отправляет этот URL в формате Base64 на сайт d.langhort.com/chrome/TrackData/.
- Langhort.com отвечает “c” и URL. Символ “c” означает, что расширение вызовет функцию passf_url().
- passf_url() выполнит запрос к URL-адресу.
- URL, запрошенный в шаге 3, перенаправляется с помощью ответа 301 на сайт bestbuy.com с партнерским идентификатором владельца расширения.
- Расширение вставит URL в качестве Iframe на сайт bestbuy.com.
- “На выходе” появляется Cookie для партнерского ID, связанного с владельцем зловредного расширения, что позволит хакерам получать комиссионные за любые покупки, сделанные жертвами на сайте bestbuy.com.
Заключение
McAfee рекомендует проявлять осторожность при установке расширений Chrome и обращать внимание на запрашиваемые ими разрешения (демонстрируются “Хромом” перед установкой расширения).
Клиентам надлежит предпринять дополнительные шаги для проверки подлинности расширения в случае, если оно запрашивает разрешения для работы на каждом посещаемом вами сайте.