Каждый, кто занимается OSINT-расследованиями, знает: поиск по никнейму — это фундамент. «N00b», «God», «Shadow_17» — эти цифровые отпечатки пальцев зачастую ценнее реального имени. Но стандартный поиск вручную утомителен, несистематизирован и чреват пропуском ключевых данных. Выход — автоматизация. А лучшая автоматизация — та, которая сделана своими руками.

Сегодня мы создадим свой собственный «комбайн» для сбора цифрового следа. Это не просто скрипт, а централизованная система на базе знакомого и мощного инструмента — Google Таблиц. Наш комбайн будет не только искать информацию, но и проверять, архивировать и анализировать ее.

Идея проста. Мы вводим целевой никнейм в одно поле, а система автоматически:

  • проверяет сотни социальных сетей, форумов и блогов;

  • ищет упоминания в доменных именах и адресах электронной почты;

  • проверяет существование почтовых ящиков;

  • анализирует активность найденных страниц;

  • сохраняет тело страниц и проверяет веб-архивы;

  • ищет похожие по написанию (пермутированные) никнеймы.

Все это становится возможным благодаря встроенным функциям Google Sheets и интеграциям с внешними API через Google Apps Script. Давайте разберем каждый функциональный блок нашего инструмента на примере этой таблицы.

МОДУЛЬ №1: Поиск по социальным сетям, блогам и форумам

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

В качестве примера возьмем никнейм нашей компании — tomhunter. Теперь выберем те соцсети, в которых мы хотели бы осуществить поиск по заданному никнейму. Например:

https://vk.com/tomhunter

https://ok.ru/tomhunter

https://t.me/tomhunter

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

=HYPERLINK(L3&C3)

Где L3 — ссылка на ячейку с ULR соцсети (https://vk.com/), а C3 — ссылка на ячейку, содержащую искомый никнейм (tomhunter). 

В некоторых соцсетях исследуемый никнейм может быть занят другим пользователем, а то и вовсе содержать в своем составе запрещенные символы. В таком случае объект расследования часто видоизменяет свой никнейм (заменяет отдельные знаки или добавляет спецсимволы). Полноценных сервисов, позволяющих обнаружить подобные пермутации, нет... за исключением использования расширенных поисковых операторов (дорков). Дополним ими нашу таблицу. Для начала создадим обращение к URL поисковой системы Google, например: 

=HYPERLINK(L6&C3&" site:vk.com"; "VK похожие")

=HYPERLINK(L6&C3&" site:ok.ru"; "OK похожие")

=HYPERLINK(L6&C3&" site:t.me"; "TG похожие")

Где L6 — ссылка на ячейку с ULR поиска Google (https://www.google.com/search?q=), а C3 — ссылка на ячейку, содержащую искомый никнейм (tomhunter). Остальные элементы — части расширенного поискового запроса и название гиперссылки. Теперь при переходе по ссылке мы будем обращаться к поиску Google, который будет искать схожие (без точного совпадения) по никнейму сообщества в конкретной соцсети. 

МОДУЛЬ №2: Проверка доменов и email-адресов

Никнейм часто используется в деловой и личной переписке, а также для регистрации доменных имен. С последних и начнем. Их проверка мало чем отличаются от проверки никнейма в соцсетях. Составьте список вероятных доменных зон: .ru, .su, .com, .org, .info, .biz, .net, .me. А теперь создайте целевую гиперссылку формулой:

=(C3&".ru")

Где C3 — ссылка на ячейку, содержащую искомый никнейм (tomhunter), после которой идет указание на нужную доменную зону (.ru, .su, .com и так далее). 

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

tomhunter@ya.ru

tomhunter@mail.ru

tomhunter@gmail.com

Для генерации такого списка мы снова воспользуемся формулой:

=(C3&"@yandex.by")

Где C3 — ссылка на ячейку, содержащую искомый никнейм (tomhunter), после которой идет указание на домен почтового сервиса (ya.ru, gmail.com и другие).

МОДУЛЬ №3: Анализ статусов и экспорт контента

Добавим функциональности нашему комбайну. Мы уже разобрали как создавать списки соцсетей, блогов, форумов и доменов, содержащих искомый никнейм. Но проверять каждую гиперссылку руками — это дурной тон. Автоматизируем эту работу при помощи скрипта:

function getPageStatus(url) {

  try {

    var response = UrlFetchApp.fetch(url, {

      'muteHttpExceptions': true

    });

    var statusCode = response.getResponseCode();

    return " " + statusCode + " " + (statusCode == 200 ? "FOUND" : " NOT FOUND");

  } catch (e) {

    return "Error: " + e.message;

  }

}

Он позволяет нам вернуть информацию о статусе страницы, не переходя по ней. Узнать является ли она активной. Кстати, в условном форматировании таблицы вы потом сможете выделить тот или иной статус нужным цветом. Например, выделить зеленым существующие аккаунты, а красным — неактивные (с кодом ошибки 404 или иными).

Дело пошло веселей! Но теперь мы хотим не просто выявить активные страницы по никнейму, но и выгрузить в нашу таблицу их содержимое (тело веб-страницы). В дальнейшем это позволит анализировать биографию, посты и ссылки без постоянного переключения между вкладками браузера. Воспользуемся еще одной формулой:

=JOIN(CHAR(10); IMPORTXML(E3; "//body"))

Где JOIN(CHAR(10) — обеспечивает соединение загружаемых элементов в одной ячейке; IMPORTXML — функция импорта из структурированных данных XML или HTML; E3 — ссылка на ячейку с целевым URL (https://vk.com/tomhunter, tomhunter.ru); //body — команда для выгрузки всего содержимого веб-страницы.

Наконец, добавим в таблицу функциональность для проверки фактического существования адреса электронной почты при помощи SMTP-запроса. Для этого нам потребуется внешний сервис, обеспечивающий такие проверки. Например, api.zerobounce.net. Создадим новый скрипт для таблицы:

function SMTP(input) {

  response=UrlFetchApp.fetch("https://api.zerobounce.net/v2/validate?api_key=ХХХХХХХХХХХХХХХХХХХХХХХХХ&email="+input).getContentText();

  return response;

}

МОДУЛЬ №4: Работа с веб-архивами

Мы понимаем, что пользователь мог удалить или изменить свой профиль. Наш комбайн это предусматривает. Для каждого найденного URL мы автоматически cгенерируем ссылки на его архивные копии в Wayback Machine (archive.org). Достаточно простой формулы:

=HYPERLINK("https://web.archive.org/web/*/"&E3) 

Где "https://web.archive.org/web/*/" — запрос к Wayback Machine; а E3 — ссылка на ячейку с целевым URL (https://vk.com/tomhunter, tomhunter.ru)

Такой «комбайн» превращает рутинный поиск по никнейму из искусства в науку. Он не думает за исследователя, но берет на себя всю тяжелую техническую работу, позволяя вам сосредоточиться на самом важном — анализе полученных данных и соединении точек в единую картину. Это живой инструмент, который вы будете постоянно улучшать и адаптировать под свои задачи. Творите, автоматизируйте и оставайтесь любопытными!

А если интересно глубже изучить работу с Google Таблицами в OSINT, у нас в блоге много статей по теме. Например, Ваш личный мини-SOC из Google Таблиц: Как мониторить безопасность доменов на автопилоте? и Что скрыл сайт? Архивные копии в OSINT.

Комментарии (0)