Невизуальные методы защиты сайта от спама. Часть 1. Статистика

в 13:18, , рубрики: антиспам, антиспам защита, Блог компании CleanTalk Anti-Spam, защита от ботов, информационная безопасность, Разработка веб-сайтов, спам

Часть 1. Что говорит статистика

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

Системы, анализирующие такие данные, как правило, накапливают статистику данных посетителя и вынесенных решений. Вашему вниманию предлагается краткий обзор статистических данных, накопленных нами (сервисом защиты сайтов от спама CleanTalk).

Здесь я намеренно не привожу данных анализа IP-адресов по чёрным спискам. И без них можно получить достаточно данных, анализируя только содержимое полей форм и HTTP-заголовков.

Мной будут рассмотрены данные по тексту сообщения, нику и адресу электронной почты, а также HTTP-заголовков и результатам проверки JavaScript-теста.

Анализ по приведённым показателям очень прост алгоритмически и не требователен к ресурсам, поэтому может использоваться перед другими, более ресурсоёмкими проверками.

Данные отражают реальную картину на момент написания статьи и сделаны на основе анализа нашего текущего трафика (более 2 000 000 запросов в сутки). Данные могут быть свободно использованы при анализе посетителей ваших сайтов. Хочу отметить, что вынесение решения по каждому критерию по отдельности не является верным — лучший результат будет достигнут при комплексном анализе.

1. Текст сообщения

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

В таблице приведены наиболее, с моей точки зрения, информативные статистические данные.

Параметры текста сообщения (средние значения) Не спам Спам
Количество ссылок, шт 1.47 4.27
Количество контактов (телефон, e-mail), шт 1.72 6.38
Время заполнения формы, c 177 8
Отношение длины сообщения ко времени заполнения, символы/с 23.81 308.54

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

2. Ник посетителя

Ник также может сказать о многом. Вероятная причина — качество алгоритмов генерации ников, которые используют спамеры.

Параметры ника (средние значения) Не спам Спам
Длина, символы 7.40 16.52
Количество символов-разделителей, шт 1.89 3.80
Количество цифр, шт 3.29 7.59
Длина непрерывной последовательности согласных букв (для латиницы), символы 3.61 5.90

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

3. Имя в электронной почте

Всё сказанное для ников справедливо и для имён в почте.

Параметры имени в e-mail (средние значения) Не спам Спам
Длина, символы 10.09 19.16
Количество символов-разделителей, шт 1.62 4.12
Количество цифр, шт 4.30 9.57

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

4. HTTP-заголовки

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

Процент HTTP-заголовков User-Agent Не спам Спам
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) 0.01% 11.42%
Opera/9.80 (Windows NT 6.2; Win64; x64) Presto/2.12.388 Version/12.17 0.01% 10.84%

Готовые спам-решения также могут оставлять свои заголовки, в частности, при использовании HTTP-прокси. И это также отражается в нашей статистике.

Процент HTTP-заголовков Via Не спам Спам
Mikrotik HttpProxy 0.86% 33.07%

5. JavaScript-тест

Дополнительной простой, но очень эффективной проверкой может оказаться JavaScript-тест. Например, изменение JS-кодом нужной куки, вариантов много.

Наиболее продвинутые (и дорогие) боты проходят JS-тесты. Однако, как видно из статистики, большой процент спама идёт от очень простых программ, неспособных на это.

Процент непрохождения JS-теста Не спам Спам
изменение куки через JS 0.41% 68.53%

6. Заключение

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

Автор: CleanTalk Anti-Spam

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js