pg.gimran.org

Фильтры дают сдачи

Август 2003 · Все эссе

Перевод эссе Пола Грэма «Фильтры дают сдачи». Оригинал: https://paulgraham.com/ffb.html. Машинный перевод (Gemini).

Translation of Paul Graham's essay 'Filters that Fight Back'. Original: https://paulgraham.com/ffb.html. Machine translation (Gemini).

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

Почему только в пограничных случаях? И почему только один раз?

Как я уже упоминал в статье Убьют ли фильтры спам?, переход по всем ссылкам в спаме привел бы к забавному побочному эффекту. Если бы популярные почтовые клиенты делали это для фильтрации спама, серверы спамеров подверглись бы серьезному удару. Чем больше я думаю об этом, тем более удачной кажется эта мысль. Это не просто забавно; трудно представить себе более точно нацеленную контратаку на спамеров.

Поэтому я хотел бы предложить разработчикам спам-фильтров дополнительную функцию: режим «наказания», который при включении обходил бы каждый url-адрес в подозрительном спаме n раз, где n мог бы задавать пользователь. [1]

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

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

Разошли миллион писем в час — получи миллион обращений к своим серверам в час.

Нам следовало бы убедиться, что это делается только в отношении предполагаемого спама. Как правило, любой url-адрес, разосланный миллионам людей, скорее всего, ведет на спам-ресурс, поэтому отправка каждого http-запроса из каждого письма почти всегда работала бы нормально. Но есть несколько случаев, когда это не так: например, ссылки в нижней части писем, отправленных через бесплатные почтовые сервисы, такие как Yahoo Mail и Hotmail.

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

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

Убьет ли это спам? Не совсем. Крупнейшие спамеры, вероятно, смогли бы защитить свои серверы от фильтров с автозагрузкой. Однако самым простым и дешевым способом сделать это для них было бы добавление в письма работающих ссылок для отписки. А для более мелкой сошки и для «легитимных» сайтов, нанимавших спамеров для продвижения, это стало бы прямой необходимостью. Так что если бы фильтры с автозагрузкой получили широкое распространение, они превратились бы в фильтры с автоотпиской.

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

Примечания

[1] Фильтрам с автозагрузкой придется следовать по перенаправлениям, а в некоторых случаях (например, на странице, где написано просто «нажмите здесь») — переходить по ссылкам более чем на один уровень вглубь. Также необходимо убедиться, что http-запросы неотличимы от запросов популярных веб-браузеров, включая порядок заголовков и referrer.

Если ответ не приходит в течение времени x, по умолчанию следует присваивать письму достаточно высокую вероятность спама.

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

[2] В исходной версии этой статьи использовался термин «белый список» вместо «черный список». Хотя они должны были функционировать как черные списки, я предпочел называть их белыми, полагая, что это сделает их менее уязвимыми для юридических атак. Однако это, кажется, только запутало читателей.

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

Спасибо Брайану Бертону, Биллу Йеразинису, Дэну Гиффину, Эрику Рэймонду и Ричарду Джоуси за чтение черновиков этой статьи.