Вопрос или проблема
Я настроил SpamAssassin со всеми “обычными” правилами, инструментами и методами (см. ниже).
Однако я в основном вижу два класса спама:
- спам, который легко обнаруживается различными правилами в SA (следовательно, очень высокий балл)
- спам, который определяется только байесовским фильтром и получает балл ниже порогового значения
Я хотел бы узнать, как улучшить уровень обнаружения SpamAssassin для второго класса. Проще всего, конечно, было бы просто понизить пороговый балл (или увеличить балл байесовской проверки), но согласно документации SA не рекомендуется давать одному правилу возможность классифицировать спам в одиночку.
Однако большинство других методов в SA, похоже, имеют низкий уровень попадания. Я понимаю, что существует много вопросов и постов, которые задают именно этот вопрос, но большинство из них кажутся старыми и устаревшими. (Я задаюсь вопросом, не ушли ли мы в настоящее время от фильтрации на основе правил и не движемся ли больше к вероятностной фильтрации, то есть байесовским фильтрам и нейронным сетям, но это не по существу.)
Мой вопрос заключается в том, целесообразно ли полагаться исключительно на байесовский фильтр, и если нет, то как увеличить уровень обнаружения SA помимо байесовского фильтра.
В настоящее время реализовано и работает:
- Стандартные RBL
- Razor2
- Pyzor
- DCC
- Bayes
- ixSpam2
- Каналы правил с автообновлением (
sa.lem.link
,sa.schaal-it.net
,spamassassin.heinlein-support.de
,updates.spamassassin.org
) - Правило страны ретранслятора (штрафовать редкие домены, повышать местные)
- Правило странных доменов (.xyz и т.д.)
Пример результата класса 1:
X-XCS-MailScanner-SpamScore: oooooooooooooooooooooo
X-XCS-MailScanner-SpamCheck: спам, SpamAssassin (не кэшировано, score=22.23,
требуется 5, автопоиск отключен, BAYES_99 3.50, BAYES_999 0.20,
DCC_CHECK 1.10, DCC_REPUT_99_100 1.40, DIGEST_MULTIPLE 0.29,
FSL_BULK_SIG 0.00, HTML_IMAGE_ONLY_20 1.55, HTML_IMAGE_RATIO_02 0.00,
HTML_MESSAGE 0.00, HTML_SHORT_LINK_IMG_3 0.15, LEM_PYZOR_B 1.33,
PYZOR_CHECK 1.39, RAZOR2_CF_RANGE_51_100 1.89, RAZOR2_CHECK 0.92,
RELAYCOUNTRY_BAD 2.00, RELAYCOUNTRY_GOOD -0.20,
SCHAALIT_URI_4023 5.00, SPF_HELO_NONE 0.00, SPF_PASS -0.00,
T_TVD_MIME_EPI 0.01, URIBL_BLACK 1.70)
Пример результата класса 2:
X-XCS-MailScanner-SpamScore: ooo
X-XCS-MailScanner-SpamCheck: не спам, SpamAssassin (не кэшировано, score=3.21,
требуется 5, автопоиск отключен, BAYES_99 3.50, BAYES_999 0.20,
DCC_REPUT_00_12 -0.40, DKIM_SIGNED 0.10, DKIM_VALID -0.10,
DKIM_VALID_AU -0.10, HTML_FONT_LOW_CONTRAST 0.00, HTML_MESSAGE 0.00,
SPF_HELO_PASS -0.00, SPF_PASS -0.00, T_REMOTE_IMAGE 0.01)
Ответ или решение
Для разработчиков и администраторов, работающих с системами антиспам-защиты, вопрос о том, стоит ли полагаться исключительно на байесовскую фильтрацию в 2025 году, особенно актуален. Существующая настройка SpamAssassin, как описано в вашей ситуации, использует множество различных методов фильтрации, включая правило для байесовской вероятности. Прежде всего, важно понять теорию и практику использования байесовских фильтров и других правил для повышения эффективности работы системы.
Теория (Theory):
Байесовская фильтрация основана на теореме Байеса, которая позволяет оценить вероятность того, что сообщение является спамом, исходя из вероятностей отдельных слов и фраз в нем. Данный метод эффективен при наличии большого объема обучающей выборки, что позволяет фильтру "учиться" и адаптироваться. Тем не менее, как и любая система, базирующаяся на статистических данных, байесовский фильтр имеет ряд ограничений, включая уязвимость к обучению на неполных данных и возможностью обхода злоумышленниками, которые подстраивают свои сообщения под фильтры.
Основная слабость байесовской системы заключается в том, что она может быть недостаточной для ловли всех форм спама, особенно если спамеры активно используют уникальные фразы или периодически меняют содержание сообщений. Следовательно, сосредоточение исключительно на байесовской фильтрации может привести к пропуску некоторых сообщений, которые формально не распознаются как спам.
Пример (Example):
На основании приведенных вами результатов для "класса 2", видно, что такие сообщения удовлетворяют многим из "положительных" критериев и не превышают порог спам-детекции. Это связано с тем, что, несмотря на тройку за байесовскую проверку (BAYES_99 3.50), остальные проверки, включая DKIM и SPF, приводят к снижению общего балла. В результате, такие сообщения распознаются как легитимные.
Применение (Application):
-
Поляризация правил (Tuning Rules):
- Рассмотрите возможность точной настройки числовых значений для каждого правила. Например, поднятие влияния байесовской оценки может, как вы упомянули, позволить более агрессивно обрабатывать сообщения такого типа.
-
Объединение методов:
- Используйте адаптивную стратегию, которая комбинирует байесовскую фильтрацию с новыми или менее популярными методами, такими как машинное обучение и нейронные сети. Эти методы могут обрабатывать сложные паттерны и взаимосвязи данных.
-
Повышение эффективности текущих средств:
- Интегрируйте дополнительные внешние источники, такие как обновленные RBL (Real-time Blackhole List), для выделения дополнительных маркеров риска в сообщениях.
- Улучшите конфигурацию DCC, Pyzor и Razor2 с учетом последних алгоритмов и данных.
-
Контекстуальные и поведенческие сигналы:
- Внедрите анализ контекста и поведения отправителя для выявления новых угроз. Например, использование поведенческого анализа может выявить модели, характерные для спамеров.
-
Обновление базы данных:
- Регулярно обновляйте базу данных фильтрации, не только по байесовскому анализу, но и по другим сигнатурам. Это потребует постоянного обучения модели и адекватного объема качественных данных.
Таким образом, хотя байесовская фильтрация остается важным инструментом в арсенале средств антиспама, полагаться исключительно на нее нежелательно. Комбинируя ее с другими технологиями и методами, вы можете достичь более высокого уровня безопасности и надежности. Использование многослойного подхода позволит вам адаптироваться к постоянно меняющимся стратегиям спамеров и обеспечить высокую эффективность антиспам-защиты.