+1 480 207 5163
Corporate blog
Andersen, software for business
Blog

Охота на ботов

Настоящей проблемой социальных сетей становятся боты. Одни распространяют недостоверные новости или политическую пропаганду, другие – “раскручивают” нужные страницы или рассылают рекламу. Как велик масштаб этого явления и каков ущерб? И, главное, как с ним бороться?
Статистика, интересные факты и немного теории.

В данном случае, ботом называется фейковый аккаунт, управляемый автоматически. Один бот будет эффективнее человека. Тысячи, объединённые в ботнеты (они же ботофермы), могут… изменить результаты выборов. 7 ноября в Конгресс США был внесён законопроект по изучению влияния автоматизированных аккаунтов на общественные дискуссии и, в том числе, президентские выборы. А что, тем временем, делают сами социальные сети, ставшие инструментом манипуляции?

По официальной статистике, Facebook заблокировал 600 миллионов (по одному на каждого 13-го жителя планеты!) подозрительных аккаунтов только за первый квартал текущего года. А в Twitter в боты записали 15% юзеров. Каждый день там блокируется больше миллиона фейков. Крупнейшая сеть, обнаруженная в Twitter, содержала 350 тысяч ботов. К счастью, занимались они не политическими провокациями, а репостом цитат из “Звездных войн”. Никакой штат модераторов не справится с ручной проверкой, но и автоматические методы не дают 100% возможности отличить человека от бота. Как-то Twitter забанил славную старушку из Теннеси, единственным недостатком которой было то, что она по 14 часов в день постила в поддержку Трампа, успевая выдавать до тысячи твитов в час. Пришлось извиняться перед бабушкой.

Как именно ботов отлавливают? Самое очевидное – по cookie-файлам. Это информация, которую браузер записывает о пользователе при каждом посещении сайте. И если с одного айпи много активности – это повод проверить “куки”. А пишется туда множество интересных данных: MAC-адрес, тип устройства, операционная система, разрешение экрана, браузер, версия Flash Player… Даже до обоев рабочего стола могут добраться! А ещё учитывается поведение пользователя на сайте, то есть его клики и наведения мыши сравниваются с характерной тепловой картой сайта. Короче говоря, если появляется тысяча профилей с id подряд, выходящих в сеть одновременно, из малообитаемого района Аляски – работать им считанные минуты. Выявление ботов использует принципы Data mining, то есть глубинного анализа данных. Нейросети обучаются на базе характерных особенностей и известных алгоритмов работы фейковых аккаунтов, а затем проводят кластерный анализ для выявления соответствий. Набралось несколько – профиль отправляется на ручную модерацию. Много – бан автоматический.

Чтобы обойти глубинный анализ, ботоводы покупают терминальные серверы, на каждом создавая отдельный аккаунт. И работают с ними удалённо, через виртуальные машины. У Microsoft или Amazon такая услуга стоит всего $25.

Росту армии ботов соцсети могут противопоставить и усложнение регистрации аккаунта. Поэтапная, с подтверждением электронного адреса, телефона, с “автоматизированным публичным тестом Тьюринга” (в простонародье – “капча”) и другими всё более изощрёнными способами сказать “Я не робот”.

Однако даже когда бот успешно совершил уникальный логин, а свои клики и паттерн действий приблизил к человеческим, важно, что именно он пишет. Ведь бессвязные посты вызовут у людей лишь раздражение и желание “зарепортить”. Например, интересен способ генерации сообщения с помощью цепей Маркова. Система обучается на определенных фразах, строит из их фрагментов-звеньев словарь, а затем парсит его, в реальном времени оценивая статистическую вероятность появления в тексте каждого из элементов относительно предыдущего. Если добавить немного базовых правил, вроде обозначения начала и конца предложения, то часто выходят осмысленные вещи!

Способ противодействия – лингвистический анализ сообщений. Например, измеряется расстояние Левенштейна для разных записей. То есть вычисляется, можно ли было небольшим числом перестановок превратить одно сообщение в другое (если можно – допускается, что бот это и сделал). Правда, используемые алгоритмы рассматривают текст посимвольно, а те же цепи Маркова оперируют целыми “звеньями”.

Эффективнее всего совмещать действия человека и бота. Ботоферма через терминальные серверы самостоятельно выполняет множество рутинных действий, а “оператор” за всем скопом приглядывает, чтобы поддержать переписку с отозвавшимися на сообщения людьми, ответить обеспокоенному модератору, вбить капчу или перелогиниться, если бота выкинуло из сети.

Впрочем, можно вообще использовать людей вместо ботов. Наверняка вы ещё помните скандал с пригожинской “фабрикой троллей”. Оказывается, можно по объявлению нанять несколько сотен человек за 40 тысяч рублей и посадить строчить комменты. Не набрал норму (тысячу в день) – штраф. Пишешь безграмотно – к репетитору по русскому “на ковёр”. Не выдерживаешь градус патриотизма – на улицу. Даже сами “кремлеботы” возмущаются, что “искусственные мозги” с их работой справились бы лучше. Однако, хоть именно русская “дешевая спамерская рабсила” получила собственное имя нарицательное, такие организации есть и в других странах. Например, в Китае действует огромная организация Wumao dang (Пятидесятицентовая партия). Из названия уже понятно, сколько они получают за один коммент о коммунистических ценностях. А в Израиле аналогичный отдел занимается борьбой с антисемитизмом.

Как мы сами, на бытовом уровне, можем определить, добавляется к нам в друзья нормальный человек или бот? Нет, прогонять его через тест Войта-Кампфа не обязательно. “Человечность” подтвердят следующие признаки:
Аккаунт создан давно, и всё время активность равномерная;
Есть личные посты, отражающие индивидуальность;
Лайки под записями на разнообразные темы;
Не все комменты выглядят односложными фразами (“Враньё!”, “Разворовали страну!”, “Голосуйте за…”);
Текст сообщений связный, согласуется по падежам/временам.

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

Previous articleNext article