Facebook. Как искать информацию и анализировать страницы
Привет, друг. Ты, наверное слышал, что есть такая социальная сеть, которая называется Facebook. Её ещё многие частенько хэйтят. Причем, в большинстве случае абсолютно заслуженно. Но это не отменяет тот факт, что пользователей там не много больше чем дохренища. Свои страницы там имеют как простые люди, так и организации, учреждения и прочие объединения граждан. При чем некоторые ещё и умудряются активно ввести свои страницы. А это, в свою очередь, означает ровно то, что информации там много. А раз её много, то её можно находить и использовать в своих целях. И именно этим мы сегодня займёмся.
Работу c Facebook, с точки зрения OSINT, стоит разделить на два направления. Это поиск информации и работа с профилями пользователей. Под поиском информации подразумевается сбор не персонализированных данных, например о каком-то событии. Работа с профилями это когда мы собираем информацию о конкретном человеке или организации. На практике это деление будет очень условным потому, как эти направления будут постоянно пересекаться. Но для изучения процесса и чуть более структурированных знаний, это деление будет очень даже полезным.
Основной принцип поиска информации состоит в том, что бы перед тем как что-то искать ты должен ответить себе на вопрос, что ты хочешь найти. И, понимая это, ты смотришь на то что у тебя уже есть и планируешь дальнейшие шаги, ведущие к результату. И вот на этом этапе тебе уже нужны какие-то инструменты, которые помогут найти нужную информацию. Теперь про сам поиск. Начнём с самых простых моментов и постепенно будем переходить к более сложным и неочевидным.
Поиск на Facebook
У Facebook, как и у любой социальной сети, есть свой собственный поиск. Работает он, конечно, так-сяк, но для каких-то простых задач достаточно. Более того, в большинстве случаев, именно с него стоит начать. Для сбора какой-то первичной информации. А когда она будет получена, ну или не получена, то можно будет перейти к использованию каких-то более замороченных ресурсов.
Поиск позволяет искать людей, страницы, группы, публикации, фото, видео ну и так далее. У каждого пункта есть свои фильтры, которые позволяют конкретизировать запрос. Кстати, если бы эти фильтры были бы сделаны по человечески и поддавались бы нормальной настройке, то необходимость в большинстве сторонних инструментов просто отпала бы.
Дополнительно останавливаться на внутреннем поиске не вижу смысла т.к. каждый может открыть и посмотреть. Внутренний поиск Facebook неплохо справляется когда мы точно понимаем что мы ищем. Например какую-то конкретную организацию, название и вид деятельности которой мы точно знаем. Или информацию о точно известном нам событии. А вот если точных данных, по которым искать, у нас нет, то внутренний поиск Facebook, как правило, выдаст всё что угодно, кроме того что нужно. И вот тут нам пригодятся сторонние инструменты.
Facebook ID
Но перед тем как переходить к использованию каких-то инструментов, нужно знать маленький и очень простой технический нюанс. У каждой страницы и даже поста на Facebook есть идентификатор. Он так и называется: Facebook ID. Это, как правило, от 10 до 16 цифр. Иногда мы можем увидеть его в адресной строке.
Но если пользователь верифицировал страницу по номеру телефона, то он в качества адреса страницы может использовать созданное им имя. Но это вообще не проблема т.к. есть куча ресурсов которые позволяют узнать Facebook ID любой страницы.
https://lookup-id.com — вставляем URL страницы, получаем идентификатор.
https://randomtools.io — тоже самое, вставляем URL, получаем идентификатор.
Таким способом мы можем найти ID страницы человека или организации. Но иногда нам может понадобится ID города или места, например чтобы искать с использованием геопозиции. Для того чтобы его найти, в поиске Facebook нужно вписать название города и открыть его страницу, она, как правило, будет первой в списке. В адресе страницы, после названия города, будет числовое значение, это и есть FID города.
Ещё один способ найти ID, это всё сделать ручками из браузера. Жмём Ctrl+U чтобы увидеть код страницы. Затем через поиск Ctrl+F ищем userID. Если нужен ID страницы то ищем pageID. А если ID группы то, заходим на страницу нужной группы и ищем groupID.
При работе с внутренним поиском Facebook этот идентификатор нам особо ничего не даёт, но вот когда мы будем использовать сторонние ресурсы, он будет нужен почти всегда. Также он будет нужен когда будем искать через адресную строку.
Поиск информации
Теперь рассмотрим более точные способы поиска информации на Facebook. Начнём с инструмента https://whopostedwhat.com. Это улучшенный вариант внутреннего поиска, при этом по-человечески оформленный.
В разделе под номером 2 мы также можем получать FID. А раздел 3 посвящён именно поиску и разделен на несколько групп.
Первая группа это поиск по ключевым словам за конкретный день, месяц или год. Вторая, это поиск по ключевым словам за период времени. Здесь нужно будет указать с какого дня по какой нам нужна информация.
Третья — Location, это поиск по ключевым словам относительно места. Здесь нужно будет указать ID конкретного места относительно которого мы ищем информацию.
Четвертая группа позволяет искать посты конкретного пользователя. Для этого в графу UID вписываем идентификатор пользователя. Если в раздел Keyworld не вписывать ключевые слова, то будут найдены все посты указанного пользователя.
Следующий инструмент https://graph.tips/beta/. Имеет чуть более расширенный функционал, а потому он немного замороченней.
Для начала мы должны выбрать, что именно мы будем искать. Это могут быть посты, люди, фотографии, страницы, места, видео, события или наиболее популярные посты.
В большинстве случае алгоритм использования будут однотипным. Нам нужно будет указать фильтры в зависимости от объекта, затем фильтры по дате и ключевые слова. После этого нажать «Открыть URL-адрес в новом окне». Откроется страница Facebook с нужными нам результатами поиска.
Например в разделе для поиска фотографий, мы можем выбрать фотографии какого пользователя нас интересуют. Либо фотографии из какого места нам нужны. Также можно отсортировать фотографии за нужный нам диапазон дат и ввести ключевые слова, по которым будет осуществлен поиск. По такому же принципу работают и все остальные разделы. Останавливаться на каждом смысла не вижу, разобраться там не трудно.
Кстати на сайте https://intelx.io возможности обоих предыдущих ресурсов собраны в одном месте. Так, что при желании, можно пользоваться там.
Анализ профиля Facebook
В большинстве случаев, анализ профиля, подразумевает планомерное и постепенное его изучение. Смотрим что человек пишет, изучаем фотографии, друзей, комментарии. В общем ищем и сохраняем, то что поможет нам найти конечную интересующую нас информацию. Обычно всё это происходит в ручном режиме, потому как, очень часто, нужные сведения лежат на поверхности. Но иногда могут случится случаи когда нужно углубится. И вот здесь, для упрощения процесса стоит воспользоваться сторонними инструментами.
Например бывает такое, что мы нашли под каким-то постом интересные комментарии или вообще целое обсуждение. И нам нужно не просто его прочитать, хотя бывает и так, а желательно бы его сохранить. Можно конечно просто наскринить или скопировать сам текст, но впоследствии работать с этим будет не реально. А потому нам поможет:
Здесь всё максимально просто. Вставляем ссылку на нужный пост и можем сохранить комментарии в нужном нам виде, например в таблицу. Либо, просто просмотреть таблицу в браузере. Причём сохранит оно не только сообщения, но и данные тех кто его писал, в том числе и их Facebook ID. Бесплатная версия сохраняет только 100 комментариев, но обычно этого достаточно. Потому как если изучаемая личность не особо медийная, то вряд ли под постами будет много комментариев.
Случается такое, что нужно скачать с Facebook какое-то видео. В этом нам поможет:
Точно так же, вставляем ссылку, качаем видео. Тут особо рассказывать не чего, процесс прост и не замысловат.
Поиск через URL
К сожалению Facebook абсолютно не человеко-ориентированная социальная сеть, а потому если что-то можно сделать максимально не удобно, это обязательно будет на Facebook. А ещё они очень закрытые и жадные, а потому, постоянно пытаются делать всё чтобы усложнить доступ к их сети не через их приложения. По этой причине сервисов для какого-то поиска практически нет. Мы уже прошлись по всем основным более-менее адекватным.
Но есть ещё один способ поиска на Facebook, который изобрели пользователи. Он очень замороченный и очень не удобный, но позволяет искать практически всё что угодно. Это поиск через изменение URL. Именно так, кстати, работают те инструменты для поиска которые мы рассматривали выше.
Я очень не уверен, что этот способ много кому пригодится. Потому я пройдусь только по основным принципам и наиболее полезным шаблонам, которые могу пригодится наиболее часто.
Но, если есть желание вникнуть и разобраться детально, вот полный гайд по этому способу от OSINTCurio:
Часть 1
Часть 2
Мне, к сожалению, в какой-то момент, ввиду необходимости пришлось с этой хренью разобраться. И, скажу честно, очень мало я видел на столько замороченных историй. Но зато теперь могу вкратце объяснить суть.
Для начала, чтобы это всё корректно работало, нужно интерфейс нашей страницы Facebook перевести на английский язык. Чтобы это сделать нужно в настройках профиля, выбрать «Язык и регион» и там выбрать английский.
Суть способа в том, что для того чтобы что-то искать, мы должны использовать URL:
facebook.com/search/КАТЕГОРИЯ/?q=ЗАПРОС&epa=FILTERS&filters=
Это URL нужно будет редактировать, в зависимости от того что мы ищем. В первую очередь нужно изменить значение КАТЕГОРИЯ. Здесь нужно вписать какой вид информации мы ищем. Список категорий ограничен:
top | ищем наиболее популярный контент |
posts | ищем сообщения |
people | ищем людей |
photos | ищем фотографии |
videos | ищем видео |
pages | ищем страницы |
places | ищем места |
Следующим шагом нужно отредактировать значение ЗАПРОС. Здесь нужно вписать ключевое слово или слова по которым будем искать. Если слов несколько то между ними нужно ставить +.
Например, если мы хотим найти наиболее популярные публикации на тему осинта, то это будет выглядеть так:
facebook.com/search/top/?q=osint&epa=FILTERS&filters=
Фильтры
Теперь нам нужно добавить фильтр. Он добавляется в конце, после =. Фильтр нужен либо для сортировки результатов, либо для выборки нужных результатов. Для понимания как это работает, фильтр это строка формата JSON, которую нужно конвертировать в кодировку Base64.
Для примера, фильтр означающий «Самые последние»:
{"rp_chrono_sort":"{\"name\":\"chronosort\",\"args\":\"\"}"}
Чтобы конвертировать в Base64 нужен конвертер. Подойдёт любой, но из наиболее толковых это: https://gchq.github.io/CyberChef/
В списке слева, двойным нажатием, выбираем способ конвертации. В нашем случае «To Base64», он появится в разделе Recipe. Затем в окно Input, вставляем то что будем конвертировать. А в окне Output появится нужный нам результат:
eyJycF9jaHJvbm9fc29ydCI6IntcIm5hbWVcIjpcImNocm9ub3NvcnRcIixcImFyZ3NcIjpcIlwifSJ9
Теперь мы можем собрать наш поисковый запрос в одно целое:
facebook.com/search/top/?q=osint&epa=FILTERS&filters=eyJycF9jaHJvbm9fc29ydCI6IntcIm5hbWVcIjpcImNocm9ub3NvcnRcIixcImFyZ3NcIjpcIlwifSJ9
Чтобы получить результат переходим по получившейся ссылке.
И если тебе показалось что это охренеть как заморочено, то подожди. Это был простой пример для того чтоб понять как это всё устроенно. В реальности же, сам фильтр, перед тем как конвертировать, тоже может понадобится отредактировать. И более того, иногда фильтры ещё и нужно объединять.
Фильтры по категориям
Но, перед тем как разбираться с этими нюансами, я перечислю наиболее актуальные фильтры, которые могут тебе пригодится. Для удобства разделим их по категориям контента который мы ищем:
Категория posts:
- Публичные посты:
{"rp_author":"{\"name\":\"merged_public_posts\",\"args\":\"\"}"}
- Посты от какого-то конкретного профиля:
{"rp_author":"{\"name\":\"author\",\"args\":\"pageID\"}"}
там где pageID, нужно будет подставить идентификатор нужной страницы
- Посты из нужной нам группы:
{"rp_group":"{\"name\":\"group_posts\",\"args\":\"groupID\"}"}
вместо groupID, нужно будет подставить идентификатор интересующей группы
- Посты с тэгом местоположения:
{"rp_location":"{\"name\":\"location\",\"args\":\"geoID\"}"}
там где geoID, нужно будет подставить идентификатор места
Категория people:
- Люди в определенном городе:
{"city":"{\"name\":\"users_location\",\"args\":\"IDгорода\"}"}
там где IDгорода, нужно будет подставить идентификатор нужного города
- Люди работающие в определённой организации:
{"employer":"{\"name\":\"users_employer\",\"args\":\"IDорганизации\"}"}
вместо IDорганизации, нужно будет подставить ID бизнес-страницы интересующей организации
- Друзья интересующего профиля:
{"friends":"{\"name\":\"users_friends_of_people\",\"args\":\"UserID\"}"}
там где UserID, нужно подставить ID нудного профиля
Категория photos:
- Публичные фотографии:
{"rp_author":"{\"name\":\"merged_public_posts\",\"args\":\"\"}"}
- Фотографии с интересующей страницы:
{"rp_author":"{\"name\":\"author\",\"args\":\"pageID\"}"}
вместо pageID, нужно будет подставить идентификатор нужной страницы
- Фотографии опубликованные группой:
{"rp_group":"{\"name\":\"group_posts\",\"args\":\"groupID\"}"}
там где groupID, нужно будет подставить идентификатор интересующей группы
- Фотографии с тегами определенного местоположения
{"rp_location":"{\"name\":\"location\",\"args\":\"geoID\"}"}
там где geoID, нужно будет подставить идентификатор места
Категория pages:
- Поиск верифицированных страниц:
{"verified":"{\"name\":\"pages_verified\",\"args\":\"\"}"}
- Поиск компаний или организаций:
{"category":"{\"name\":\"pages_category\",\"args\":\"1013\"}"}
- Поиск страницы бренда или продукта:
{"category":"{\"name\":\"pages_category\",\"args\":\"1009\"}"}
Категория top
- Самые последние:
{"rp_chrono_sort":"{\"name\":\"chronosort\",\"args\":\"\"}"}
- Наиболее популярные на странице:
{"rp_author":"{\"name\":\"author\",\"args\":\"pageID\"}"}
вместо pageID, нужно будет подставить идентификатор нужной страницы
- Наиболее популярные в группе:
{"rp_group":"{\"name\":\"group_posts\",\"args\":\"groupID\"}"}
там где groupID, нужно будет подставить идентификатор интересующей группы
- Наиболее популярные в каком-то месте:
{"rp_location":"{\"name\":\"location\",\"args\":\"geoID\"}"}
вместо geoID, нужно будет подставить идентификатор места
Объединение запросов
Теперь давай рассмотрим на более детальном примере как это работает. А чтобы было понятнее возьмём пример в котором нужно объединять фильтры, для получения более точного результата. Давай, для примера найдём человека по имени Алексей, который живет в Киеве и работает в BBC Ukraine.
Что нам для этого нужно? Для начала отредактируем поисковую строку:
facebook.com/search/people/?q=alex&epa=FILTERS&filters=
Мы указали категорию «people» т.к. мы ищем человека и в качестве запроса, указали имя «alex».
Теперь нужно добавить фильтры. Нам понадобится фильтр по местонахождению, в который нужно будет вписать id локации. Это значит что, для начала, нужно найти ID локации. В поиске Facebook, по запросу Kiev находим страницу города и из адресной строки копируем id:
Вписываем его в фильтр поиска по локации:
{"city":"{\"name\":\"users_location\",\"args\":\"111227078906045\"}"}
Теперь в поиске Facebook ищем страницу BBC Ukraine, жмём Ctrl+U чтобы увидеть исходный код, и через Ctrl+F ищем pageid:
Его мы вписываем в фильтр поиска по организации:
{"employer":"{\"name\":\"users_employer\",\"args\":\"124158667615790\"}"}
Теперь нужно эти две строки объединить. И тут нужно немножко внимательности. Для объединения нужно в первом фильтре удалить последнюю фигурную скобку, а во втором фильтре удалить первую фигурную скобку, и на их место добавить запятую:
{"city":"{\"name\":\"users_location\",\"args\":\"111227078906045\"}","employer":"{\"name\":\"users_employer\",\"args\":\"124158667615790\"}"}
Проверить работоспособность получившегося JSON можно здесь:
https://jsonformatter.curiousconcept.com/
Если ты где-то накосячил, то тебе покажет где ошибка. Самые распространённые ошибки это наличие пробелов, либо использование наклонных кавычек (кавычки должны быть прямыми).
Теперь нам нужно конвертировать получившийся JSON в Base64. Сделаем мы это на https://gchq.github.io/CyberChef/
В итоге получаем нужный фильтр в кодировке Base64. Который добавляем к нашему запросу:
facebook.com/search/people/?q=alex&epa=FILTERS&filters=eyJjaXR5Ijoie1wibmFtZVwiOlwidXNlcnNfbG9jYXRpb25cIixcImFyZ3NcIjpcIjExMTIyNzA3ODkwNjA0NVwifSIsImVtcGxveWVyIjoie1wibmFtZVwiOlwidXNlcnNfZW1wbG95ZXJcIixcImFyZ3NcIjpcIjEyNDE1ODY2NzYxNTc5MFwifSJ9
Вставляем получившийся запрос в адресную строку и видим результат. Нужный нам человек найден.
При объединении фильтров нужно учитывать, что объединять можно только фильтры из одной категории. Т.е., для примера, фильтры из категории people объединяются только с фильтрами из этой же категории. Объединять people с top, или другими нельзя, покажет пустую страницу.
И да, я понимаю, что подобный способ поиска, это охренеть какая замороченная история, но такова природа Facebook, а нам лишь остаётся работать с тем что есть.
Поиск рекламных объявлений на Facebook
Ну и ещё один ситуативный, но иногда полезный инструмент. На Facebook можно искать рекламные объявления и просматривать данные о них.
Для этого идём на сайт Библиотека объявлений, выбираем страну по которой нас интересуют рекламные объявления. Затем вводим ключевые слова по которым будем искать. Немного ждём и видим общее количество найденных результатов и список найденных рекламных сообщений. К этому списку можно дополнительно применить фильтры.
Можно выбрать язык объявления, рекламодателя, платформу, диапазон дат, ну и так далее.
В списке объявлений мы видим сам рекламный пост, кто его разместил, ссылки на его Facebook и Instagram и дату когда запущенна реклама. На каждый пост можно нажать и увидеть более дательную информацию и рекламодателе. При просмотре полной информации о посте, можно нажать «See Ads» и тогда мы увидим все рекламные посты этого автора. А во вкладке About можно посмотреть когда создана страница, а также другие связанные страницы. Ну и информацию о профилях которые рекламируются.
В чём плюсы? Эта штука с поиском рекламных сообщений бывает очень полезна для выявления связей коммерческих структур. Ну или когда нужно, например, вычислить ботоферму. В общем во всех тех ситуациях когда нужно проводить параллели между разными страницами. Потому как очень часто реклама разных страниц оплачивается с одного и того же аккаунта. Ну и бонусом мы видим связь между аккаунтами Facebook и Instagram. Что тоже бывает не лишним.
Ну, а на этом можем заканчивать. Как видишь поиск по Facebook не самая удобная и приятная процедура. Но и чего-то сверхсложного в этом нет, как и везде, всё решает практика.
В дополнение изложенной темы, можешь почитать статью про поиск по Instagram: Деанон в Instagram. Как находить людей по профилю Instagram
Твой Pulse.