diff -uNr spam_check-0.2.4/CHANGES spam_check-0.2.5/CHANGES --- spam_check-0.2.4/CHANGES Fri Feb 13 15:57:27 2004 +++ spam_check-0.2.5/CHANGES Wed Mar 10 12:35:34 2004 @@ -1,3 +1,14 @@ +Изменения между версиями 0.2.4 и 0.2.5 +-------------------------------------------- + +* Усложнен regex в $cfg_maillog_reject_mask, в виде представленном в версии 0.2.4 + игнорирование инициировали reject'ы вида "user unknown", ящик переполнен и т.д. + Вместо "...55" теперь "...55.* (Client host rejected|Service unavailable)". + +* Добавлен файл tech_notes.txt с субъективными заметками о сегодняшней + технологии рассылки спама. + + Изменения между версиями 0.2.3 и 0.2.4 -------------------------------------------- diff -uNr spam_check-0.2.4/TODO spam_check-0.2.5/TODO --- spam_check-0.2.4/TODO Fri Feb 13 16:11:43 2004 +++ spam_check-0.2.5/TODO Wed Mar 10 12:50:45 2004 @@ -1 +1,10 @@ +- возможность заносить в блэклист целые /24 сетки, при наличии хотябы одного спамера. +- скрипт для объединения поIP'шного списка в список сетевых блоков. - утилита для работы с .db файлом, удаление IP|изменение веса и параметров. +- периодический дамп (sync) базы checked_ip.db из памяти на диск. +- Увеличение веса по маске в логе: + Feb 27 00:06:13 mail postfix/pickup[20170]: DB4AF54E3: uid=426 from= + Feb 27 00:06:14 mail postfix/cleanup[19432]: DB4AF54E3: message-id=<101001c3fcbc$88ffd7d3$5052f138@roxette.org> + Feb 27 00:06:14 mail postfix/cleanup[19432]: DB4AF54E3: warning: header X-Spam-Flag: YES from local; from= to=: SpamAssassin Confirmed Spam Content + '\: warning\: header X\-Spam\-Flag\: YES' + Но непонятно как его привязять к IP номер сессии в скипте не учитывается. diff -uNr spam_check-0.2.4/VERSION spam_check-0.2.5/VERSION --- spam_check-0.2.4/VERSION Fri Feb 13 16:11:47 2004 +++ spam_check-0.2.5/VERSION Wed Mar 10 12:22:17 2004 @@ -1 +1 @@ -0.2.4 \ No newline at end of file +0.2.5 \ No newline at end of file diff -uNr spam_check-0.2.4/spam_check.pl spam_check-0.2.5/spam_check.pl --- spam_check-0.2.4/spam_check.pl Fri Feb 13 16:04:13 2004 +++ spam_check-0.2.5/spam_check.pl Wed Mar 10 12:47:59 2004 @@ -118,7 +118,7 @@ '\-\d+\-\d+\-\d+' => 3, 'smtp|mail|relay' => -3, }, - + # Коэффициент умножения веса, для последующих соединений с данного IP за # за текущий день. # - Если равен 1, то пересчет не производится, блокирование в зависимости от числа запросов запрещено. @@ -147,7 +147,7 @@ # Маска для выборки из почтового лога строк по которым определяем уже отвергнутые соединения. # Чтобы не проверять лишний раз. В скобке IP. -my $cfg_maillog_reject_mask=': reject: RCPT from [^\[]+\[(\d+\.\d+\.\d+\.\d+)\]: 55'; +my $cfg_maillog_reject_mask=': reject: RCPT from [^\[]+\[(\d+\.\d+\.\d+\.\d+)\]: 55.* (Client host rejected|Service unavailable)'; # Маска по имени домена, при совпадении которой будет производится проверка. #my $cfg_block_mask='\d[\-\.](dsl|adsl|dial|cable)\.'; @@ -390,7 +390,6 @@ } }else{ sys_log(3, "DEBUG:IGNORED Line: $cur_line"); - } } $new_log_position = tell(MAILLOG); diff -uNr spam_check-0.2.4/tech_notes.txt spam_check-0.2.5/tech_notes.txt --- spam_check-0.2.4/tech_notes.txt Thu Jan 1 05:00:00 1970 +++ spam_check-0.2.5/tech_notes.txt Mon Mar 8 18:33:00 2004 @@ -0,0 +1,55 @@ +Наиболее перспективным средством борьбы со спамом видится введение +глобального "белого" списка почтовых серверов ), построенного на базе +DNSBL схемы (не считая запрещения спама на законодательном уровне) + +Сегодняшние средства борьбы со спамом основаны, как правило, на техническом +несовершенстве механизмов спам рассылки. + +Черные списки уже почти потеряли эффективность, спам рассылается распределенно с +зараженных вирусами и троянскими программами клиентских машин. +Сорвавшиеся на одной из машин посылка повторяется на другой, пока письмо не +будет принято. Эффективность черных списков при такой организации перед +проффесиональной рассылкой крайне низка, побочным эффектом является +многократное возрастание паразитной нагрузки на сервер. Модификация ПО +для обхода серых списков дело времени и как только число почтовых серверов +использующих подобную технология защиты достигнет определенного рубежа в +системах спам рассылки не трудно добавить нужный код для полного соответствия +RFC 822. Паразитная нагрузка при серых списках значительно больше, нежели +при использовании черных. + +Обход систем контекстной фильтрации тоже не за горами, технически такое +вполне возможно, главное максимально приблизить текст спам письма к реальному +виду, не изобилующему HTML'ем и прочими отступлениями от нормы деловой переписки. + +Распределенные средства массовой рассылки (рассылка в очень короткий промежуток +времени) и предание уникальности письмам, позволят обойти средства блокирования +по сигнатурам (наиболее эффективные но и дорогие средства) даже с использованием баз обновляющихся в реальном времени (например +представления сигнатур через DNSBL). Средства для обхода "ловушек" тоже можно +придумать, например, путем мониторинга работающих по этим сигнатурам систем +блокировки и вычисления подставных email адресов. + +Для пользователя можно рекомендовать не публиковать свой адрес в открытых +источниках, видоизменяя его до неузнаваемости (например: "u!s!e!r [ t#e#s#t ] р у"), публикуя ссылку +на страницу, где адрес представлен в виде картинки. Отказ от использования +реального email при чтении usenet. Вместо картинки, приемлимо генерировать +email через JavaScript, предварительно спрятав его в по буквенный массив или +преобразовав регулярным выражением. + +Владельцем сайтов можно порекомендовать блокировать роботов используемых для +сборки email адресов на форумах и гостевых книгах. +Блокировать их сегодня не трудно, эти роботы как правило представляются +обычным браузером (MS IE) и запрашивают нереально больше для человека +число страниц, иногда запросы поступают в несколько потоков. Сегодня адреса +индексируются с нескольких фиксированных подсетей, в обратной dns записи для +которых фигурируют известные имена хостов, но нет ни какой гарантии что завтра +это роботы не будут переведены на распределенную систему работающую + через зараженные пользовательские машины. + +Другой вариант - установка ловушек: На главной странице ставится невидимая ссылка +на скрипт блокировки, который не трогает известных поисковых роботов, +но мгновенно блокирует автоматические качалки и спам роботов. +Можно воспользоваться еще и пристрастием спам роботов сабмитить HTML формы, +если пришел сабмит по скрытой форме - блокировать можно не раздумывая. + + +