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

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

Фото: Group-IB

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

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

Угроза JS-снифферов долгое время оставалась вне поля зрения антивирусных аналитиков, считавших ее незначительной и не требующей глубокого изучения. Однако 380 000 жертв JS-сниффера, заразившего сайт и мобильное приложение авиакомпании British Airways, компрометация платежных данных американского дистрибутора билетов Ticketmaster и недавний инцидент с британским сайтом спортивного гиганта FILA, когда риску кражи данных банковских карт подверглись 5600 покупателей, свидетельствуют о необходимости изменить отношение к этой угрозе. «При заражении сайта в цепочку пострадавших вовлечены все — конечные пользователи, платежные системы, банки и крупные компании, торгующие своими товарами и услугами через интернет, — отмечает Дмитрий Волков, CTO Group-IB. — Тот факт, что об инцидентах и ущербе, нанесенном JS-снифферами до сих пор почти ничего неизвестно, говорит о слабой изученности этой проблемы и позволяет группам, создающим снифферы для воровства денег онлайн-покупателей, чувствовать себя безнаказанными». 

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

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

Большая часть обнаруженных снифферов нацелена на платежные формы определенных систем управления сайтом – 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 до $5000 на подпольных форумах. Некоторые сервисы дают возможность работать в партнерстве: клиент предоставляет доступ к скомпрометированному онлайн-магазину и получает процент от дохода, а создатель сниффера отвечает за серверы для хостинга, техподдержку и административную панель для клиента. Эти вполне «рыночные отношения» между создателями, продавцами, посредниками и покупателями андеграундного рынка затрудняют атрибуцию, то есть соотнесение совершенного преступления с конкретной группой. Однако собранные Group-IB индикаторы работы каждого из 38 семейств JS-снифферов позволяют решить эту проблему. Кроме того, в отчете Group-IB приведены детализированные рекомендации для всех сторон, которые могут стать жертвами JS-снифферов: покупателей, банков, онлайн-магазинов и платёжных систем. 

Исследование продолжается: описания проанализированных JS-снифферов и новые данные о них появляются в системе Group-IB Threat Intelligence, сообщили Sk.ru в пресс-службе компании.