Статья Offensive OSINT часть 3 - Ищем дезинформацию, связанную с выборами, на польском сервисе wykop.pl

Данная статья является переводом. Оригинал вот

1590752017984.png


В этой части мы рассмотрим кампанию по дезинформации в польской социальной сети - wykop.pl. Она очень похожа на Reddit, хоть и без сабредитов, но с тегами и микроблогом. Я представлю методы сбора информации о пользователях, положительных / отрицательных голосов и контента. Кроме того, все будет представлено в понятной форме с диаграммой и графиком отношений для пользователей.

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

Offensive OSINT часть 2- Деобфускация и анализ исходного кода + обнаружение сети распространения нелегального контента.


OSINT и дезинформация

Мы все знаем, что платформы социальных сетей предназначены не только для обмена фотографиями и воспоминаниями с друзьями, но и для быстрого обмена ссылками и информацией, которая может быть использована для манипулирования общественным мнением. В прошлом было много примеров такого поведения, но самый крупный - вмешательство России в выборы 2016 года в США, и было подробно описано в докладе Мюллера, и некоторые методы пропаганды, используемые российскими агентами, были раскрыты. Их основная тактика заключалась в покупке рекламы в Facebook для своего кандидата, создание групп, ассоциирующиеся с поклонниками одной политической стороны и распространение дезинформации - создавать сайты, содержащие благоприятный контент, а также скрывающие неудобную информацию, которая не соответствует их повествованию.

Большая часть задач была выполнена бот-сетью, а основными эксплутируемыми социальными медиа были Facebook и Twitter.

В связи с предстоящими выборами в Польше, я решил проанализировать самую большую польскую платформу обмена информацией - wykop.pl. Wykop постоянно обвиняют в плохой модерации, позволяющей манипулировать голосами или делиться фейковыми новостями. Что касается пользователей, часть контента на главном сайте и Mikroblog подвергается цензуре и удаляется модераторами по причине политической корректности, но при этом, одновременно получает много откликов.

Я посмотрел контент из тегов #wybory (#election, с декабря 2019), #polityka (#politics, с апреля 2020), а также по пользователям и их подписчикам, что дало наибольшее количество отрицательных голосов в упомянутых тегах. Данные будут представлены в удобочитаемом виде, где я искал аномалии, которые могут указывать на манипулирование голосами и потенциальное использование бот-сети, которая блокирует контент для перехода на основной сайт.


Сбор данных

У Wykop есть API ( однако получить к нему доступ довольно сложно, поэтому я решил проверить на предмет ручной очистки всю необходимую информацию.

В начале мне понадобились статьи предыдущих недель и даже месяцев. Во время просмотра веб-сайта с помощью Burp Suite я увидел запрос AJAX , отправленный по адресу:



он возвращает последние 25 статей в формате HTML, которые затем можно легко проанализировать с помощью Python и Beautiful Soup. Чтобы разбить результаты на страницы необходимо изменить "link-[ID]" на ID последней статьи. Параметр Хэш предназначен только для красоты.

Имея эти данные в нашей базе данных Elasticsearch (временная метка и ID), мы должны проверить всех пользователей, отправили в корзину все предыдущие статьи. Мы можем получить эти данные, зайдя на следующую конечную точку



где ID - это идентификатор статьи

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

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

подписчики

подписчики

После получения всех данных мы можем начать визуализацию и искать закономерности или аномалии.


Визуализация и интерпретация данных

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

Ниже на графике представлены эти отношения.

1590754402908.png



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

Одним из примеров может быть 18 ноября, когда была добавлена только одна статья, и она получила 127 отрицательных (637 положительных голосов) в другие дни пропорции были более устойчивыми.


Аналогичная ситуация произошла 16 декабря, только одна статья в этот день получила 58 отрицательных (235 положительных голосов), поэтому она не изменилась, чтобы быть в тренде.


Если внимательнее посмотреть на публикации 18 января, можно увидеть, что было добавлено 4 статьи с общим количеством 166 отрицательных голосов. Имея все данные в базе данных, мы можем быстро проверить, какие статьи получили наибольшее количество отрицательных голосов.


Это самая отрицательная статья этого дня, и у нее 97 отрицательных голосов.

Другие, размещенные в этот же день, получили меньше голосов:

(16)

(53)

(5, неправильный тег)

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

Тег #politics часто используется из-за универсальности, поэтому каждый день добавляется намного больше статей. Ниже на графике показана взаимосвязь количества понижения голосов и статей за день в теге #polityka

1590754606915.png



Если мы сравним данные за апрель, мы увидим следующую схему:
  • 04.04 - 83 статьи, 854 отрицательных голосов,
  • 05.04 - 82 статьи, 1640 отрицательных голосов,
  • 06.04 - 141 статья, 1560 отрицательных голосов

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

Диаграмма показывает, что некоторые статьи выделяются:

156 отрицательных голосов (240 положительных голосов)

(134 отрицательных голоса)



(102 отрицательных голоса)



(88 отрицательных голосов)



(116 отрицательных голосов)



(99 отрицательных голосов)

(118 отрицательных голосов)

Общее количество отрицательных голосов в этот день составило 1640. Всего по 7 статьям было получено 813 отрицательных голоса.

Глядя на 15 апреля, мы видим, что было добавлено 107 статей с общим количеством 1535 отрицательных голосов, и только 8 статей (из них 107) получили более половины отрицательных голосов - 900.

1590754823924.png


(177 отрицательных голосов)

(143 отрицательных голосов)

(66 отрицательных голосов)

(240 отрицательных голосов)

(77 отрицательных голосов)

(63 отрицательных голосов)

(61 отрицательных голосов)

(73 отрицательных голосов)

Некоторые статьи могут перекрываться из-за двойных тегов #polityka (политика) и #wybory (выборы)


Ищем сеть

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

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

#polityka


newplot(2).png



#wybory

1590756816824.png



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

1590756836156.png



Имея такой графический вид,, мы можем начать искать сходства, в данном случае учетных записей, чем объединять пользователей. Этот же Modus Operandi используется бот-сетью во всех социальных сетях, особенно в Twitter. Все учетные записи имеют свою «материнскую учетную запись», которая работает как сервер команд и управления, отправляющий команды для выполнения.

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

1590756861352.png



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

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


Заключение

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

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!