Защита почты с помощью контент-фильтров

изменить шрифт в приложении Почта windows 10

Если верить базе данных MITRE, многие APT-группировки начинают свои атаки с фишинговых рассылок на корпоративную почту. Но даже если таргетированные атаки — это не про твою контору, в ящики все равно непрерывно сыпется спам, фишинговые письма и прочая зараза.

Чтобы защитить пользователей, существуют шлюзы безопасности, или Email Security Gateway. Но пользу они приносят, только если их грамотно настроить. О защите почты с помощью контент фильтров мы и поговорим в этой статье.

Защита почты с помощью контент-фильтров

Вот список полезных качеств и возможностей, которыми должен обладать современный почтовый шлюз корпоративного уровня:

  • встроенные политики безопасности;
  • антивирусные модули;
  • «песочница»;
  • репутационные фильтры;
  • черные списки;
  • настройка SPF, DKIM и DMARC;
  • блокировка исходящего спама;
  • карантин;
  • поддержка SNMP;
  • интеграция с другими средствами защиты;
  • управление через интерфейс командной строки либо веб-консоль;
  • возможность создания собственных контент-фильтров.

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

Помни о существовании статьи 138 УК РФ «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений». Чтобы соблюсти закон, следует задокументировать контроль и мониторинг почтового трафика в частных политиках по информационной безопасности компании. И ознакомить с этими политиками работников под расписку.

Советы по настройке фильтров

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

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

Кстати, хорошая практика — разрешить каждому пользователю смотреть свои письма, попавшие в карантин. Для этого нужно будет проинструктировать сотрудников о работе с ним.

РЕКОМЕНДУЕМ:
Защита почтового сервера без антивируса

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

Список в итоге выглядит примерно так:

  • Whitelist_Case_1
  • Whitelist_Case_2
  • Whitelist_Case_3
  • Blacklist
  • Content_Filter_Case_1
  • Content_Filter_Case_2
  • Content_Filter_Case_3

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

Я разберу несколько примеров из практики, которые позволят продемонстрировать потенциал почтового шлюза.

Совет 1. Блокируйте запароленные файлы

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

Запароленный вирус-шифровальщик
Запароленный вирус-шифровальщик

Совет 2. Добавьте список запрещенных расширений

Еще один полезный контент-фильтр будет содержать все расширения, которые часто используются для распространения вредоносов и почти никогда — для чего-то полезного. Вот лишь небольшой список: ade, ace, application, adp, apk, bat, bin, cmd, cmdline, cpl, cab, cgi, chm, class, com, docm, dll, dat, drv, exe, inf, ins, isp, iso, hta, hlp, lnk, lib, lzh, js, jse, jar, mde, mst, msi, msc, gz, ocx, pub, pptm, pif, pem, potm, ps1, ps2, reg, rdp, sldm, scf, scr, sct, shb, sys, swf, sh, tmp, vb, vbe, vbs, vxd, wsc, wsh, wsf, xlsm, xlam.

Расширенный вариант такого списка можно найти на сайтах производителей средств защиты, например у Symantec. Иногда что-то почерпнуть для своего списка можно из аналитических и исследовательских статей. Например, я добавил блокировку расширений VHD и VHDX, прочитав исследование о них.

У каждой компании такой список будет свой в силу специфики бизнес-процессов. У меня он насчитывает порядка 200 расширений.

Прежде чем блокировать какое-то расширение, необходимо убедиться, что за последний год писем с такими файлами не было или их был минимум. Сделать это можно с помощью журнала отслеживания сообщений (message tracking log). Ну и, конечно, не стоит блокировать «офисные» расширения, которые часто используются для целенаправленных атак, вроде .rtf, .doc и .pdf. Для защиты от нестандартных атак необходимо использовать эшелонированную оборону, тема которой выходит за рамки этой статьи.

Если в компании в качестве основного почтового клиента используется Outlook, часть расширений в нем блокируются по умолчанию, так что нет необходимости дублировать их в фильтре.

Обычно правила контент-фильтра работают на основе регулярных выражений, поэтому убедись, что твои регулярки отлавливают имена расширений, написанные и заглавными, и строчными буквами (например, .scr или .SCR), и анализируют именно расширение, а не название файла целиком. Иначе получишь ложные срабатывания — на файлы вроде screensaver.txt.

Совет 3. Включите в фильтры топ спамерских доменов верхнего уровня

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

Совет 4. Составьте список запрещенных слов и фраз

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

РЕКОМЕНДУЕМ:
Безопасность Docker

Если в твоей компании не интересуются биткоинами по работе, то можно применить радикальные меры — например, блокировать письма, содержащие в теле слова «btc» и «bitcoin». Под такой контент-фильтр попадут в том числе и новостные рассылки с упоминанием этих слов. Чуть более щадящий способ — блокировка по фразам «bitcoin address» или «btc wallet».

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

Запароленный PDF
Запароленный PDF

Совет 5. Можете запретить перенаправление личных писем на рабочую почту

Если в твоей организации запрещено обрабатывать данные, не связанные с работой (чтение рассылок женской/мужской тематики, получение уведомлений с социальных сетей, обмен сообщениями личного характера и т. п.), то выручит еще один фильтр. Будем блокировать письма, которые содержат дополнительный служебный заголовок X-ResentFrom. В этом заголовке указывается адрес переславшего.

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

Фильтры, которые не взлетели

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

Как анализировать заблокированные письма, если нет песочницы?

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

  • Убедись, что с заблокированным адресатом ранее не велась переписка.
  • Проверь, не содержится ли e-mail в базе утечек «Have I Been Pwned».
  • Отправь хеш вложения на проверку в VirusTotal.
  • Если вложение не содержит сведений конфиденциального характера, отправь его на проверку в бесплатную веб-песочницу типа ANY.RUN, Hybrid Analysis и т. д.
  • В конце концов, можешь связаться с пользователем и узнать напрямую, знает ли он отправителя и ждет ли он такое письмо.

РЕКОМЕНДУЕМ:
Сетевые атаки и защита от них

Заключение

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

Понравилась статья? Поделиться с друзьями:
Добавить комментарий