Спамеры активно используют перенаправления (редиректы) в своих письмах: кликнув по спамерской ссылке, получатели письма зачастую проходят через целую цепочку вебсайтов, прежде чем попасть на конечный ресурс.
Причин для использования перенаправлений много. Чаще всего это помогает спамерам скрыть данные, которые позволят спам-фильтру идентифицировать письмо как нежелательное — например, сайт или контактный телефон заказчика. В результате получатель (как и спам-фильтр) не видит в письме ни ссылки на рекламируемый сайт, ни каких-либо телефонов или почтовых адресов, которые используются для связи с заказчиками спам-рассылки. Видна только ссылка на ресурс-посредник. Кроме того, если спамер участвует в партнерской программе, ему необходимо знать, сколько пользователей прошло по ссылке в письме, поскольку от этого напрямую зависит его доход. Поэтому в цепочке веб-сайтов, на которые перенаправляется пользователь, могут встречаться сайты-редиректоры, выполняющие функцию счетчиков.
Мы рассмотрим самые популярные спамерские приёмы, прямо или косвенно использующие редиректы, наиболее распространённые и используемые типы перенаправлений, а также особенности и тематики спама с перенаправлениями, который ежедневно доставляет немало хлопот пользователям по всему миру.
Типы перенаправлений
Перенаправления можно классифицировать различными способами. Мы будем основываться на том, какой объект используется для осуществления редиректа. В настоящее время наиболее распространены два метода – редиректы с использованием ссылок и редиректы с помощью вложенных HTML-страниц.
Ссылки
Использование ссылки для редиректа пользователя – традиционный прием спамеров. Как правило, после клика по такой ссылке пользователь попадает на веб-страницу, с которой, используя один из методов перенаправления (о них – ниже), спамеры перенаправляют его на целевой ресурс. Промежуточной может быть страница на взломанном спамерами легитимном сайте или один из спамерских сайтов, специально созданный для редиректа пользователя на другие веб-ресурсы.
Еще одним простым приемом маскировки спамерских ссылок является использование сервисов коротких ссылок, позволяющих спамерам быстро создать замаскированную ссылку на свой сайт, как, например, в письме, приведенном ниже.
На данный момент подобных сервисов очень много. В основном они используются, чтобы сократить ссылку, что особенно актуально на ресурсах, ограничивающих размер финального текста (например, Twitter). Иногда спамеры не используют уже существующие сервисы коротких ссылок, а создают свои. Плюс использования собственных сервисов заключается в отсутствии модерации – никто не проверяет, куда ведет созданная спамерами ссылка. Минус – любой спам-фильтр может забанить такой сервис целиком, одновременно остановив все рассылки спамера.
HTML-вложения
Часто спамеры используют специальные HTML-файлы, при открытии которых происходит перенаправление пользователя на спамерский веб-сайт. Такие файлы вкладываются в спам-письма, и злоумышленникам остаётся лишь под любым предлогом убедить получателя открыть вложенный файл в браузере. Для осуществления редиректа применяются различные приёмы и техники, о которых мы расскажем ниже.
Спамеры постоянно усложняют исходный код рассылаемых HTML-страниц и делают его всё более запутанным, чтобы скрыть от спам-фильтров факт перенаправления. Периодически они полностью меняют используемые методы переадресации.
Вот такие письма мы получали летом прошлого года:
Текст письма традиционно приглашает получателя заглянуть во вложение. Что же мы увидим, открыв HTML-файл? Вместо обещанного видео с Викторией Нортон мы оказываемся на спамерском сайте.
В письме, приведенном в первом примере, нас хотя бы перенаправляли на обещанную рекламу часов, здесь же мы оказываемся на взломанном сайте без какого-либо рекламного содержания. Такие рассылки показывают, что спамерам иногда важнее получить реальные почтовые адреса и заработать на переходах их владельцев по ссылкам (что и происходит при открытии HTML-вложения), чем рекламировать конкретный товар.
И перенаправляющие ссылки, и используемые для редиректов HTML-файлы часто встречаются в спаме. Каждый из методов использует для переадресации браузер пользователя, но при этом во многом отличается реализация самих редиректов на уровне исходного кода, а также приёмы, с помощью которых спамеры заставляют эти перенаправления работать у пользователей.
Приемы
Спамерские методы использования редиректов хорошо известны, многие из них уже имеют более чем десятилетнюю историю, но активно используются и сейчас. Большинство методов нацелены на обход спам-фильтров и маскировку того факта, что перенаправление вообще содержится в письме. Мы рассмотрим наиболее распространённые подходы спамеров к использованию редиректов.
1. Перенаправления средствами JavaScript
Вот так может выглядеть исходный код HTML-вложения, который отвечает за редирект:
Видно, что спамеры предпринимают несложную попытку обмануть фильтр – разбивают текст на куски строк, содержащие саму ссылку (выделено на скриншоте) и изменяют значения объекта location для переадресации:
window.location = «http://...»; – изменение этого объекта является традиционным методом перенаправления в JavaScript, редирект происходит без участия пользователя.
Следующие замены дают такой же эффект:
document.location.href = «http://...«
window.location.reload(«http://...«)
window.location.replace(«http://...«)
2. Использование meta-тегов
Помимо изменения объекта location, для достижения такого же эффекта спамеры используют другой метод перенаправления — специальный HTML-тег «meta». Такие теги обычно используют для хранения различного рода информации о странице, например, кодировки, HTTP-заголовков, ключевых слов для содержимого и так далее.
Одним из применений тега meta может быть использование заголовка refresh с параметром url, который также приводит к автоматической переадресации пользователя при загрузке страницы.
Особо примечателен малый размер полученного HTML-файла. Так как meta-тег описывается в заголовках страницы, то её содержание может быть вообще пустым, как в примере выше. Поэтому данный приём часто используется в HTML-страницах, вложенных в письма спамерских рассылок.
3. iframe, ведущий на сторонний сайт
Использование iframe-тега для перенаправления пользователя на спамерский сайт даёт возможность отобразить на текущей странице – внутри блока заданной ширины и высоты – содержимое другой страницы.
Когда пользователь откроет приложенный HTML-файл, браузер загрузит содержимое другой страницы внутрь iframe-зоны. Спамеры часто указывают для этой зоны большой размер (в нашем примере это 100% по ширине и 4700 px по высоте), и страница в итоге оказывается полностью заполнена содержимым стороннего сайта. На скриншоте ниже виден результат открытия такого вложения – со стороннего сайта в iframe-зону, занимающую весь экран браузера, была загружена румынская реклама курсов обучения английскому языку.
4. Настройка .htaccess
Удобным для спамеров, но все же редко встречающимся методом является настройка файлов .htaccess на стороне сервера. Чаще всего спамеры перенастраивают такие файлы на своих серверах.
Файл .htaccess, как правило, доступен только администратору сервера. Если он создан в какой-либо директории на сервере и верно заполнен, то при открытии ссылок, указывающих на эту директорию, пользователь будет сразу перенаправлен на указанный в .htaccess ресурс. Например, если спамер разместил на сайте в папке /spamdir файл .htaccess со специальным содержимым, то все пользователи, открывшие в спамовом письме ссылку «http://example.org/spamdir», будут автоматически перенаправлены веб-сервером на другой сайт по указанному в .htaccess адресу.
Чаще всего внутри настроек самого файла используется директива Redirect, для которой указывается, с какой страницы сайта и куда требуется совершать переадресацию (выделено красным):
Другим способом создания перенаправления служит использование директивы RewriteCond, задающей некое регулярное выражение, которому должна соответствовать ссылка. Эта директива совместно с RewriteRule задает правило для изменения адреса текущей страницы пользователя. Если IP-адрес посетителя страницы подходит под регулярное выражение, описанное в RewriteCond, то он будет перенаправлен на адрес, задаваемый правилом в директиве RewriteRule.
Злоумышленники часто используют данный приём для переадресации пользователей на сайты наиболее подходящих партнёрских программ в соответствии со страной и регионом IP-адреса. Это делает перенаправления более таргетированными и эффективными.
Ниже приведен пример типичного спамерского .htaccess, который перенаправляет посетителей из указанных подсетей.
5. Использование PHP
Редкий, но всё же встречающийся способ – использование возможностей различных скриптовых языков для переадресации пользователей.
Самый простой способ реализации редиректа на PHP:
header(‘Location: http://…’); ?>
Браузеру передаётся HTTP-заголовок Location, что приводит к перенаправлению пользователя на указанный сайт.
Также часто передаются другие заголовки, в которых указываются различные коды состояния HTTP (3хх), свидетельствующие о том, что на этой странице находится перенаправление.
HTTP/1.1 301 Moved Permanently «);
header(«Location: http://…»);
exit();
?>
Обфускация содержимого
А вот примеры писем, которые мы получали в сентябре.
Очередная уловка спамеров: под видом отчёта о статусе транзакции потенциальная жертва получает мошенническое письмо с вложенным HTML-файлом. После открытия файла спамеры без смущения сообщают получателю письма, что сейчас он будет перенаправлен на другую страницу, но умалчивают о том, что эта страница фишинговая.
Иногда спамеры размещают исходный код для перенаправления не в HTML-вложении, а в самом письме, надеясь на то, что получатель использует старую версию почтового клиента (современные программы имеют защиту от загрузки любого контента из веба) и перенаправление произойдёт прямо во время просмотра письма:
Исследуем исходный код письма из этой рассылки и поймём, как происходит перенаправление:
Мы видим, что спамеры опять вернулись к использованию JavaScript-редиректов, но на этот раз гораздо сильнее обфусцируют исходный код, а также пользуются массивами констант — числовых значений символов, из которых впоследствии собирается спамерская ссылка (как выяснится позже, эти значения ещё и домножены на функцию от порядкового номера элемента массива).
Посмотрим, что у нас получится после деобфускации кода. Выделим сам скрипт из HTML-кода и воспользуемся, например, JsPretty в связке с jsbeautifier.
Теперь видно, что спамерская ссылка всё-таки была помещена внутрь скрипта. Но где и как она хранилась?
Чтобы понять, какие приёмы используют спамеры для сокрытия ссылки и обмана спам-фильтров, мы разберем все действия, которые производит деобфускатор.
В первую очередь отформатируем скрипт до читабельного вида – расставим отступы, пробелы между операторами и переносы строк.
Код стал понятнее, но этого недостаточно. Дальше будем упрощать вручную и разбираться, что же здесь происходит:
- Убираем ненужные переменные и операторы, которые выполняются всегда.
- Прослеживаем значения переменных и их подстановки.
- Смотрим, какие вызовы получаются в итоге.
Теперь становится ясно, что весь скрипт сводится к:
1) созданию нужной строки s, содержащей исполняемый код;
2) её выполнению (строка с window[eval]).
В результате выполнения цикла в строке s будет содержаться следующий код:
И наконец-то, вот она — заветная ссылка, по которой будет перенаправлена жертва!
Теперь мы можем понять, какой алгоритм используют спамеры, генерируя подобные JavaScript-вложения:
- Разбить нужную ссылку на символы, взять их байтовые значения и функцию от этих значений сохранить в массив.
- В цикле вызвать функции, составляющие данную ссылку из значений в массиве.
- Добавить дополнительные присваивания значений одних переменных другим, чтобы изменить и скрыть их изначальные имена.
- Добавить ко всем частям кода блоки if и try-catch с истинными аргументами.
- Применить шаги 1-4 несколько раз до получения нечитаемого кода.
Вся схема работы перенаправлений представлена ниже:
Тематики писем с редиректами
Перенаправления, нацеленные на то, чтобы скрыть реальную ссылку или контактные данные заказчиков спама, присутствуют в рассылках практически всех тематик и с каждым годом становятся всё более популярными.
В случае с письмами со вложенными HTML-страницами ситуация иная. Ссылки в таких письмах обычно ведут на фишинговые сайты, где злоумышленники охотятся за паролями от почтовых ящиков пользователей, реже – на рекламу различного ПО или других сервисов.
В последнее время увеличилось количество рассылок с редиректами, ведущими на сайты знакомств.
Мы уже отмечали выше, что в зависимости от IP-адреса пользователя его могут перенаправить на тот или иной спамерский сайт. Спамеры используют такой трюк, чтобы заработать больше денег на одной рассылке. Они участвуют сразу в нескольких «партнерках», и, в зависимости от региона проживания пользователя, перенаправляют его на более подходящую. Так, пройдя по одной и той же ссылке, житель Германии может попасть, к примеру, на фишинговый сайт, а житель России – на сайт знакомств.
>Выводы
Использование тех или иных приемов редиректа является хорошим примером развития спам-рассылок с течением времени. Некоторые методы являются простыми и очевидными для получателей, и те понимают, что их перенаправляют на другой ресурс. Параллельно с этими методами развиваются и другие, более сложные, когда редирект происходит через несколько сайтов совершенно незаметно для пользователя, который видит лишь конечную страницу. Кроме того, солидную часть рассылок с редиректами составляют письма, в которых спамерские ссылки глубоко зашиты в исходный код HTML-вложений.
У спам-аналитиков есть множество инструментов, с помощью которых они могут «поймать» ту или иную спам-рассылку. Например, спам-фильтры могли бы производить полную деобфускацию всего кода, либо использовать как признак спамерского письма сам факт наличия обфусцированного кода (этот метод может привести к ложным срабатываниям). В случае с редиректами проще заблокировать рассылку, основываясь на контенте или формальных признаках, чем пытаться деобфусцировать код для каждого письма.
Редиректы особенно опасны, когда в письмах распространяются ссылки на вредоносные программы, а также в фишинговых и мошеннических письмах. С одной стороны, пользователи становятся внимательнее, и, как следствие, эффективность таких рассылок должна уменьшаться. С другой стороны, постоянно появляются новые пользователи, которые только знакомятся с интернетом, а распознать уловки злоумышленников иногда достаточно сложно. Мы хотим напомнить несколько простых советов, которые помогут серьезно повысить уровень защищенности вашего компьютера:
- Не открывайте вложенные в письма HTML-файлы, если не доверяете отправителю. То же относится к вложениям всех других типов.
- Проверяйте, куда ведет ссылка, прежде чем перейти по ней; в большинстве браузеров и почтовых клиентов достаточно навести курсор на ссылку, чтобы увидеть, куда она ведёт. Не кликайте по ссылке, если есть какие-то сомнения в надёжности отправителя.
- Не пытайтесь отписаться от спам-рассылок, это лишь сообщит спамерам, что ваш адрес «живой», и они захотят включить его в другие рассылки. Лучше сразу удаляйте полученный спам.
- Пользуйтесь защитными решениями, содержащими антивирусные и анти-спам технологии, и регулярно загружайте обновления.
И не забудьте про общие правила безопасност в интернете, их соблюдение поможет вам не стать жертвой атак мошенников и других злоумышленников.
Перенаправления в спаме
Raid
Молодец. Так все грамотно описал…