Спам 2.0

Вообще, спам это больная тема современного интернета. По некоторым данным, спам занимает более 50% траффика. Это значит, что половина всей передаваемой по сети информации совершенно бесполезна, и засирает каналы. Почему я опять вспомнил эту тему, так потому, что на моём форуме начали региться пользователи исключительно с целью рекламы. Рекламируют какие-то смски, прочую хренотень — даже программу, которой собственно они и спамят на форуме. Изучив возможности этой программы, и её примеры применения на этом форуме, пришёл к выводу, что системы борьбы со спамом основанные на «обратных тестах Тьюринга» изживают себя. Боты научились их обходить. Технологии распознавания символов — теоретически — позволяют обходить популярные средства защиты от спама, как обычную captcha, так и reCAPTCHA, которая до сих пор считалась одной из самых надёжных в этой области. (По крайней мере здесь установлена защита с помощью reCaptcha, тем не менее редкие регистрации ботами всё же есть, если только это не имитация, которая призвана впендюрить лоху товар для спама). Хотя, согласитесь, глупо вручную спамить на форуме с посещаемостью в 4 человека.

Итак, борьба со спамом, я подозреваю, является наиважнейшей задачей ближайшего времени — лет 5 ещё, и вычислительные мощности обычных компьютеров позволят обходить практически все защиты, основанные на распознании текста и, возможно, изображений. Собственно, задумался над тем, что может позволить оградить от спама владельцев интернет-ресурсов и почту. Вот и решил поделиться мыслями. 
Итак, первый и самый важный объект, на который обращают внимание спамеры — это почта. Почта ежедневно бомбардируется спамерами, на почтовый ящик приходит масса писем с предложениями от «читай чужие смски» до «сосу за сущие копейки». Единственная достойная внимания антиспам система (имею ввиду из тех почтовиков которыми я лично пользовался) — у гугла — http://mail.google.com. Практически 95% спама уходит в специальную папку спам, и очищается одним кликом мышки. На чем же основана система борьбы со спамом у гугл майл? Я не знаю, но подозреваю, что там имеет место комплексный подход, а именно — существует взаимодействие пользователей, искусственного интеллекта и большой базы данных. Во-первых, там должен иметь место анализ содержимого письма — нет ли типичных «рекламных» фраз, вроде «купите», «предлагаем», и так далее. Ну, это у любого антиспама есть (правда касперский, установленный на майл.ру, вообще не справляется с потоком спама). Во-вторых, там работает кнопка «сообщить о спаме» — при её нажатии адресат попадает «на карандаш» системе, и при наборе некоторого количества счётчика обращений, все сообщения с указанными параметрами сливаются в спам.

Впрочем, проблемы спама по почте гуглом решаются вполне хорошо. А как быть со спамом на форумах и блогах? В данный момент здесь я ввёл ручную проверку регистраций (при наличии хотя бы 30 регистраций в день уже очень напряжно их все подтверждать, а при одной-двух в неделю — вполне терпимо). Но это не метод, знаете ли. Распознавание текста производится компьютером на достаточно хорошем уровне, потому капча должна модернизироваться. В принципе можно, скажем, заставлять пользователя выбирать из нескольких картинок (скажем из 8) некоторые на которых изображено нечто, соответствующее условию. Например, нужна большая база изображений животных. И выдавая достаточно похожие изображения при регистрации (скажем, моськи кошек и собак) предлагать выбрать — только кошек. Компьютеру уже будет весьма сложно определить, кто есть вху, а вот человек сразу поймёт — кто или что на картинке, и выбор сделает правильный. Минус такого похода в том, что при количестве картинок в 10 — 20 тысяч, довольно просто собрать их базу (особенно у открытых движков типа word press или того же IPB). А дальше — дело техники.

Вообще говоря, необходим хороший анализ — что умеют компьютеры, и что умеет человек, и что компьютеру очень сложно, а человеку — просто. Распознаванию простейших изображений можно сказать комп научили — буквы он понимает. Искажённые, покорёженные, размазанные — кстати говоря алгоритм хотя и сложный, последовательность действий там простая — снять помехи, и по анализу замкнутых областей на участках букв сделать анализ — а шо енто там такое. В конце концов, можно выдать изображение оператору — пусть сам разбирается, раз он человек. В принципе сложные изображения типа кошачьих мосек я думаю тоже он понимать научится, так или иначе. И даже отличать их от собачьих.

В принципе компьютер очень хорошо умеет обсчитывать данные, и обрабатывать информацию. У него замечательно выстроен механизм чёткой логики. Потому пытаться ему подсовывать задачки на логику или математику — как-то некошерно. Он их решит. Собственно, единственным путём защиты от спама является, кроме первого рубежа обороны на решение всяких там задачек, детектирование массовых рассылок и прочих действий, которые могут быть спамом.

Это я, всё, к чему… А к тому, что ИМХО воевать со спамом надо всем миром. Что имеется ввиду? Ну, в общих чертах мысль сводится к следующей: Рано или поздно компьютеры достигнут тех вычислительных мощностей, которые позволят нивелировать разницу в решении сложных, «человеко-понятных» задач, между человеком и железом. Компы станут умнее, быстрее, и так далее. Потому заградительные барьеры в виде разнообразных тестов CAPTCHA и прочих обратных тестов Тьюринга, рано или поздно станут «дырявыми» процентов на 90, и спам поползёт в массы. Что тогда станет с интернет-контентом страшно представить, кругом будет один только спам, SEO оптимизированный спам, прошу заметить, который будет заставлять поисковик по запросу «рабочий вектор в секции инициализации» приводить вас на страничку, где продают резиновые члены. Что с этим делать? Вопрос на самом деле хороший. Я считаю, что только человек способен более-менее надёжно бороться со спамом. Правда, способ пришедший мне в голову, уж очень сильно увеличит общий траффик в интернете. Заключается он в создании некой базы знаний, ориентированной на сбор информации о спам-рассылках и их контенте, причем пополняемой пользователями — заметив спам у себя, допустим, в каментах на сайте, пользователь системы тыкает кнопочку и на сервер уходит сообщение: «Аларм, это спам!», система принимает его в обработку и занимается логическим разбором письма и внесением его в свою базу знаний. Например, база знаний может состоять из данных по типичному спаму — количество ссылок в сообщении, какие это ссылки — ибо как правило спам-рассылки рекламируют либо другие сайты, либо телефоны, адреса электронной почты и так далее, и всё это в письмах повторяется. Одним словом — контакты с рекламодателем (ведь спам — как инструмент продаж, автоматически требует наличия контактов с заказчиком — клиент прочитав о том, какие у вас хорошие резиновые члены продаются, вполне может захотеть и купить один, или несколько. Так вот ему надо это как-то сделать). Это очень мощный фильтр — он позволяет сделать спам как минимум бесполезным. Ведь если нельзя связаться с продавцом, то какой тогда смысл, какая ценность спам-рассылок? А делать их без контактов так или иначе придётся — такая система набрав определённый объём данных, будет отсекать спам после, скажем, сотни жалоб. Соответственно, обратная сторона пользователя (допустим тот же блог) должна иметь возможность делать запросы к анти-спам системе.

В общих чертах, это выглядит так. Допустим, происходит отправка поста на каком-то форуме. Его перехватывает подсистема форума, и отправляет на предварительный анализ в систему борьбы со спамом. Система делает выводы — спам или не спам, основываясь на анализе текста и данных автора. Соответственно она выдаёт вердикт пользователю — спам/не спам, исходя из этого подсистема форума решает — добавлять пост или послать спамера нах.

Само собой, такая система построена на очень плотном взаимодействии с администраторами ресурсов, в частности, для обучения системы нужно набрать большое количество статистических данных, прежде чем она начнёт реально со спамом бороться. Но отдача будет вполне весомой. Правда траффик будет нагружен очень сильно. Да и вычислительные мощности потребуются для этого просто безмерные — на уровне таких гигантов как яндекс или гугл, одинокому программисту даже при выработке работающего алгоритма анализа поступающих данных всё равно не вынести того объёма траффика и требований к скорости отклика, которые автоматически предъявляет таковая система. В принципе наиболее простой путь, это доработать уже существующую reCapthca, дополнив её функционалом по проверке почты, и так далее — у неё ведь есть инфраструктура уже.

Напоследок, приведу те данные, которые считаю важными в деле борьбы со спамом, и которые должны быть в статистической базе знаний: IP, Адреса электронной почты, телефоны и всё на них похожее, ссылки, ключевые слова в тексте, вплоть до синтаксического анализа, время регистрации спама. Основываясь на совокупном анализе всех этих данных, можно отсекать спам-боты ещё на этапе регистрации в системе того или иного ресурса.

Автор

Алекс Разгибалов

Сумасшедший мужчина, неопределённого возраста, наслаждающийся манией преследования. Паталогически недоверчив, эгоистичен, авторитарен. Вторичные диагнозы - программист и поц. Владеет английским языком на уровне около хренового разговорного. Также знаком с некоторыми другими языками. Интересуется всем и вся, за счёт чего в любой области знания являются поверхностными, неглубокими. Характер невыдержанный. Крепость - 55 градусов.

Спам 2.0: 4 комментария

  1. Всё просто, в компаниях скоро появится новая должность — антиспам-оператор.

    Вот вам свежая идея, предоставление услуги — ручная фильтрация спама. Как call-center. Кошерно, а? )))

    Приходит письмо на info@colakaka.ru, автоматом пересылается в компанию «Чистый интернет» (colakaka@clearinet.ru), там живой пенсионер пробегается по письму, резиновые письки и виагра в треш, полезные письма обратно в колакаку, но на chisto272hren72tebe32x3434@colakaka.ru

    Регистрируем компанию? )))

    1. ХЫ ))) А проблема в том, что аццкий мыл — он утечёт всё равно, ибо иной раз спам-листы набираются в мистических местах… Об этом помнится на times.i2p была статейко, где во всём винили ФСБшников, мониторящих российский бэкбон. Правда или неправда, но факт в том, что мыло утекает волшебным образом на сторону через несколько недель после создания — можно сказать после нескольких отправок писем.

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

  3. Ну, во-первых, вот я при регистрации на том или ином ресурсе, например как этот, не готов вводить номер телефона в поле регистрации. А то боюсь сладкоголосые дивы будут мешать спать по ночам, наперебой предлагая уже голосом секс-услуги, и прочую эпидерсию. Считайте — я же не знаю автора, и может сайт создан как сателлит к какому-нить проекту который продаёт, таки да, резиновые члены?

    А кстати система, которую я описывал — уже существует, ага, не один я такой умный :)))) Называется Akismet — как раз регистрирует подозрительные каменты. Что любопытно — в очередь премодерации сваливается весьма немаленькая часть комментариев, вот например вы, Ksand, два оставили — оба упали в спам. Благо я этот список просматриваю. Это ещё может происходить по вине разных ботнетов, например — когда юзеру ставится вирус тем или иным способом, и он рассылает письма с этого IP… Тот попадает, ессесно, в базу акисмета рано или поздно, ну и дальше уже поехало-пошло… Так что опять же, система не идеальна))

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Собирать идеально - не обязательно, просто приблизительно соберите картинку (должен быть включен JavaScript).WordPress CAPTCHA