Архив новостей

«Этюд в багровых тонах» или Мысли о том, как при помощи The Bat сказать спаму «НЕТ!»

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

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

Сразу же стоит упомянуть, что возможности The Bat 1.62 (последнего релиза) и бет 1.63 в этой части сильно отличаются (в лучшую для 1.63 beta сторону — добавленная возможность подключения и использования специализированных антиспам-плагинов дает практически неограниченную возможность реализации самых изощренных методов проверки Вашей входящей почты), поэтому и говорить о них стоит отдельно.

Начнем с 1.62 (хотя большая часть из этого также легко может использоваться и с более старыми версиями).

Основным инструментов в нашей борьбе станет мощная система фильтров The Bat. Они доступны из главного меню программы (Ящик-настройка сортировщика писем). Известно, что принимаемая почта может проходить через два набора фильтров — фильтры «выборочного скачивания» и фильтры «входящей почты«… Какие из них использовать, а какие нет — вопрос очень индивидуальный, зависит от личных предпочтений и множества условий:

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

Рассмотрим для полноты оба варианта фильтров.

Выборочное скачивание

ЗаПротив
1. Не загружают полностью все письмо, только заголовки (меньше трафик)1. Нельзя анализировать тело письма
2. Один внешний файл сигнальных строк можно использовать в фильтрах разных ящиков2. При очень большом количестве писем и низкой скорости время соединения может оказаться даже большим, чем просто получить все письма и разбираться «на месте»
4. Внешние текстовые файлы можно редактировать без запуска The Bat и использовать не только ручную правку 3. Не ведут логов работы 

Фильтры входящей почты

ЗаПротив
1. позволяют использовать дополнительные условия проверки (принадлежность — отсутствие в адресной книге) и результаты проверки по предшествующим в цепочке фильтрам1. До начала работы вы весь мусор уже получили, сэкономить получится только время на разборку (и нервы), но не деньги
2. Проверяют все письмо (и заголовки и текст письма) 

В версиях 1.6х встроен простейший фильтр входящей почты «», который проверяет отправителя полученного сообщения на присутствие в выбранных адресных книгах (или в отдельных группах адресных книг) и перемещает письма от известных за пределы Inbox, оставляя в нем только неизвестных — и спам…

Еще одна достаточно простая и очевидная проверка — если Вашего имени или адреса нет в списке получателей, то такое письмо можно считать подозрительным (исключая, конечно, вариант подписки на рассылки и адресованные по BCC — скрытой копии сообщения).

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

Мощным инструментом в The Bat является поддержка регулярных выражений. С их помощью можно свести многочисленные вариации, на которые так изобретательны спамеры («:в соответствии с Конституцией:», «:приносим:извинения:за:»), в одну или несколько (вместо десятков) сигнальных строк. Отлаживать и тестировать регулярные выражения можно в самом The Bat (на время экспериментов заменив действие с «удалить» или «переместить» например на «выставить флаг» или «расцветить ярким цветом»).

Можно также использовать специализированные утилиты. Одна из них, входящая в состав TRegExpr, предназначенная специально для тестирования регулярных выражений, доступна на домашней страничке Андрея Сорокина ( или ее зеркале).

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

Списки запрещенных хостов, поддерживаемые различными DNSBL-системами, однако, могут оказаться полезными из-за своей динамической природы. Они обновляются достаточно регулярно и оперативно. Если подделать e-mail адрес может любой, с IP-адресами и DNS-именами такой фокус легко не проходит — обычно они за пределами возможностей спамеров. The Bat не может использовать эти данные напрямую (произвольные DNS-запросы выходят за рамки необходимого обычному e-mail клиенту), но, тем не менее, «научить» его пользоваться этими данными можно. Фильтры выборочного скачивания умеют работать с данными из внешних файлов, один из вариантов области проверки — путь прохождения, где и могут встретиться «неблагонадежные» релеи.

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

С появлением в бетах 1.63 поддержки внешних специализированных антиспам-плагинов (и API для разработчиков таких плагинов) ситуация меняется в лучшую сторону — плагины могут выполнять любые комплексные проверки, недоступные ранее. Надо только найти правильный плагин (или того, кто его напишет) — и можно без магических пассов проверять почту по различным DNSBL, работать с базой сигнатур Razor, DCC…

Принцип их работы прост — сообщения проверяются плагином, который сообщает The Bat, что это было, по его мнению — спам или «»правильное» письмо, в зависимости от этого решается дальнейшая судьба: можно переместить его в отдельный мусоросборник, а можно и просто удалить. Коллекция плагинов (действующих по разным принципам) собрана на ftp.gin.cz.

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

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

«Этюд в багровых тонах» или Мысли о том, как при помощи The Bat сказать спаму «НЕТ!»

Ваш e-mail не будет опубликован.

 

Отчеты

Lazarus распространяет протрояненный DeFi-кошелек

Недавно мы обнаружили протрояненное DeFi-приложение, которое имплантирует в систему полнофункциональный бэкдор. Проанализировав этот бэкдора, мы обнаружили многочисленные совпадения с другими инструментами группы Lazarus.

MoonBounce: скрытая угроза в UEFI

В конце 2021 года мы обнаружили прошивку UEFI, в которую был внедрен вредоносный код, названный нами MoonBounce. В данном отчете мы подробно опишем принцип действия импланта MoonBounce и его связь с APT41.

Подпишитесь на еженедельную рассылку

Самая актуальная аналитика – в вашем почтовом ящике