Гайд по Sherlock и Snoop Project
Поиск по никнейму
Один из самых распространенных вариантов поиска это поиск по никнейму, это вполне объяснимо, потому что ник человека не проблема найти, а большое количество пользователей использует один и тот же никнейм в разных социальных сетях, сайтах, играх и так далее.
Примечание: На этом моменте понятливый читатель, должен сделать для себя вывод, что если ты переживаешь за свою анонимность, то, однозначно, нужно везде использовать разные никнеймы, с разными почтами, разными телефонами и вообще всем разным. Это нужно, что бы невозможно было построить цепочки связей.
Итак, зная никнейм человека мы можем переходить к поиску всех его страниц зарегистрированных под этим ником, это можно делать как руками, используя Google, так и через специальные сайты для это предназначенные, но эффективнее всего и, что важно, удобнее и быстрее, с этой задачей справится специализированный софт.
- Sherlock и Snoop Project предустановлены в CSI Linux, который мы подробно рассматривали в недавней статье.
Установка и использование Sherlock
- Для начала Sherlock (https://github.com/sherlock-project/sherlock) нужно установить, для этого копируем репозиторий и устанавливаем зависимости:
git clone https://github.com/sherlock-project/sherlock.git cd sherlock sudo apt install python3-pip python3 -m pip install -r requirements.txt
python3 sherlock.py --help
python3 sherlock.py --help usage: sherlock.py [-h] [--version] [--verbose] [--rank] [--folderoutput FOLDEROUTPUT] [--output OUTPUT] [--tor] [--unique-tor] [--csv] [--site SITE_NAME] [--proxy PROXY_URL] [--json JSON_FILE] [--proxy_list PROXY_LIST] [--check_proxies CHECK_PROXY] [--timeout TIMEOUT] [--print-found] [--no-color] [--browse] USERNAMES [USERNAMES …] Sherlock: Find Usernames Across Social Networks (Version 0.10.9) positional arguments: USERNAMES Одно или несколько имен пользователей для проверки по социальным сетям optional arguments: -h, --help Показать это справочное сообщение и выйти. --version Показать информацию о версии и зависимости. --verbose, -v, -d, --debug Показать дополнительную информацию об отладке и метрики. --rank, -r Представленные сайты упорядочены по популярности на Alexa.com --folderoutput FOLDEROUTPUT, -fo FOLDEROUTPUT Если используется несколько имен пользователей, результаты будут сохранены в эту папку. --output OUTPUT, -o OUTPUT Если используется одно имя пользователя, результат будет сохранен в этот файл. --tor, -t Делать запросы через Tor; увеличивает время выполнения; требует что бы Tor быть установлен в системе. --unique-tor, -u Делать запросы через Tor с новой цепью Tor после каждого запроса; увеличивает время выполнения; требует, чтобы Tor был установлен в системе. --csv Создать файл Comma-Separated Values (CSV). --site SITE_NAME Ограничить анализ только перечисленными сайтами. Добавьте несколько вариантов, указав более одного сайта. --proxy PROXY_URL, -p PROXY_URL Делать запросы через прокси, например socks5://127.0.0.1:1080 --json JSON_FILE, -j JSON_FILE Загрузить данные из JSON файла. --proxy_list PROXY_LIST, -pl PROXY_LIST Делать запросы через прокси, случайно выбранный из списка созданного в файле .csv. --check_proxies CHECK_PROXY, -cp CHECK_PROXY Для использования с параметром --proxy_list. Скрипт проверит, чтобы прокси предоставленные в .csv файле были рабочими и анонимными. Установите 0 для снятия ограничения на успешные проверки прокси, другое число установит лимит --timeout TIMEOUT Время (в секундах) ожидания ответа на запросы. Timeout по умолчанию 60.0. Более длительный тайм-аут будет нужен что бы получить результаты с медленных сайтов. С другой стороны, это может привести к большой задержке, чтобы собрать все результаты. --print-found Не выводить сайты, где имя пользователя не найдено. --no-color Не цветной вывод терминала --browse, -b Показать все результаты в браузере по умолчанию.
Ознакомившись со справкой можем переходить непосредственно к поиску. Возьмём для примера менеджера одного нашего канала-подражателя:
python3 sherlock.py Somia
- Результаты будут сохранены в txt-файл с именем, которое искали, в папке программы.
- Эта утилита ищет более чем по 300 сайтам, причем их список постоянно пополняется, с полным списком задействованных сайтов можно ознакомится здесь: https://github.com/sherlock-project/sherlock/blob/master/sites.md
Понятное дело, что у выбранного нами акка телеги, мягко говоря, не уникальный никнейм и совпадений будет достаточно много, но стартовые данные мы получили, теперь нам останется посмотреть результаты и по дополнительным признакам найти страницы, которые действительно принадлежат изучаемому объекту. Но как строить и анализировать цепочки связей это уже тема другой статьи.
Используя утилиту Sherlock мы охватываем довольно большой сегмент интернета, но, при этом, недостаточно полно охватываем русскоязычную часть, а нас, как правило будет интересовать именно она, а потому мы переходим к следующей очень полезной утилите.
Установка и использование Snoop Project
Для поиска в русскоязычном сегменте мы будем работать с ещё более продвинутой утилитой – это Snoop Project, которая, тем не менее, очень похожа на Sherlock, хотя бы потому что это её форк, и именно потому я начал именно с Sherlock. Snoop Project имеет в своей базе более 800 сайтов для поиска, многие из которых находятся именно в ру сегменте, а потому наш поиск будет максимально эффективен.
Для любителей использовать мобильные телефоны, Snoop умеет работать из Termux.
- Репозиторий Snoop Project – https://github.com/snooppr/snoop
- Список сайтов с которыми работает Snoop Project – https://github.com/snooppr/snoop/blob/master/websites.md
- Начинаем, как обычно с установки.
git clone https://github.com/snooppr/snoop cd snoop sudo apt install python3-pip python3 -m pip install -r requirements.txt
python3 snoop.py --help
python3 snoop.py -h #справка по функциям ПО python3 snoop.py -t 9 username #поиск user-a usage: snoop.py [-h] [--donate Y] [--sort Y] [--version] [--verbose] [--csv] [--json] [--site] [--time] [--found-print] [--no-func] [--userload] [--list all] [--country] [--update Y] USERNAMES [USERNAMES …] Snoop: поиск никнейма по всем фронтам! (Version 1.1.8_rus Ветка Snoop Desktop) positional arguments: USERNAMES Никнейм разыскиваемого пользователя, поддерживается несколько имён optional arguments: -h, --help show this help message and exit --donate Y, -d Y Пожертвовать на развитие Snoop project-а --sort Y Обновление/сортировка черного и белого списков (.json)сайтов БД Snoop. Если вы не разработчик, не используйте эту опцию --version, --about, -V Вывод на печать версий: OS; Snoop; Python и Лицензии --verbose, -v Во время поиска 'username' выводить на печать подробную вербализацию --csv По завершению поиска 'username' сохранить файл в формате таблицы 'username.CSV' с расширенным анализом --json , -j Указать для поиска 'username' другую БД в формате 'json', например, 'example_data.json'. Если у вас нет такой БД, не используйте эту опцию --site , -s Указать имя сайта из БС '--list all'. Поиск 'username' на одном указанном ресурсе --time , -t 9 Установить выделение макс.времени на ожидание ответа от сервера (секунды). Влияет на продолжительность поиска. Влияет на 'Timeout ошибки:'Оптимальное значение при хорошем интернет соединении = 9с. Вкл. эту опцию необходимо практически всегда, чтобы избежать длительных зависаний при Internet Censorship --found-print, -f Выводить на печать только найденные аккаунты --no-func, -n ✓Монохромный терминал, не использовать цвета в url ✓Отключить звук ✓Запретить открытие web browser-а ✓Отключить вывод на печать для флагов стран --userload , -u Указать файл со списком user-ов. Пример_Linux:'python3 snoop.py -u ~/list.txt start' Пример для Windows: 'python snoop.py -u c:\snoop\list.txt start' --list all Вывести на печать информацию о базе данных Snoop --country, -c Сортировка 'вывода на печать/запись в html' результатов по странам, а не по алфавиту --update Y Обновить Snoop Snoop поддержка: 802 Websites!!!
python3 snoop.py -t 9 darksomia
- Учитывая что поиск будет проводится по большому количеству сайтов, придется немного подождать. По окончанию откроется браузер, где мы увидим на каких ресурсах был найдет наш объект, с соответствующими ссылками на профили и статистической информацией по поиску.
- Результаты поиска сохраняются в паке программы: /home/kali/snoop/results/, там сохранены результаты в html (тот что мы видим в браузере), а также в csv и txt файлах, причем эта фишка сохранения в разных форматах, это очень круто, когда нужно работать с большими объёмами данных.
Сайты для поиска по никнейму
Помимо утилит Sherlock и Snoop Project, при поиске по никнейму, нужного нам персонажа также стоит поискать на некоторых специализированных сайтах, что бы собрать максимально возможную информацию, ну и чтобы точно ничего не пропустить:
- https://www.social-searcher.com/ – ищет как по и имени так и упоминания имени в постах, может быть полезно чтобы найти посты пользователя в социальных сетях, можно использовать фильтры для поиска только по определенным сайтам или по типу контента. Умеет выводить результаты в виде всяческих графиков.
- https://namecheckup.com/ – тоже ищет по социальным сетям и выводит результат в удобном виде, умеет искать в кэше удаленные страницы.
- https://namechk.com/ – тоже самое, что и предыдущий сайт.
- https://whatsmyname.app/ – это, наверно, лучший сайт для поиска по нику, работает максимально быстро, при этом довольно достойно ищет, позволяет выбрать категорию для поиска. Единственный минус – всего около 200 мест для поиска, что в текущей реальности, конечно маловато. И этот момент, кстати, это слабое место всех сайтов для поиска, по основным социальным ресурсам они конечно ищут не плохо, но вот когда есть вероятность, что искомый человек зарегистрировался на каких-нибудь специфических ресурсах, сайты тут пасуют и приходится обращаться к Sherlock или Snoop. Кто-то конечно может подумать что искать страницы человека на небольших или непопулярных ресурсах нет смысла, но это совсем не так. Как показывает практика иногда в таких, не очевидных местах, получается найти вполне конкретную информацию по человеку, например дату рождения или, номер мобильного телефона. И отсюда кстати, следует ещё один вывод: даже если ты регистрируешься на каком-то слабо известном ресурсе, всё равно стоит придумать уникальный никнейм и уж, точно, не стоит там указывать свои настоящие данные, потому что ты некогда не знаешь кто их там может найти, а главное с какой целью. Короче, если ты переживаешь за свою анонимность, не расслабляйся никогда, потому что как только ты расслабишься – ты ошибешься.
У кого-то мог возникнуть вопрос:
А зачем одно и тоже искать на нескольких ресурсах?
Ответ прост:
Что бы получить максимальный результат и исключить вероятность ошибки или пропуска нужной страницы. У каждого ресурса свой список сканируемых сайтов, какой-то что-то может не показать или ты можешь пропустить, а когда ты продублировал поиск в нескольких местах, то можешь быть уверен, что ничего не пропустил, тем более времени на это надо минимум.