pROCKrammer

Учебники: как создать Антиспам?

В этой теме 11 сообщений

Здравствуйте,

у меня тут глупый вопрос. есть ли какие то книги или статьи на тему как работают приложения для борьбы со спамом?

Ещё раз извените за глупый вопрос.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

их помойму всего парочку, на основе правил и эвристическим способом..

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще технологий защиты от спама на основе проверки контента существует много, но самые популярные из них - это правила на основе фильтров URL, встречающихся в тексте, хэширование сообщений, анализ заголовков, анализ полей Subject и From, анализ тела сообщения, Regex, на основе матриц встречаемости ключевых слов и т.д. Имеются и эвристические методы.

Анти-спам engine'ы, имеющиеся в открытом доступе (наподобие Spam Assassin), как правило требуют длительного обучения и не пригодны для использования в production environment,

т.к. имеют крайне низкую точность обнаружения спама и плохой catch rate.

Помимо правил и эвристиков существуют также открытые DNSBL и RBL - "черные" и "белые" списки

адресов отправителей спама, которые можно с выгодой использовать в процессе борьбы со спамом.

В настоящее время приобретают популярность новейшие технологии блокировки спама на уровне

SMTP-соединения, т.е. еще до того, как MTA примет письмо (сообщения блокируются в соответствии с репутацией IP отправителя, накопленной на глобальном и локальном уровне).

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за информацию ... просто ради интереса хотел написать маленький анти-спам для себя

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
то книги или статьи на тему как работают приложения для борьбы со спамом?
хотел написать маленький анти-спам для себя

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

Предлагаю одни из старейших:

SpamBully

Spamihilator

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Неплохобы сначала скачать один из них и изучить его работу, а потом сравнить с другим.

Предлагаю одни из старейших:

SpamBully

Spamihilator

эх жаль у меня не Windows ;) а так бы протестировал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
эх жаль у меня не Windows а так бы протестировал

Я знаю, но долго что ли поставить. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Анти-спам engine'ы, имеющиеся в открытом доступе (наподобие Spam Assassin), как правило требуют длительного обучения и не пригодны для использования в production environment,

т.к. имеют крайне низкую точность обнаружения спама и плохой catch rate.

Не хочется конечно превращать эту ветку в спор, но я считаю что здесь вы не правы. Старичек SpamAssassin, еще дасть многим фору. Насчет "требуют длительного обучения", насчет какого-такого обучения вы говорите, обучение встроенного Бейса? Так Бейс вообще не рекомендуется использовать, а так включил URI_BL, скачал скажем SARE_RULES(набор постоянно обновляющихся контент правил для SpamAssassin), включил так же DNS_BL и будет достаточно эффективно работать даже как вы выразились в production environment. :) Конечно может быть не так эффективно, как коммерческие продукты, но тут уж кто не платит довольствуется тем что есть. В России тысячи организаций используют SpamAssassin. Да и в мире могу назвать несколько вендоров, которые его используют в своих сервисах.

Спасибо за информацию ... просто ради интереса хотел написать маленький анти-спам для себя

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

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

На самом деле писать все это заново считаю очень трудоемким, если хотите понять как оно работает, возьмите просто SpamAssassin,он open source и написан на Perl. Поэтому просто возьмите его и посмотрите как у них это в коде реализовано.

Отредактировал spamolov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильные вещи люди гляголят, spamolov все правильно написал... в SpamAssassin сомневаться не стоит)

На счет собственно темы, писать много мне лень поэтому вот ссылка, где много чего про СПАМ написано:

http://all-ib.ru/content/spam/spam_part_1.php

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я согласен, что антиспам нужен, но прочесть по этому делу целую книгу - это слишком.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Здравствуйте,

у меня тут глупый вопрос. есть ли какие то книги или статьи на тему как работают приложения для борьбы со спамом?

Ещё раз извените за глупый вопрос.

В плюс к приведенным советам (писать свой антиспам конечно можно - но смысл ? ... академический смысл конечно есть - например, в качестве диплома):

1. стоит всеже для начала почитать про теорему Байеса и фильтр Байеса (начиная отсюда - http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B9%D0%B5%D1%81, ну и далее http://ru.wikipedia.org/wiki/%D0%91%D0%B0%...B0%D0%BC%D0%B0). Эта теория описывает одину из самых простых методик фильтрации на основе анализа контента, с возможностью дообучения и без привлечения внешних баз... ну и далее в том-же духе, можно прикрутить какой-нибудь "нейролингвистический анализ", эволюционные алгоритмы и т.п. Однако стоит понимать, что современный спам учитывает возможность контент-фильтрацию (и вместо контента в письме может быть ссылка без текста, ссылка + бредовый постоянно меняющийся текст-приманка, картинка, картинка с защитой от OCR и т.п.).

2. Есть методики, полезные в случае реализации на сервере:

2.1 если почтовый сервер при получении письма из сомнительного источника сообщит передаюшему серверу, что занят ... и пошлет его вон, то нормальный SMTP сервер попробует повторить передачу через N часов. Спамбот - не будет пробовать, и тем самым мы отсекаем спамботов на корню

2.2 изучив заголовки письма можно понять, откуда и от кого оно идет оно идет - и накрутить массу простых проверок. Например, проверить, есть ли такой почтарь-отправитель в природе (MX запись в DNS), или например в ходе анализа выяснится, что письмо с обратным адресом [email protected] идет с почтаря mail.ru, то мягко говоря это странно. Сделать такие проверки несложно, эффективность их высокая.

2.3 на момент приема письма мы знает IP сервера, от которого мы его получаем - можем проверить его репутацию пор разным базам

2.4 мониторинг почтовой активности на сервере позволяет автоматически создавать правила. Например, [email protected] написал письмо на адрес [email protected] Следовательно, если с [email protected] ему придет ответное письмо, то его можно немедленно пропустить, так как мы точно знаем, что [email protected] туда писал. Равно как наоборот, если скажем извне на @smolen.ru впервые придет письмо с [email protected] и мы его пропустим, и затем на него последует ответ и завяжется переписка - то это показатель того, что пропущенное письмо не было спамом. Или например можно запомнить, с какого почтаря идут почта от [email protected], и если она например всегда шла от почтаря @z-oleg.com и вдруг пошла от @mail.ru - это будет опять-же странно.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Создайте учетную запись или войдите, чтобы комментировать

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти с помощью Facebook Войти Войти с помощью Twitter
Anti-Malware.ru Вконтакте   Anti-Malware.ru в Facebook   Anti-Malware.ru в Twitter   Anti-Malware.ru в LinkedIn   RSS