Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

МЕТОДИКА ТЕСТИРОВАНИЯ КАЧЕСТВА СЕРВЕРНЫХ АНТИСПАМ-ФИЛЬТРОВ


Информационный Канал Subscribe.Ru


Тестирование информационной безопасности.
Анализ защищённости информационных ресурсов предприятия.

Методика тестирования качества серверных антиспам-фильтров

Часть 2

Алексей Тутубалин, Игорь Ашманов
ї ЗАО "Ашманов и Партнеры", 2004

Содержание

Часть 1

Введение

1. Определение спама

2. Нежелательная или ненужная почта

3. Критерии оценки качества

    3.1. Критические и некритические ложные срабатывания
    3.2. Пропущенный спам

4. Методика тестирования

Сводка: Корректные условия тестирования

Часть 2

5. Особенности тестирования отдельных видов фильтров

    5.1. Фильтры, использующие черные списки (RBL)
    5.2. Тестирование фильтров с регулярными обновлениями баз данных
    5.3. Тестирование обучаемых систем

6. Наиболее частые ошибки при тестировании

    6.1. "Последовательное соединение" фильтров
    6.2. Пересылка (forward) сообщений на фильтр
    6.3. Тестирование на фиксированных коллекциях
    6.4. Неверные обучающие выборки для обучаемых фильтров

Сводка: цели и корректные условия тестирования

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

  • Тестирование в реальном окружении (установка антиспам-фильтра на тот же поток почты, где его предполагается в дальнейшем использовать).

  • Достаточная продолжительность тестирования - 2-3 недели.

  • Достаточный объем тестирующей выборки - как минимум несколько тысяч сообщений в день.

  • Достаточная выборка почтовых ящиков - как минимум несколько десятков.

  • Анализ результатов с использованием корректного определения спама и категорий критичных/некритичных ложных срабатываний.

  • Тестируемое ПО должно быть поставлено в максимально одинаковые условия.

Часть 2

5. Особенности тестирования отдельных видов фильтров

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

5.1 Фильтры, использующие черные списки (RBL)

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

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

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

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

Таким образом, статистика самого RBL-фильтра (особенно количество отвергнутых им писем) не очень показательна. Если есть возможность на одном и том же потоке сравнить количество посылаемого спама при включенном и отключенном RBL-фильтре, это обязательно нужно сделать.

Б. Необходимо тестирование RBL в реальном времени. RBL- базы данных реального времени: большая часть RBL-списков постоянно пополняется; столь же постоянно оттуда удаляются какие-то записи.

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

В. Невозможность тестирования фильтра на основе RBL путем пересылки. Большинство RBL-фильтров использует реальный IP-адрес посылающей стороны - этот адрес невозможно подделать (в отличие от заголовков). Однако при дальнейшей пересылке сообщения этот адрес не сохраняется - таково свойство почтовой сессии.

Таким образом, тестируемый RBL-фильтр должен быть установлен на входном почтовом сервере (incoming mail relay) организации, а не после него.

5.2 Тестирование фильтров с регулярными обновлениями баз данных

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

Таким образом, при тестировании систем с обновлениями нужно соблюдать следующие условия:

  1. Фильтрация потока сообщений в реальном времени;

  2. База данных фильтра должна обновляться не реже, чем рекомендовано производителем фильтра.

5.3 Тестирование обучаемых систем

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

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

Б. Наведенные эффекты. Если обучаемая система установлена после какого-то другого антиспам-фильтра, то при обучении и тестировании ее необходимо удалять все метки, проставляемые в сообщения первым фильтром.

В противном случае весьма вероятно, что обучаемая система обучится этим меткам и будет с успехом пользоваться "интеллектом" первого фильтра.

6. Наиболее частые ошибки при тестировании

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

6.1 "Последовательное соединение" фильтров

Достаточно часто используется тестирование методом подсчета "разности", при котором фильтр Б ставится на поток спама, получаемый на фильтре А.

Затем, если фильтр Б что-то пропускает из спама, обнаруженного фильтром А, то Б считается хуже, чем А. Действительно, А распознал "все", а Б - "не все".

Ошибка здесь в том, что, скорее всего, и фильтр А не распознает что-то из того, что фильтр Б признает спамом, но в односторонней цепочке >А>Б этого увидеть нельзя. Множества спама, распознаваемые обоими фильтрами, не вкладываются друг в друга, а имеют общее пересечение и "хвосты".

Очевидно, что для получения корректных результатов нужно одновременно (на том же потоке почты) собрать и зеркальную цепочку >Б>А - то есть проверку фильтра А на потоке спама, получаемом из фильтра Б.

В этом случае действительно будет возможно оценить все компоненты общей картины:

  • Спам-письма, которые улавливаются обоими фильтрами;
  • Спам-письма, которые улавливаются только фильтром А или только фильтром Б;
  • Одновременные ложные срабатывания обоих фильтров;
  • Ложные срабатывания каждого фильтра по отдельности.

Только имея такую полную картину, можно обоснованно сравнивать качество распознавания антиспам-систем.

6.2 Пересылка (forward) сообщений на фильтр

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

  • IP-адрес посылающей стороны;
  • Параметры SMTP-сессии (HELO, MAIL FROM);
  • Заголовки письма (добавляется лишний Received).

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

При пересылке писем из распространенных почтовых клиентов (Outlook, Outlook Express) технические заголовки писем искажаются очень сильно, что делает практически невозможным распознавание спама по заголовкам.

6.3 Тестирование на фиксированных коллекциях

Довольно часто антиспам-системы пытаются тестировать на фиксированных статических коллекциях (архивах) спама. Эти коллекции обычно получают тремя способами:

  1. сбором спама на специальных адресах-ловушках (spamtraps), на которые в принципе не должна приходить нормальная почта;
  2. ручной сортировкой потока входящей корреспонденции;
  3. сортировкой входящей корреспонденции с помощью какой-нибудь другой антиспам-программы.

Независимо от способа получения коллекции, тестирование на коллекциях имеет следующие серьезные ограничения:

  1. Невозможно полностью воспроизвести "окружение" при приходе письма. В любом случае, при тестировании на коллекции письмо заведомо пересылается на фильтр с другого IP-адреса; скорее всего - с другим SMTP HELO; с большой вероятностью - к заголовкам письма добавлены дополнительные поля Received. Это сильно снижает качество анализа спама фильтром.
  2. Антиспам-программы используют быстро меняющиеся во времени наборы данных. Содержимое системы DNS и RBL-списков, счетчики систем подсчета частотности (DCC, Razor и подобные), содержание статистических баз (для систем с самообучением), содержание баз правил и образцов (для систем, получающих обновления) меняются несколько раз в день, иногда - несколько раз в час или вообще каждую секунду (например, для списков RBL).

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

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

При этом есть и дополнительные проблемы, связанные с получением коллекций тем или иным способом.

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

В результате получаемый на ловушки спам статистически отличается от спама, рассылаемого по стандартным спамерским базам (например, на "бизнес-адреса Москвы").

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

В. Коллекции, получаемые фильтрованием другими программами, содержат "спам с точки зрения другой программы", что, конечно, не имеет отношения к реальной жизни.

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

6.4 Неверные обучающие выборки для обучаемых фильтров

Наиболее частая ошибка при тестировании обучаемых пользователем фильтров - некорректно выбранная обучающая выборка при обучении.

А. Одна и та же выборка для обучения и тестирования. Наиболее грубой ошибкой является использование одной и той же выборки и для обучения, и для тестирования (уровень распознавания в результате будет резко завышенным). Именно такими некорректными условиями тестирования чаще всего объясняются рекламируемые производителями невероятные уровни распознавания наподобие 99,98%.

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

Корректный способ тестирования обучаемых фильтров (в реальном времени с реальным дообучением) описан выше (см. раздел "Тестирование обучаемых систем").

Рассылки о тестировании:
Рассылки о тестировании:
Дискуссионные листы о тестировании:
Обсудить материал выпуска:
обсудить в форуме | обсудить в дискуссионном листе
Для новых участинков - зарегистрироваться в дискуссионном листе (письмом, Web).
Рассылка "Тестирование информационной безопасности." (с) 2004
Автор выпуска: Полаженко Сергей
Сайт рассылки: "Тестирование информационной безопасности"
Информационная поддержка: "ТЕСТЕР — сервер тестировщиков"


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное