おきしみみ (oxij) wrote,
おきしみみ
oxij

Фильтроспам

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

Вот смотрите, ведь часто вместо того, чтобы написать емейл открытым текстом типа «vasi@pupkina.tut.netu» пишут «vasi (at) pupkina (dot) tet (dot) netu» или что-то в этом роде, чтобы боты не осилили поиск на странице спрятанного адреса. В отчаянных случаях, чтобы получить емейл нужно решить какую-то загадку и из её ответов составить адрес типа: «возьмите первое слово в этом абзаце, припишите к нему собаку, а потом припишите имя домена, на котором находится эта страница».
Какое-то время назад ещё было популярно восстанавливать адреса из «зашифрованного» состояния при помощи джаваскрипта и прочие подобные извращения.
Ну и, наконец, можно класть емейл в картинку, и использовать её.

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

Я, в своё время, для борьбы со спамом от незнакомых адресов, своим студентам предлагал писать мне письма с темой определённого формата (что-то вроде «Студент группы 1234 ФИО лабораторная 1»). Письма с топиком, подходящим под нужные регулярные выражения складывались в специальные директории на сервере даже не доходя до спам-фильтра. Но студенты почти всегда тупили и добавляли в топик отсебятину, которая регулярными выражениями не съедалась. Дрессировать младшекурсников мне было лень и, в итоге, на эту систему я плюнул.

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

Заметим, что, например, у гмейла два емейла считаются эквивалентными, если они отличаются только вставками точек в юзернейм. То есть для гмейла «example@example.com» и «ex.am.p.le@example.com» эквивалентны. Разместим оба эти адреса на странице и будем человеческим языком просить писать письма, например, на первый из них. Теперь, если какое-то письмо приходит нам на второй адрес, то бросаем его в спам. Если такое же письмо (а может просто письмо с того же адреса) приходит на «настоящий» емейл, то тоже бросаем его в спам. То есть, руководствуемся принципом, что все письма, приходящие не на тот емейл, на который мы просили, приходят от ботов, а все письма от ботов надо выфильтровывать и из ящика «настоящего» емейла.
Вообще замечу, что основная проблема большинства спам-фильтров, которыми я пользовался/пользуюсь, заключается в том, что они «жадные». Если письмо сейчас ещё не было опознано как спам, не означает, что оно не станет спамом через пару минут/три часа.

Способ с различиями емейлов по количеству точкек, описанный выше слабоват. Но если у нас есть, например, свой хостинг (а лучше не один), то можно весело поразвлекаться.
Итак, заведём кучу различных емейлов, существенно отличающихся друг от друга по юзернеймам и доменам. Какие-то из них будут «настоящими» (письма приходящие только на такие адреса считаются письмами возможно не от спам-ботов), а какие-то «фальшивыми» (все письма приходящие сюда считаются спамом).
Фальшивые емейлы можно публиковать где попало и в любых количествах, но так, чтобы здравомыслящий человек не стал бы на них что-то писать. Настоящие емейлы следует как можно чаще публиковать среди фальшивых (но не обязательно размещать фальшивые на этой же странице, что и настоящие). Если настоящие размещать только среди фальшивых, то их можно вычислить посмотрев какие емейлы не встречаются в одиночку. Также, для большей параноидальности, следует стараться выдерживать примерно равномерное распределение фальшивых и настоящих адресов, чтобы настоящие нельзя было бы вычислить другими статистическими методами.
Теперь настоящий емейл от фальшивого сможет отличить только тот, кому это разрешено.
А далее, как и раньше, будем вычищать весь спам, приходящий на фальшивые емейлы из всех настоящих почтовых ящиков.

Кажется, что это должно работать лучше, чем сервисы коллективного резания спама, ибо тут, по определению, всегда известно какие письма точно являются мусором.
Tags: dreams, email
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 8 comments