Архивы: по дате | по разделам | по авторам

Интернет без спама: Первый шаг

АрхивСетевое окружение (архив)
автор : Ярослав Давыдовский   18.03.2002

1400 порций спама ежедневно или метод "антиспам-ключей".

«Для многих получение почты
является одним из самых ярких событий дня.»
— Уинстон Черчилль.

По данным компании BrightMail, количество спама в расчете на каждого пользователя за прошлый год увеличилось приблизительно на 200%. И многие эксперты прогнозируют, что количество «электронного мусора» вскоре может достичь поистине невообразимых размеров. Например, по оценкам Jupiter Media Metrix, через четыре года каждый пользователь Сети может «рассчитывать» на получение в среднем 1400 порций спама ежедневно.

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

Но проблема спама в Сети является своего рода «детской болезнью», то есть скорее «болезнью роста», чем неким смертельным недугом, от которого ему, Интернету, и суждено вскоре безвозвратно и скоропостижно погибнуть. Нет, конечно, отнюдь — просто в доинформационную эпоху в обществе никогда раньше не существовало подобной возможности очень малозатратной коммуникации теоретически каждого и с любым из уже полумиллиарда пользователей во всем мире. А главное, именно «малозатратной коммуникации» любого желающего с большим количеством даже «нежелающих» этого получателей корреспонденции. Причем не только через email, но и любыми другими способами массовой электронной коммуникации — IM, SMS, MMS, et cetera.

Вероятно, что временной лаг с задержкой «излечения» уже более чем в пятилетку вызван в первую очередь именно новизной подобной социальной проблемы. Поскольку с точки зрения социологии и развития общества срок в 5-10 лет — это почти лишь мгновение. И вся загвоздка скорее в осмыслении и четком понимании самой сути проблемы, чем в какой-то особой гипотетической сложности ее последующего решения. Ее вполне можно решить, причем применяя достаточно простые или даже тривиальные средства. Но, конечно, только применяя сами эти «лечебные процедуры» в разумной последовательности и разумных-же количествах.

Антиспам-ключи

Главная и первоочередная задача, простое решение которой позволит также просто и достаточно безболезненно осуществить любые другие последующие шаги — это проблема отделения «зерен от плевел». Особенно в случае электронной почты, как наиболее массового средства коммуникации — именно достоверное разделение почты на «белый», «серый» и «черный» списки. Имеется ввиду некий условный «спектральный анализ» всей входящей корреспонденции по их отправителям — то есть для начала нужно хотя бы иметь возможность четко определить, что полученное вами сообщение не отправлено «поддельным адресатом». Суть этой уже почти априорно «вечной проблемы» кроется в широко используемой возможности беспрепятственной подделки email-адресов, так называемом спуфинге (от английского spoof — мистификация, обман) — то есть использование недобросовестными отправителями поддельных обратных адресов, которые на самом деле им вовсе не принадлежат.

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

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

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

Например, весьма и весьма тривиальное решение — просто добавьте в вашу «учетную запись» в почтовом клиенте в поле «Имя» некий антиспам-ключ, например — {00001}. Тогда в результате этих ваших несложных и не очень обременительных действий вся отправляемая вами корреспонденция будет содержать этот ключик в поле:

From: «Ваше Имя {00001}» <ваш@почтовый.адрес>

И теперь уже подобную сортировку можно осуществить элементарно просто. Достаточно заблокировать всю входящую корреспонденцию, где отправителем значитесь как будто вы, но которая на самом деле не имеет указанного вами ключа, т.е. {00001}. Причем подобную фильтрацию можно легко осуществить почти в любом современном почтовом клиенте, начиная от Outlook Express и далее, по списку. А в той теоретически возможной ситуации, если какой-нибудь спаммер и «откопает» где-нибудь в недрах Интернета ваш антиспам- ключ, то у вас есть огромное позиционное преимущество — вы в любой момент можете его изменить сами, как только этого пожелаете! Например — на {00002}, или любое другое, случайным образом выбранное вами число.

Желательно, чтобы это число (антиспам-ключ) было достаточно многовариантным — для того, чтобы заранее исключить любые поползновения спаммеров попытаться подобрать его методом банального перебора. То есть отправки вам значительного количества писем, в надежде на то, что хотя бы одно из них «прорвется». Более подробно вопрос спецификации «ключей» будет рассмотрен чуть позже — но в подавляющем большинстве случаев вполне достаточным будет использование любого пятизначного числа, в диапазоне из ста тысяч возможных комбинаций. А в случае необходимости вы вольны использовать и намного большие числа, то есть значительно увеличить количество вариантов. Поскольку в данном случае устанавливаете «правила игры» именно вы — никто не может вам ни помешать, ни запретить это сделать, если вы сочтете это нужным. Например, вполне допустимо применять числа-ключи (длиной от 5 до 50 знаков) в представлении 09az, т.е. дополнительно используя все литеры латинского алфавита нижнего регистра.

Конечно, сам этот метод не является слишком уж криптостойким — для достижения этой цели необходимо применять метод «цифровой подписи» или любые другие достаточно сложные методы. Но не стоит забывать, что решается именно проблема спама, а отнюдь не безопасности банковских переводов. А для решения проблемы блокировки «поддельной корреспонденции» его вполне достаточно — как минимум, на первом этапе. Главное преимущество метода «антиспам-ключей» именно как «базового способа» кроется именно в чрезвычайной простоте его использования и, что особенно важно — внедрения.

Полезные свойства

Рассмотрим еще одно весьма полезное следствие вашего действия по добавлению «ключа», хотя возможно на первый взгляд и не слишком очевидное. Но тем не менее — именно ввиду легкости и простоты осуществления которое можно рекомендовать для повседневного использования уже сейчас. Дело в том, что в подавляющем большинстве случаев современные почтовые клиенты при ответе на полученное письмо автоматически подставляют информацию из поля "From:" в поле "To:". Например, если получатель вашего письма (с антиспам-ключом) напишет вам на него ответ, то с очень большой долей вероятности в этом случае вы получите письмо, содержащее поле:

To: «Ваше Имя {00001}» <ваш@почтовый.адрес>

То есть в вашем распоряжении появляется еще один простой критерий, по которому вы весьма достоверно можете определить, что получено письмо именно от адресата, с которым вы уже ведете переписку. Даже в том случае если вы еще не успели, допустим, вручную добавить его в ваш разрешительный «белый список». И теперь предохраниться от возможного убиения подобных писем можно также элементарно просто. Например, в случае с Outlook Express как наиболее распространенном почтовым клиентом вы через встроенную опцию Mail Rules (Tools -> Message Rules -> Mail) добавляете следующее «правило»:

Where the To or CC line contains '{00001}'
Stop processing more rules

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

Гибкий подход

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

Конечно, это произойдет отнюдь не сразу — поскольку для этого нужно, чтобы достаточно большое число интернет-пользователей начало применять подобный метод защиты. То есть их количество достигло некоей критической массы, например 5-10% от всех пользователей — условного порога, после которого спаммеры (точнее — их «критическая масса») сочтут целесообразным попытаться преодолеть такой «несложный», на первый взгляд, барьер. Но это только на первый взгляд орешек кажется таким уж непрочным.

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

Да и сами антиспам-ключи можно применять достаточно гибко, сводя любые возможные риски к разумному минимуму. Например, вместо одного ключа для всего списка ваших адресатов даже в случае частной переписки можно (и наверняка стоит) применять отдельный ключ для каждого адресата. Например, просто добавив этот ключ в адресную книгу в вашем почтовом клиенте в поле «Имя». Тогда вся корреспонденция, которую вы отправляете этому получателю, в поле "To:" будет автоматически нести этот ключ. Соответственно, у получателя появляется достаточно достоверный и простой способ определить, что отправитель не является «поддельным».

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

В принципе, теоретически для использования метода «антиспам-ключей» вполне можно обойтись даже одним-единственным полем "Subject:" — но из-за соображений удобства пользователей этот универсальный вариант размещения ключа лучше применять только в качестве дополнительного. Применять поле «Тема письма:» стоит, во-первых, в типичных ситуациях именно «ручного ввода» самого антиспам-ключа, а во- вторых, во всех «остальных» случаях, когда использование полей "To:" и "From:" не является возможным или оправданным — то есть как «запасной вариант». Кроме того, для более «профессионального» использования можно также в качестве дополнительной «несущей конструкции» применять еще и специальное поле "X-AntiSpam-Key:", но это уже вопрос для отдельного и более подробного изложения.

Следующие шаги

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

Конечно, большинство современных почтовых агентов не являются идеальным средством применения метода антиспам-ключей собственно для фильтрации корреспонденции. По той простой причине, что это скорее реализация «вручную», не слишком удобная для повседневного использования. Тем не менее, все они могут быть безболезненно сопряжены с более гибкими и мощными фильтрирующими антиспам-системами, расположенными, например, на стороне вашего интернет-провайдера. Причем сама поддержка всех процедур вполне может осуществляться полностью автоматически, при минимальном «ручном» вмешательстве конечного пользователя. Кроме того, и существующие почтовые программы (Message User Agent — MUA) вполне могут быть соответствующим образом модифицированы — а некоторые, например The Bat, уже сейчас можно применять в качестве достаточно мощного средства фильтрации вашей переписки, в том числе и с использованием антиспам-ключей.

Подробнее вопросы о применении методики антиспам-ключей и построении на его основе гибких и эффективных антиспам-систем (Message Filtering Agent — MFA) будут рассмотрены в следующих публикациях. Но добавить «ключик» в вашу корреспонденцию вы можете уже сейчас — хотя бы и просто для предварительного экспериментирования. Удачных вам опытов!

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.