oldi

Технологии рассылки спама и методы защиты от него

Олег Зайцев

Методики рассылки спама

Рассылка вручную

Рассылка при помощи специальных программ и утилит

Рассылка через некорректно сконфигурированные почтовые серверы

Рассылка с применением web-интерфейса почтовых серверов

Некорректно сконфигурированный прокси-сервер

Троянские прокси

Спам-боты

Аналитика методик защиты от антиспам-фильтров

Модификации и искажения текста

Использование возможностей HTML

Замена рекламной информации URL

Замена текста изображением

Заключение

 

В последние годы проблема борьбы со спамом стала одной из самых существенных для большинства пользователей Интернета, поскольку, по статистике, более 80% всей получаемой корреспонденции является спамом. Борьба с ним осложняется тем, что спамеры непрерывно совершенствуют свои технологии и разрабатывают новые методики обхода фильтров. Кроме того, существует большая категория писем, которые с равным успехом можно отнести как к спаму, так и к полезной корреспонденции. В статьях раздела «Спамооборона» Яндекса для такой почты даже ввели термин «полуспам» — это письма от различных интернет-магазинов, рассылки, сообщения автоответчиков и информеров форумов и блогов, сообщения от почтовых серверов и антивирусных программ и т.п. Подобные письма достаточно трудно однозначно отнести к спаму или к полезной для пользователя корреспонденции, что усложняет настройку антиспам-фильтров.
В данной статье мы рассмотрим современные методики рассылки и маскировки спама, а также методы борьбы с ним.

Методики рассылки спама

Рассылка вручную

Подобная рассылка может вестись с реального адреса или со специально заведенных для этих целей ящиков на бесплатных почтовых серверах. Такой спам не может быть массовым, и на первый взгляд с ним сравнительно просто бороться: вносить адреса и IP-серверы спамеров в черные списки. Однако если спам рассылается, к примеру, с mail.ru, то внесение IP-адреса mail.ru в черный список блокирует прием почты с любого почтового ящика этого сервера. Блокировка по почтовым адресам свободна от этого недостатка, но она и малоэффективна, поскольку спамеру достаточно будет периодически заводить новые ящики.

Рассылка при помощи специальных программ и утилит

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

Рассылка через некорректно сконфигурированные почтовые серверы

Данный метод основан на поиске и последующей эксплуатации SMTP-серверов с некорректной настройкой и позволяет использовать их для неавторизованной рассылки спама. Можно выделить два основных случая некорректности:

  • почтовый сервер принимает и пересылает письма от неавторизованного пользователя, то есть является так называемым open relay;
  • в настройке почтового сервера установлена опция, предписывающая возвращать отправителю письма, посланные на несуществующий ящик. Обнаружив такой сервер, спамер может подключиться к нему и отправлять письма на заранее известные ему несуществующие почтовые ящики, используя адреса из своей базы рассылки. После приема письма почтовый сервер обнаружит, что его получатель некорректен, и вернет послание по адресу отправителя, то есть отправит спам получателю.

Рассылка с применением web-интерфейса почтовых серверов

В настоящее время существует множество почтовых серверов, позволяющих отправлять почту через web-интерфейс. Недочеты в механизмах регистрации и авторизации таких серверов могут эксплуатироваться спамерами: при обнаружении уязвимого сервера несложно написать программу, которая будет автоматически регистрировать почтовые ящики и впоследствии использовать их для рассылки спама. С целью борьбы с подобными методиками разработчики программного обеспечения для подобных серверов применяют сложные методики регистрации, в частности ввод контрольных кодов, отображаемых на форме регистрации в виде картинки, или многоступенчатое подтверждение регистрации.

Некорректно сконфигурированный прокси-сервер

Для рассылки спама может применяться любой Socks-, прокси- или HTTP-прокси-сервер, поддерживающий метод CONNECT. Если такой прокси-сервер сконфигурирован некорректно и принимает неавторизованные запросы с произвольных IP-адресов, то он может быть использован спамерами.

Троянские прокси

Троянский прокси (Trojan-Proxy — по классификации «Лаборатории Касперского») — это вредоносная программа, которая превращает пораженный компьютер в троянский прокси-сервер. После активации данная программа передает своим владельцам информацию о пораженном компьютере и его IP-адрес, что позволяет включить пораженный компьютер в список активных прокси и использовать для дальнейшей рассылки спама.

Спам-боты

Спам-бот — это автономная троянская программа, осуществляющая рассылку спама зараженного компьютера по заданному алгоритму. Данный метод рассылки спама является самым эффективным по ряду критериев, в частности против него практически бесполезны фильтры по IP-адресам. Кроме рассылки спама, спам-бот может решать ряд сопутствующих задач, в частности пополнять базы данных спамеров почтовыми адресами, найденными на компьютерах пользователей. Механизм работы спам-бота показан на рис. 1.

 

Рис. 1. Схема работы спам-бота

Наиболее типичный метод установки спам-бота — при помощи троянского загрузчика. Кроме того, для доставки спам-бота могут применяться почтовые и сетевые черви.

После установки спам-бот связывается с одним из принадлежащих спамерам серверов в Интернете (шаг 1) и передает отчет о своей установке. Адреса этих серверов обычно заданы в теле спам-бота. В ответ спам-бот получает конфигурацию (шаг 2), в которой указано, с каких серверов он должен запрашивать данные для рассылки спама. После получения этой информации он связывается с указанным сервером и получает список e-mail-адресов для рассылки (шаг 3), шаблоны для формирования писем и прочие настройки (шаг 4). После выполнения рассылки спам-бот отсылает отчет, в котором обычно содержится статистика и список адресов, по которым не удалось отправить почту с указанием ошибок. Для обновления версий спам-бота на пораженный компьютер может внедряться Trojan-Downloader или сам спам-бот может наделяться функцией самообновления.

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

Современные методики борьбы со спамом

Все современные методики борьбы со спамом можно условно разделить на следующие категории:

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

- по формальным признакам,

- по содержимому с использованием сигнатурного анализа. Данный метод основан на поиске в тексте письма определенных сигнатур, описанных в обновляемой базе данных,

- по содержимому с применением статистических методик. Большинство современных методов данного класса основано на теореме Байеса,

- по содержимому с использованием SURBL (Spam URL Realtime Block Lists — списка блокировки спамерских URL). Идея метода состоит в поиске расположенных в теле письма ссылок и их проверке по базе SURBL. Этот метод эффективен против спама, в котором для обхода фильтров вместо рекламы применяется ссылка на сайт с рекламой;

  • детекторы массовой рассылки — как следует из названия, их задачей является обнаружение рассылки похожего письма большому количеству абонентов;
  • методы, основанные на признании отправителя письма в качестве спамера — они опираются на различные черные списки IP- и почтовых адресов. Как и в предыдущем случае, возможно решение обратной задачи — опознание доверенных пользователей или почтовых серверов, от которых необходимо принимать почту в любом случае. Достоинством данного метода является то, что для опознавания отправителя в качестве спамера почтовому серверу не требуется принимать письмо, что существенно экономит трафик. Опознавание отправителя производится по его IP-адресу. Для проверки адреса можно применять собственные черные и белые списки и использовать сервисы RBL (Real-time Blackhole List) и DNSBL (DNS-based Blackhole List). Сервис DNSBL идеологически похож на DNS — существуют серверы, содержащие динамически обновляемые черные списки. Использующий технологию DNSBL почтовый сервер или спам-фильтр обращается к серверу DNSBL с запросами на проверку IP-адреса;
  • методы, основанные на верификации обратного адреса отправителя и его домена, — простейшим методом защиты является обычный DNS-запрос по имени домена отправителя письма. Если выясняется, что домен отправителя не существует, то, вероятнее всего, адрес отправителя является поддельным. Однако этот метод малоэффективен, поскольку в качестве адреса отправителя спамеры могут использовать реальные адреса, случайным образом выбранные из базы рассылки. Более сложная технология предполагает проверку, допустима ли отправка письма с указанным обратным адресом с данного IP-адреса. В качестве примера можно рассмотреть технологию SenderID (http://www.microsoft.com/mscorp/safety/technologies/senderid/default.mspx). Она основана на защите от подделки обратного адреса отправителя путем публикации в DNS так называемой политики использования домена, то есть, по сути, списка IP-адресов, с которых могут отправляться письма с данным доменом отправителя. Другим примером является технология SPF (Sender Policy Framework), описанная в RCF-4408. Она также предполагает использование протокола DNS для верификации адреса отправителя, а принцип ее работы сводится к тому, что если владелец домена желает поддерживать SPF-верификацию, то он добавляет в DNS-записи для своего домена особую запись, в которой указываются версия SPF и диапазоны IP-адресов, с которых может приходить почта от пользователей данного домена. Принцип проверки тоже достаточно прост: в ходе анализа письма определяются IP-адрес отправляющего его пользователя и записанный в заголовках письма обратный адрес. Для верификации делается DNS-запрос для домена отправителя и изучается ответ. При обнаружении в нем SPF-записи спам-фильтру остается только сравнить IP-адрес отправителя с правилами, записанными в SPF-записи: если IP-адрес не проходит контроль, то с высокой степенью вероятности можно считать, что обратный адрес подделан и письмо является спамом. Выполнять SFP-запросы можно вручную, без специальных программных средств. Для примера рассмотрим получение SPF-записи для домена mail.ru. Для этого нам потребуется запустить встроенную в Windows XP утилиту nslookup и выполнить команду set type=any для настройки запроса всех типов DNS-записей. Далее остается выполнить DNS-запрос для домена mail.ru (рис. 2).

 

Рис. 2. DNS-запрос для домена mail.ru

Кроме перечисленных методик, существует ряд других, например методика, основанная на эмуляции устранимой ошибки пересылки почты на SMTP-сервере. Реальный SMTP-сервер отправителя при обнаружении подобной ошибки должен выдержать некоторую паузу (обычно 1-2 часа) и повторить попытку. Большинство спам-ботов этого не делают, поэтому для защиты от них используется данная методика. Однако SMTP-серверы не обязаны следовать протоколу и повторять попытки, что может привести к потере почты.

Другая методика связана с тем, что после получения подозрительного письма антиспам-фильтр может попытаться связаться с отправителем письма и предложить ему тем или иным способом доказать, что он не является спамером. Обычно проверка сводится к посещению некоторой страницы и заполнению на ней web-формы. Подобную методику, в частности, практикует фильтр спама на mail.ru.

Аналитика методик защиты от антиспам-фильтров

Модификации и искажения текста

На первых этапах развития спама (в нашей стране это 1997-1999 годы) рассылка производилась без модификации текста сообщения. Это привело к проявлению первых фильтров, причем элементарный из них мог просто рассчитать контрольную сумму сообщения и сравнить его с базой. Ответным ходом спамеров была разработка следующих методик автоматической модификации текста для затруднения его идентификации в качестве спама:

  • персонализация сообщений — это самый простой метод маскировки, состоящий в небольшой модификации сообщения с использованием доступных спамеру данных, в частности e-mail-адреса. Например, вместо статического текста: «Уважаемый вебмастер! Специалисты нашей компании изучили ваш сайт и пришли к выводу, что наша фирма может усовершенствовать его дизайн…» — легко можно получить динамический: «Уважаемый Zaitsev! Специалисты нашей компании изучили ваш сайт www.smolen.ru и пришли к выводу, что наша фирма может усовершенствовать его дизайн…» Понятно, что эти данные несложно получить из почтового адреса zaitsev@smolen.ru;
  • использование пробелов и иных разделителей в словах — например вместо «Купите супертовар» — «К У П И ТЕ супер-товар»;
  • транслитерация — например выделенные полужирным буквы фразы «Купите супертовар» могут быть заменены идентичными по начертанию латинскими буквами, причем видимой разницы читающий текст пользователь не обнаружит. Возможны более заметные на глаз модификации, не влияющие на понимание текста, — например «][акер», «}{акер» или «4ерный» — в данном примере буквы заменяются цифрами или похожими по начертанию наборами символов. Этот прием эффективен против байесовских фильтров, и для борьбы с ним антиспамерская система должна производить нормализацию текста и детектирование подобных искажений;
  • перефразирование — данная методика состоит в том, что в ходе разработки спам-письма можно создать десятки похожих по смыслу фраз и затем автоматически собрать из них письмо. Например, фразы «Купите супертовар» и «Приобретайте нашу отличную продукцию» похожи по смыслу, но абсолютно различны для фильтра Байеса или сигнатурного поиска. Кроме того, возможно применение словаря синонимов для случайной замены слов на близкие по смыслу эквиваленты;
  • добавление постороннего текста — данная методика состоит в том, что, кроме рекламы, в письмо вставляется несколько предложений, не имеющих никакого отношения к теме письма, — например отрывок из любого литературного произведения. Этот прием усложняет настройку и ухудшает качество работы фильтра Байеса, но не оказывает влияния не качество работы сигнатурного анализатора.

Использование возможностей HTML

Спамеры давно взяли HTML на вооружение, так как он позволяет реализовать несколько простых и эффективных методик маскировки. Рассмотрим небольшой пример, подготовленный на основе анализа основных методик:

 

<font color=#FFFFFF>У попа была собака</font><br>

<b>Покупайте супертовары по суперцене</b><br>

<!— Он ее любил —>

<b>Купив супертовар сегодня, вы получите шанс выиг-

рать суперприз !</b><br>

<font size=1 color=Gray>Съела она кусок мяса...</font>

<br>

<br><br><br><br><br><br><br><br><br><br><br><br><br>

<br><br><br><br>

Это невидимый текст 1<br>

<table width=”5000" border=”0" cellspacing=”0"

cellpadding=”0">

<tr><td align=right>Это невидимый текст 2

</table>

 

Просмотр данного текста в почтовом клиенте приведет к отображению информации, показанной на рис. 3.

 

Рис. 3. HTML-спам

Как легко заметить, первая строка текста не видна, поскольку цвет символов совпадает с цветом фона. Третья строка тоже не видна, так как является комментарием HTML и игнорируется при отображении. Наконец, текст «Съела она кусок мяса...» виден, но размер шрифта и его цвет почти не заметен на фоне основных надписей. Текстовая строка «Невидимый текст 1» является видимой с точки зрения HTML, но незаметна для пользователя, поскольку перед ней стоит масса тэгов <br> (принудительный перевод строки) и она оказывается вне поля зрения. Текст «Невидимый текст 2» HTML тоже видит, а для читающего письмо пользователя он незаметен, так как выравнивается по правому краю ячейки таблицы шириной в 5 тыс. пикселов и тем самым оказывается вне поля зрения. Приведенные методы крайне просты в реализации, но они существенно затрудняют анализ письма при помощи сигнатур или статистических методов, поскольку обычно антиспам-фильтрами поддерживаются простейшие методики маскировки: невидимый текст, текст с малым размером шрифта, комментарии. Тем не менее обнаружение маскировки текста может использоваться фильтром в качестве дополнительного признака.

Замена рекламной информации URL

Данная методика состоит в том, что вместо включения рекламы в письмо спамеры могут разместить ее на web-сервере и рассылать письма со ссылкой на этот сервер. Такие письма можно детектировать сигнатурными методами (включая в базу сигнатур используемые спамерами ссылки) или при помощи SURBL.

Замена текста изображением

Данная методика пришла на смену текстовым письмам. Идея проста: рекламный текст передается в виде изображения формата GIF или JPEG и вместо текста письма в нем присутствует ссылка на изображение. Данная методика пережила три усовершенствования:

  • статические изображения без маскировки — их вполне достаточно для преодоления байесовских фильтров, однако другие методики анализа позволяют опознать письма как спам. В частности, можно сравнить сигнатуры изображения с базой сигнатур подобных спам-картинок или применить алгоритмы OCR, позволяющие обнаружить в изображении текстовые данные и произвести их преобразование в текст для анализа. Для сигнатурного поиска некоторые администраторы сетей весьма успешно применяют антивирус CLAMAV — у него открытые базы и их несложно пополнять своими сигнатурами;
  • динамически формируемое изображение — отличается от статического тем, что в момент его генерации меняется размер изображения, используемые шрифт, цвет символов и цвет фона. Этот прием делает невозможным поиск изображений по сигнатурам или сравнение изображений — единственным методом анализа остается OCR-метод;
  • динамически формируемое изображение с анти-OCR-элементами — как следует из названия, данный метод отличается от предыдущего тем, что при формировании изображения в него включаются элементы, затрудняющие поиск и опознавание текста. В простейшем случае на изображение наносятся графические «шумы» в виде точек и линий (рис. 4а), в более сложном — применяются индивидуальные смещения каждой буквы текста, случайные изменения размера, типа и цвета шрифта, в изображении присутствуют сложные «шумы», рамки, многоцветные многоугольники (рис. 4б). OCR-системы имеют довольно ограниченные возможности и с такими изображениями справляются плохо;

 

Рис. 4. Динамически формируемое изображение с анти-OCR-элементами

  • динамически формируемое изображение с анти-OCR-элементами и эффектом 25-го кадра — они аналогичны предыдущим методам, но имеют одно новшество: изображение является анимированной GIF-картинкой, содержащей несколько кадров — основной и 1-2 кадра, которые отображаются ненадолго и, кроме графических «шумов», содержат «установочные фразы», например «BUY!» (рис. 5). Видимо, создатели этого спама решили, что кратковременные вспышки кадров с такими словами должны влиять на подсознание читающего. Естественно, никакого значимого воздействия они на человека не оказывают, но мерцающая картинка привлекает внимание и усложняет работу анализаторов антиспам-системы.

 

Рис. 5. Пример использования в спаме
эффекта 25-го кадра

Заключение

В данной статье описаны основные современные методики рассылки спама и средства борьбы с ним. В качестве общего вывода можно отметить, что ни один из этих методов борьбы со спамом не является в настоящее время достаточно эффективным. Поэтому в идеале хороший антиспам-фильтр должен использовать все доступные методики и выносить вердикт по совокупности результатов оценки письма с применением различных методик анализа. Кроме того, можно отметить, что простейшие персональные фильтры (обычно на основе теоремы Байеса, например BayesIt для TheBat) постепенно теряют свою актуальность, поскольку они плохо обучаются по «зашумленному», динамически собираемому тексту и бесполезны против изображений.

 

В начало В начало

КомпьютерПресс 2'2007