Определения
При рассмотрении и изучении какого-либо явления, необходимо его четко определить. При рассмотрении проблем, связанных со «спамом» это особенно важно, так как имеется большое количество различных определений, многие из которых слишком расплывчаты для практического использования. В тексте этой статьи использованы такие определения:
- Спам — анонимная незапрошенная массовая рассылка электронной почты. Все эпитеты в определении являются важными, другие виды массовых рассылок почты в данном тексте спамом не считаются. Большинство спам рассылок носят рекламный или другой коммерческий характер, это важно при рассмотрении экономики спама, но не так важно с технической точки зрения. ICQ, SMS и другие подобные рассылки в статье не рассматриваются.
- Легальная рассылка — массовая рассылка электронной почты, запрошенная пользователем. Предполагается, что пользователь легальной рассылки изъявил желание ее получать. Как правило, легальные рассылки не анонимны.
- Обычная или легальная электронная почта — электронная почта между пользователями, либо между автоматическими системами и пользователями. Обычная почта в первую очередь не является массовой, получателей отдельного сообщения обычно единицы.
Почему мы страдаем от спама?
Незапрошенные массовые анонимные рассылки (то есть спам) стали на сегодня существенной проблемой для многих людей и организаций, использующих электронную почту. Согласно отчету Radicati Group (www.radicati.com), на конец 2002 года в мире ежедневно рассылалось 2,3 млрд. спам-сообщений, причем количество это непрерывно увеличивалось. Принято считать, что спам наносит ущерб его получателям, впрочем, обсуждение этого ущерба не входит в задачи данного текста.
Дешевизна массовых рассылок объясняется двумя причинами. Во-первых, Интернет — это очень дешевый транспорт данных; при современной российской цене за сетевой трафик, стоимость передачи одного E-mail сообщения составляет сотые доли цента, а если производить рассылку из США, то себестоимость будет еще меньшей. Во-вторых, спамеры широко используют для доставки своих сообщений чужие ресурсы (вычислительные и транспортные мощности, к которым получен незаконный доступ), что еще более снижает себестоимость.
Распространенность спама и рост его объемов объясняются тем, что, с учетом его дешевизны, спам — это очень эффективный рекламный инструмент. Цена рекламной рассылки в расчете на одно письмо ничтожна, охват аудитории огромен, количество откликов на рекламу — более чем приемлемо для рекламодателей (тем более, в сравнении с заплаченными деньгами). Другими словами, находятся люди, которые покупают виагру и пилюли для увеличения разных частей тела, которые отвечают на так называемые нигерийские письма, записываются на обучение в «Центр Американского Английского» и так далее.
Таким образом, за спамерами стоят серьезные деньги рекламодателей. По простейшим оценкам, рынок спама составляет минимум сотни миллионов долларов в год в мире и единицы миллионов долларов в год в России. Это обстоятельство следует учитывать при любом рассмотрении темы спама. В частности, только «давлением денег» (наличием рекламодателей, желающих потратить деньги на спам) можно объяснить ту эволюцию технологий спама, которая произошла в последние годы.
История проблемы спама — технический взгляд
Первый спам, появившийся в середине 90-х годов, был прост и незатейлив. Одно и то же письмо рассылалось через сравнительно небольшое (по сегодняшним меркам) количество «открытых релеев» (open relay) — почтовых систем, позволяющих произвести «через себя» транзитную доставку почты произвольным адресатам. Боролись с таким спамом столь же незамысловато — помещая IP-адреса используемых спамерами почтовых серверов в черные списки. В 1997-м году появился MAPS RBL [1] (www.mail-abuse.org/rbl/) — первый черный список, использовавший технологи DNS и BGP, что позволяло обновлять его с очень большой скоростью.
До 1998-99 годов проблема спама усугублялась тем, что популярное ПО для E-mail серверов — Sendmail (www.sendmail.org) — при настройках по умолчанию работало «открытым релеем». Рекомендации по устранению этого свойства появились только для Sendmail 8.8 в 1996 году, а при настройке «по умолчанию» Sendmail перестал быть «открытым релеем» только с версии 8.9, вышедшей в мае 1998 года (и после этого понадобилось существенное время на то, чтобы основной парк почтовых серверов был обновлен).
Другими словами, чтобы найти открытый релей для посылки спама — нужно было просто поискать. Это делали как спамеры, так и антиспамеры (например, популярный в свое время сервис ORBS.org автоматически искал такие почтовые сервисы и помещал их в свою базу данных). И RBL и спамерские списки машин для рассылки стали пополняться автоматически.
В дальнейшем, вместе с «открытыми релеями», для спама начали использоваться и другие способы доступа к ресурсам чужих компьютеров, в первую очередь так называемые «socks»-серверы [2] и proxy-серверы [3] к которым был возможен неавторизованный доступ.
К несчастью, socks- и proxy- сервисы имеются в составе программного обеспечения (далее в тексте — ПО), предназначенного для конечных пользователей [4] , причем во многих случаях неавторизованный доступ разрешен по умолчанию. В результате, количество клиентских компьютеров, которые могут быть использованы для рассылки спама (и прочих действий под контролем третьих лиц) растет вместе с ростом количества высокоскоростных подключений к Интернет. В последнее время все большую долю в рассылке спама занимают «затрояненные» пользовательские компьютеры — на которые каким-либо образом [5] попадает скрытое от пользователя вредоносное ПО, позволяющее спамеру осуществить доступ к ресурсам данного компьютера.
Постоянно увеличивающееся количество IP-адресов, с которых потенциально возможна рассылка спама, сделало классические системы RBL (куда помещались только IP-адреса машин, которые действительно могут быть использованы для рассылки спама, либо реально использовались для этого) не слишком эффективными. В результате, появились «превентивные» черные списки, куда попадают целые диапазоны IP адресов (иногда — десятками миллионов), часть — все адреса, принадлежащие определенным ISP, а иногда — целые страны и даже группы стран [6] . Такой подход увеличивает эффективность RBL в борьбе со спамом и одновременно во многих случаях не позволяет доставить легальную почту.
По оценкам автора [7] , на сегодняшний день консервативные RBL позволяют улавливать около половины спама ценой потерь нескольких процентов обычной почты. Для «превентивных» RBL-сервисов оба показателя выше, большое количество потерь легитимной почты делает использование подобных сервисов мало приемлемым.
А увеличение эффективности RBL против спама без роста (а лучше — со снижением) доли ложных срабатываний представляется автору малореальным.
Проблемы RBL — не слишком высокая эффективность против спама и существенная вероятность потерь легальной почты — привели к появлению других способов борьбы со спамом, в частности:
- DNS-проверки — проверяется соответствие данных, сообщаемых в SMTP-сессии реальности, речь идет, в частности, о данных, сообщаемых в SMTP HELO.
- Анализ заголовков сообщения. В частности, многие программы для массовых рассылок E-mail могут быть обнаружены по содержимому заголовков.
Каждый из этих методов, особенно сразу после своего появления, был достаточно эффективным, однако ни один из методов не является «абсолютным оружием» — технически возможно сделать абсолютно «легальное» (с точки зрения рассматриваемых методов) спам-сообщение.
Дальнейшая эволюция методов борьбы со спамом привела к появлению контентной фильтрации электронной почты — анализу текстов сообщений детерминированными или статистическими методами. Контентная фильтрация спама является на сегодня достаточно новым методом, эффективность которого пока достаточно велика, однако видна серьезная борьба против контентных фильтров со стороны распространителей спама. Чьей победой закончится эта борьба на сегодняшний день — неясно.
Развитие технологий рассылки спама привело к тому, что на сегодняшний день спам-почта (по меньшей мере, спам, нацеленный на рынок России) имеет ряд технологических особенностей, важных для рассматриваемой далее темы:
- Распределенность. Существенная доля спам-сообщений рассылается через оборудование, установленное у конечных пользователей (обычно, у частных пользователей). Используются как проблемы в пользовательском ПО, так и вредоносные «троянские» программы, которые пользователь получает вместе с вирусами, либо по файлообменным сетям. По всей видимости, могут использоваться и уязвимости в беспроводных сетях.
Как правило, отдельный пользовательский компьютер используется для посылки небольшой доли сообщений, при этом в рассылке участвуют сотни и тысячи пользовательских машин. Судя по всему, крупнейшим спамерам удалось наладить сквозной мониторинг доставки сообщений, в результате письмо, отвергнутое при попытке доставки с одного IP адреса, будет послано заново с другого IP. Это делает отражение (reject) почты по RBL неэффективным — попытки доставки сообщения повторятся с других IP-адресов.
Неавторизованное использование чужих ресурсов — метод очевидно незаконный и уголовно преследуемый в большинстве стран, однако техническая сложность обеспечения доказательств делает подобное преследование малоэффективным.
- Персонализация. Большая доля спам-сообщений уникальна. Другими словами, в письмо вносятся случайные последовательности символов (часто невидимые для читателя), персональные обращения, анекдоты, большие куски связного текста и так далее.
- «Мимикрия» под легальные письма. Спамеры делают техническую информацию в рассылаемых письмах максимально похожей на легальную переписку. В результате, большая часть спама легко проходит через формальные фильтры.
Кроме отрицательных (с точки зрения легкости обнаружения) свойств, у спама есть и ряд особенностей, облегчающих его обнаружение:
А. Спам-сообщение содержит сообщение (рекламу) от заказчика рассылки. Таким образом, произвольного текста в сообщении быть не может, там будет описан рекламируемый продукт или услуга.
Б. Спам-сообщение должно быть легко читаемым для получателя. Другими словами, оно не может быть зашифровано, основной объем должен быть получен в составе сообщения. Количество случайных последовательностей («мусора»), видимых пользователем, должно быть небольшим. При нарушении этих правил снижается читаемость, а, следовательно, и отклик на рекламу.
В. Уникальность сообщений обеспечивается автоматическим путем, то есть случайные последовательности символов, приветствия и так далее — добавляются программой. В противном случае стоимость и время изготовления индивидуальных сообщений будут слишком большими.
Продолжение следует
Глоссарий к статье:
[1] RBL — Realtime Blackhole List — черный список адресов компьютеров, содержимое которого доступно его пользователям в реальном времени.
[2] Socks-server — ПО, обеспечивающее доступ нескольких пользовательских компьютеров в Интернет, с использованием одного IP-адреса. Может быть использовано для разделения одного dialup- или xDSL-соединения между несколькими компьютерами пользователя.
[3] Proxy-server — ПО, действующее как «промежуточный сервер» между клиентом и реальным сервером, обслуживающим запрос. Также может быть использовано для разделения одного соединения.
[4] Socks- и proxy— серверы часто включают в состав ПО, предназначенного для пользователей высокоскоростных личных подключений к Интернету (DSL или кабельные модемы). Часто, для упрощения конфигурирования конечным пользователем, контроль доступа в таком ПО выключен в настройках по умолчанию.
[5] «Троянские программы» часто попадают к пользователям через файлообменные сети. Автору пока неизвестны E-mail вирусы, достоверно включающие в себя «троянскую» компоненту для рассылки спама, но массовое появление таких вирусов не будет сюрпризом.
[6] Автору известны прецеденты неприема почты с IP-адресов, входящих в компетенцию ARIN registry, а это вся Юго-Восточная Азия, Австралия и Новая Зеландия.
[7] см. статью автора «RBL — вред или польза?» на сайте www.spamtest.ru.
Распределенные методы обнаружения спама: обзор существующих решений, анализ перспектив (часть 1)