Group-IB исследовала JavaScript-снифферы, их инфраструктуру и заработок

Group-IB исследовала JavaScript-снифферы, их инфраструктуру и заработок

 


JS-сниффер – это онлайн-аналог скиммера, но по сути это несколько строк кода, который внедряется злоумышленниками на сайт для перехвата вводимых пользователем данных: номеров банковских карт, имен, адресов, логинов, паролей и других. При этом доход «сниффероводов» может составлять сотни тысяч долларов в месяц.

 

Компания Group-IB, специализирующаяся на предотвращении кибератак, представила первый в России аналитический отчет, посвященный исследованию JavaScript-снифферов, — класса вредоносного кода, предназначенного для кражи данных банковских карт на web-сайтах.

В ходе исследования было проанализировано 2440 зараженных онлайн-магазинов, посетители которых – суммарно около полутора миллионов человек в день – подверглись риску компрометации. Отчет Group-IB стал первым исследованием даркнет-рынка снифферов, их инфраструктуры и способов монетизации, приносящей их создателям миллионы долларов.  

 

JS-сниффер – это онлайн-аналог скиммера. Но если скиммер это миниатюрное устройство, перехватывающее данные банковской карты пользователя в банкомате, то JS-сниффер – это несколько строк кода, который внедряется злоумышленниками на сайт для перехвата вводимых пользователем данных: номеров банковских карт, имен, адресов, логинов, паролей и т.д. Полученные платежные данные злоумышленники, как правило, продают кардерам на специализированных форумах в даркнете. Цена одной украденной карты составляет от $1 до $5. Реже – $10-$15. Значительная часть форумов с предложениями о покупке и аренде JS-снифферов состоит из русскоязычных киберпреступников, говорится в отчете, озаглавленном «Преступление без наказания: анализ семейств JS-снифферов». 

Целые семейства JS-снифферов

Эксперты Group-IB изучили обнаруженные снифферы и, применив собственные аналитические системы, смогли исследовать всю инфраструктуру и получить доступ к исходникам, панелям администраторов и инструментам злоумышленников. Такой подход позволил выявить 38 разных семейств JS-снифферов, отличающихся уникальными признаками. При этом, как минимум, восемь обнаружены и описаны впервые в мире. 

 

Угроза JS-снифферов долгое время оставалась вне поля зрения антивирусных аналитиков, считавших ее незначительной и не требующей глубокого изучения. Однако 380 тыс. жертв JS-сниффера, заразившего сайт и мобильное приложение авиакомпании British Airways, компрометация платежных данных американского дистрибутора билетов Ticketmaster и недавний инцидент с британским сайтом спортивного гиганта FILA, когда риску кражи данных банковских карт подверглись 5 600 покупателей, свидетельствуют о необходимости изменить отношение к этой угрозе.

 

Дмитрий Волков, CTO Group-IB:

— При заражении сайта в цепочку пострадавших вовлечены все — конечные пользователи, платежные системы, банки и крупные компании, торгующие своими товарами и услугами через интернет. Тот факт, что об инцидентах и ущербе, нанесенном JS-снифферами до сих пор почти ничего неизвестно, говорит о слабой изученности этой проблемы и позволяет группам, создающим снифферы для воровства денег онлайн-покупателей, чувствовать себя безнаказанными.

 

По усредненным подсчетам, доход «сниффероводов» может составлять сотни тысяч долларов в месяц. Например, ресурсы, зараженные JS-сниффером семейства WebRank, суммарно посещает 250 тыс. человек в день. Если конверсия на этих сайтах составляет всего 1%, то транзакции проводят 2 500 покупателей ежедневно. 

 

Таким образом, при минимальной вилке стоимости украденной карты, операторы WebRank могут заработать от $2 500 до $12 500 за один день «работы» сниффера. Это от $75 000 до $375 000 в месяц. При этом WebRank – лишь третий в «рейтинге» массовости заражений. Ресурсы, зараженные снифферами MagentoName и CoffeMokko, посещают 440 тыс. человек в день.

Многие семейства снифферов используют уникальные варианты для каждой отдельной платежной системы, что требует модификации и тестирования скрипта перед каждым заражением.

«Рыночные отношения» снифферов

Большая часть обнаруженных снифферов нацелена на платежные формы определенных систем управления сайтом – Magento, OpenCart, Shopify, WooCommerce, WordPress. К таким семействам относятся PreMage, MagentoName, FakeCDN, Qoogle, GetBilling, PostEval. Другие универсальны и могут быть интегрированы в код любого сайта, независимо от используемого «движка» (G-Analitycs, WebRank). 

 

В ходе исследования были обнаружены признаки «конкурентной борьбы» - некоторые из исследуемых семейств JS-снифферов имеют функционал обнаружения и ликвидации JS-снифферов конкурирующих групп, уже работающих на сайте-жертве (например, MagentoName). Другие используют «тело» сниффера-конкурента, как паразит, «забирая» у него данные, которые тот перехватывает, и передавая их на свой гейт (например, WebRank).

 

Снифферы модифицируются в целях затруднения обнаружения: например, ImageID, ReactGet, способны обходить большинство систем обнаружения, благодаря тому, что активируются только в момент совершения покупателем транзакции на сайте, в остальное время сниффер «засыпает» и никак не выдаёт себя. Некоторые семейства состоят из уникальных экземпляров, например, CoffeMokko: каждый сниффер данного семейства используется только один раз для заражения одного сайта.

 

Семейство G-Analytics отличается тем, что помимо внедрения вредоносного кода в клиентскую часть сайта его авторы также применяют технику внедрения кода в серверную часть сайта, а именно PHP-скрипты, обрабатывающие введенные пользователем данные. Эта значительно затрудняет обнаружение вредоносного кода исследователями. JS-снифферы типа ImageID, G-Analytics умеют имитировать легитимные сервисы, например, Google Analytics и jQuery, маскируя свою активность легитимными скриптами и похожими на легитимные доменными именами.

 

Атака с использованием JS-сниффера может быть многоступенчатой. Анализируя код одного из зараженных магазинов, специалисты Group-IB обнаружили, что в этом случае злоумышленники не ограничились внедрением JS-сниффера: по ряду причин им пришлось использовать полноценную поддельную платежную форму, которая подгружалась с другого скомпрометированного сайта. Эта форма предлагала пользователю два варианта оплаты: при помощи кредитной карты и при помощи PayPal. Если пользователь выбирал оплату через PayPal, то видел сообщение о том, что этот способ оплаты недоступен в данный момент и единственным вариантом оставалась банковская карта. 

 

Стоимость JS-снифферов составляет от $250 до $5 000 на подпольных форумах. Некоторые сервисы дают возможность работать в партнерстве: клиент предоставляет доступ к скомпрометированному онлайн-магазину и получает процент от дохода, а создатель сниффера отвечает за серверы для хостинга, техподдержку и административную панель для клиента. Эти вполне «рыночные отношения» между создателями, продавцами, посредниками и покупателями андеграундного рынка затрудняют атрибуцию, то есть соотнесение совершенного преступления с конкретной группой.

 

Однако собранные Group-IB индикаторы работы каждого из 38 семейств JS-снифферов позволяют решить эту проблему. Кроме того, в отчете Group-IB приведены детализированные рекомендации для всех сторон, которые могут стать жертвами JS-снифферов: покупателей, банков, онлайн-магазинов и платёжных систем.  Исследование продолжается.

 

Текст и фото: пресс-служба Сколково