Skip to content
/ snoop Public

Snoop — инструмент разведки на основе открытых данных (OSINT world)

Notifications You must be signed in to change notification settings

snooppr/snoop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Snoop Project

Snoop Project один из самых перспективных OSINT-инструментов — поиск по нику

  • This is the most powerful software taking into account the CIS location.

Is your life slideshow? Ask Snoop.
Snoop project is developed without taking into account the opinions of the NSA and their friends,
that is, it is available to the average user (project creation date: February 14, 2020).

🇷🇺 РУССКИЙ readme
🌎 ENGLISH readme
🇪🇸 ESPAÑOL readme
🇩🇪 DEUTSCHE readme
🇨🇳 中国人 readme
🇫🇷 FRANÇAIS readme


Note

Snoop — это исследовательская работа в области поиска и обработки публичных данных в сети интернет (собственная база данных, алгоритмы, закрытые багбаунти). По части специализированного поиска Snoop способен конкурировать с традиционными поисковыми системами.

Функционал инструмента простой и не требует от пользователей знаний, владений каких-либо технических навыков.
(скачал софт, указал цель, получил результат).

Сравнение индексаций БД-никнеймов подобных инструментов:




Платформа Поддержка
GNU/Linux
Windows 7/11 (32/64)
Android (Termux)
macOS 🚫
IOS 🚫
WSL 🚫

Snoop for OS Windows and GNU/Linux

Snoop Local database

Snoop full version database 4600+ websites ⚡️⚡️⚡️

Релиз/Release

RU: Snoop поставляется готовыми сборками (релиз) и не требует зависимостей (библиотек) или установки python, то есть работает на чистой машине с OS Windows или GNU/Linux.
EN: Snoop comes with ready-made assemblies (release) and does not require dependencies (libraries) or python installation, that is, it runs on a clean machine with OS Windows or GNU/Linux.
┗━━ ⬇️Download Snoop Project

🟣 Snoop Project Plugins

1. Demonstration of one of the methods in the Plugin — 〘GEO_IP/domain〙

GEO_IP.mp4

$$$$

Reports are also available in csv/txt/CLI/maps

$$$$

Report in HTML format on the OSM map (Snoop full version)

$$$$

2. Demonstration of one of the methods in the Plugin — 〘Yandex_parser〙

$$$$

Search report dozen nickname (Plugin — Yandex_parser)

$$$$

3. Demonstration of one of the methods in the Plugin — 〘Reverse Vgeocoder〙

ReverseVgeocoder.mp4

Snoop выбирает из грязных данных (цифры, буквы, спецсимволы) лишь геокоррдинаты, расставляет по ним маркеры на карте и подписывает их близлежащими населенными пунктами/объектами.

Visualization of signed geocoordinates: HTML report (Snoop full version)

🟤 Самостоятельная сборка ПО из исходного кода/Self-build software from source

Native Installation

  • Примечание: не делать так, если хотите установить snoop на android/termux (установка отличается, для этого смотри специальный пункт ниже).
  • Примечание: требуемая версия python 3.7+
# Клонировать репозиторий
$ git clone https://github.com/snooppr/snoop

# Войти в рабочий каталог
$ cd ~/snoop

# Установить python3 и python3-pip, если они не установлены
$ apt-get update && apt-get install python3 python3-pip

# Установить зависимости 'requirements'
$ pip install --upgrade pip
$ python3 -m pip install -r requirements.txt
# Если вместо флагов стран отображаются буквенные коды, доставить пакет шрифта, например (цветной)
$ apt-get install fonts-noto-color-emoji или $ apt-get install ttf-ancient-fonts (монохромный)
# На OS Windows использовать cmd или powershell (на выбор по удобству), но не WSL!
🟢 Использование/Using
usage: snoop_cli.bin [search arguments...] nickname
or
usage: snoop_cli.bin [service arguments | plugins arguments]


$ snoop_cli.bin --help #запуск сборки на GNU/Linux

Справка

optional arguments:
  -h, --help            show this help message and exit

service arguments:
  --version, -V         About: вывод на печать версий:: OS; Snoop;
                        Python и Лицензии
  --list-all, -l        Вывести на печать детальную информацию о базе
                        данных Snoop
  --donate, -d          Пожертвовать на развитие Snoop Project-а,
                        получить/приобрести Snoop full version
  --autoclean, -a       Удалить все отчеты, очистить кэш
  --update, -U          Обновить Snoop

plugins arguments:
  --module, -m          OSINT поиск: задействовать различные плагины
                        Snoop:: IP/GEO/YANDEX

search arguments:
  nickname              Никнейм разыскиваемого пользователя.
                        Поддерживается поиск одновременно нескольких имен. Ник,
                        содержащий в своем имени пробел, заключается в кавычки
  --web-base, -w        Подключиться для поиска 'nickname' к динамично-
                        обновляемой web_БД (4600+ сайтов)
  --site , -s <site_name> 
                        Указать имя сайта из БД '--list-all'. Поиск
                        'nickname' на одном указанном ресурсе, допустимо
                        использовать опцию '-s' несколько раз
  --exclude , -e <country_code> 
                        Исключить из поиска выбранный регион, допустимо
                        использовать опцию '-e' несколько раз, например, '-e RU
                        -e WR' исключить из поиска Россию и Мир
  --include , -i <country_code> 
                        Включить в поиск только выбранный регион,
                        допустимо использовать опцию '-i' несколько раз,
                        например, '-i US -i UA' поиск по США и Украине
  --time-out , -t <digit> 
                        Установить выделение макс.времени на ожидание
                        ответа от сервера (секунды). Влияет на продолжительность
                        поиска. Влияет на 'Timeout ошибки'. Вкл. эту опцию
                        необходимо при медленном интернет соединении (по
                        умолчанию 9с)
  --country-sort, -c    Печать и запись результатов по странам, а не по
                        алфавиту
  --no-func, -n         ✓Монохромный терминал, не использовать цвета в
                        url ✓Запретить открытие web browser-а ✓Отключить вывод
                        на печать флагов стран ✓Отключить индикацию и статус
                        прогресса
  --found-print, -f     Выводить на печать только найденные аккаунты
  --verbose, -v         Во время поиска 'nickname' выводить на печать
                        подробную вербализацию
  --userlist , -u <file> 
                        Указать файл со списком user-ов. Snoop
                        интеллектуально обработает данные и предоставит
                        доп.отчеты
  --save-page, -S       Сохранять найденные странички пользователей в
                        локальные html-файлы
  --pool , -p <digit>   Отключить автооптимизацию и задать вручную
                        ускорение поиска от 1 до 160 макс. рабочих
                        потоков/процессов. По умолчанию используется
                        персональная предельная граница этой ЭВМ в Quick-режиме,
                        в остальных режимах используется предельная граница
                        слабых ПК. Слишком низкое или высокое значение может
                        существенно замедлить работу ПО. ~Расчетное оптимальное
                        значение для данного устройства см. блок 'snoop info'
                        параметр 'Recommended pool' опция [--version/-V]. Данную
                        опцию рекомендуется использовать 1) если пользователь
                        имеет многоядерное устройство 2) не желает использовать
                        Quick-режим [--quick/-q] 3) намеревается ускорить поиск,
                        например, в режиме с опцией [--found-print/-f']. Опция
                        персональна и способна разогнать поиск в Snoop full
                        version до огромных скоростей
  --quick, -q           Быстрый и агрессивный режим поиска. Не
                        обрабатывает повторно сбойные ресурсы, вследствие чего
                        ускоряется поиск, но и немного повышается Bad_raw.
                        Quick-режим подстраивается под мощность ПК, не выводит
                        промежуточные результаты на печать, эффективен и
                        предназначен для Snoop full version

Example

# Для поиска только одного пользователя:
$ python3 snoop.py nickname1 #Running from source
$ snoop_cli.bin nickname1 #Running from release linux
# Или, например, кириллица поддерживается:
$ python3 snoop.py олеся #Running from source
# Для поиска имени, содержащего пробел:
$ snoop_cli.bin "ivan ivanov" #Running from release linux
$ snoop_cli.bin ivan_ivanov #Running from release linux
$ snoop_cli.bin ivan-ivanov #Running from release linux

# Запуск на OS Windows:
$ python snoop.py nickname1 #Running from source
$ snoop_cli.exe nickname1 #Running from release win
# Для поиска одного и более юзеров:
$ snoop_cli.exe nickname1 nickname2 nickname123321 #Running from release win

# Поиск множества юзеров;
# избежание зависаний на сайтах (чаще 'мёртвая зона' зависит от ip-адреса пользователя);
# выводить на печать только найденные аккаунты; сохранять странички найденных
# аккаунтов локально; указать файл со списком разыскиваемых аккаунтов;
# подключиться для поиска к расширяемой и обновляемой web-base Snoop;
# исключить из поиска все сайты в RU-регионе:
$ snoop_cli.bin -t 6 -f -S -u ~/file.txt -w -e RU #Running from release linux

# Поиск двух username на двух ресурсах:
$ snoop_cli.bin -s habr -s lichess chikamaria irina

# проверить базу данных Snoop:
$ snoop_cli.bin --list-all #Running from release linux

# распечатать справку по функциям Snoop:
$ snoop_cli.bin --help #Running from release linux

# Задействовать плагины Snoop:
$ snoop_cli.bin --module #Running from release linux

# Получить Snoop full version:
$ snoop_cli.bin --donate
  • 'ctrl + c' — прервать поиск.
  • Найденные учетные записи будут храниться в ~/snoop/results/nicknames/*{txt|csv|html}.
  • csv открывать в *office, разделитель полей запятая.
  • Уничтожить все результаты поиска — удалить каталог '~/snoop/results', или в т.ч. и сбросить кэш snoop_cli.exe --autoclean #Running from release OS Windows.
# Обновляйте Snoop для тестирования новых функций в ПО:
$ python3 snoop.py --update #требуется установка Git.
🔵 Snoop for Android

Для удобства отдельный мануал (необязательно)

$$search-nickname$$

$$plugins$$

Native Installation

Установить Termux

# ПРИМЕЧАНИЕ_1!: если у пользователя ошибки при $ 'pkg update', например из-за цензуры в стране,
# и/или из-за того, что Termux давно не обновлялся на устройстве пользователя,
# то удаление/установка Termux-приложения не поможет,
# т.к. после удаления старые репозитории остаются на устройстве пользователя, решение:
$ termux-change-repo 
# и выбрать получение обновлений (для всех репо) из другого зеркала-репозитория.

# Войти в домашнюю папку Termux (т.е. просто открыть Termux)
$ termux-setup-storage
$ pwd #/data/data/com.termux/files/home #дефолтный/домашний каталог

# Установить python3 и зависимости
$ apt update && pkg upgrade && pkg install python libcrypt libxml2 libxslt git
$ pip install --upgrade pip

# Клонировать репозиторий
$ git clone https://github.com/snooppr/snoop

# Войти в рабочий каталог Snoop и установить зависимости 'requirements.txt'
$ cd ~/snoop
$ python3 -m pip install -r requirements.txt

# Опционально ↓
# Чтобы расширить вывод терминала в Termux (по умолчанию 2к строк отображение в CLI),
# например, отображение всей БД опции '--list-all [1/2]'  
# добавить строку 'terminal-transcript-rows=10000' в файл '~/.termux/termux.properties'
# (крайне полезная опция доступна в Termux v0.114+). 
# Перезапустить Termux.  

# Пользователь также может запускать snoop по команде 'snoop' из любого места в CLI, создав alias.
$ cd && echo "alias snoop='cd && cd snoop && python snoop.py'" >> .bashrc && bash  

# Пользователь также может выполнить быструю проверку интересующего его сайта по БД,
# не используя опцию "--list-all", используя команду "snoopcheck".
$ cd && echo "alias snoopcheck='cd && cd snoop && echo 2 | python snoop.py --list-all | grep -i'" >> .bashrc && bash  

# ПРИМЕЧАНИЕ_2!: Snoop довольно умён и может автоматически открывать результаты поиска во внешнем веб-браузере:  
$ cd && pkg install termux-tools; echo 'allow-external-apps=true' >>.termux/termux.properties  
# перезапустить Termux.  
# По окончанию поиска работы snoop на запрос выбора, "чем открыть результаты поиска" выбрать дефолтный/системный HTMLviewer.  

# ПРИМЕЧАНИЕ_3!: после отключения РФ от Лондонской точки обмена интернет-трафиком скорость поиска Snoop
# (возможно и у других поставщиков связи) на мобильных операторах Мегафон/Yota упала в ~2 раза.

ПРИМЕЧАНИЕ_4!: если у пользователя Android ущербный (то есть 12+) и ломает Termux, читайте инструкцию по решению проблемы здесь.
ПРИМЕЧАНИЕ_5!: поддерживаются старые пропатченные python версии 3.7-3.10 из termux_tur repo.

🔴 Основные ошибки/Basic errors in
Сторона Проблема Решение
========= ======================================================= =======
Клиент Блокировка соединения проактивной защитой (*Kaspersky) 1
Недостаточная скорость интернет соединения EDGE/3G 2
Слишком низкое значение опции '-t' 2
недопустимое nickname 3
Ошибки соединения: [GipsysTeam; Nixp; Ddo; Mamochki; 7
Ложные результаты (Беларусь): [D3; ChangeORG] 4
Отсутствие результатов (РФ): [Strava] 4
========= ======================================================= =======
Провайдер Internet Censorship 4
========= ======================================================= =======
Сервер Сайт изменил свой ответ/API; обновился CF/WAF 5
Блокировка сервером диапазона ip-адресов клиента 4
Срабатывание/защита ресурса captch-ей 4
Некоторые сайты временно недоступны, технические работы 6
========= ======================================================= =======

Примечание — в Snoop Project разработана мощная система детектирования различных проблем в т.ч. и интернет-цензуры. Условно в большинстве случаев пользователь не получает ложноположительные результаты при поиске на «проблемных ресурсах», т.к. Snoop отлично их подавляет, а в некоторых случаях, например, Etsy/Poker сайты — получает (намеренная, неограниченная демонстрация проблемы пользователю и того, что поиск в Snoop Project можно было бы произвести более эффективными способами, например, используя прокси/vpn из свободных от цензуры/санкций локаций).

Решения:

  1. Перенастроить свой Firewall (например, замечено, что Kaspersky блочит доступ к ресурсам для взрослых).

  2. Проверить скорость своего интернет соединения:
    python3 snoop.py -v nickname
    Если какой-либо из параметров сети выделен красным цветом, Snoop может подвисать во время поиска.
    При низкой скорости увеличить значение 'x' опции '--time-out x':
    python3 snoop.py -t 15 nickname

  3. Фактически это не ошибка. Исправить nickname
    (например, на некоторых сайтах недопустимы символы кириллицы; "пробелы" или 'вьетнамо-китайская кодировка' в именах пользователей, в целях экономии времени: — запросы фильтруются).

  4. Сменить свой ip-адрес
    Интернет цензура (внутренняя и внешняя по локационному признаку/санкции) — самое распространенное из-за чего пользователь получает ошибки пропуска/ложного срабатывания/и в некоторых случаях 'Увы'. Иногда, при частом повторном запросе за короткий промежуток времени, сервер конкретного ресурса может заблочить ip-адрес клиента на непродолжительное время (обычно до одной минуты, в течение которой бессмысленно выполнять запросы).
    При использовании Snoop с IP адреса провайдера мобильного оператора скорость может упасть в разы, зависит от провайдера.
    Самый действенный способ решить проблему — ИСПОЛЬЗОВАТЬ VPN, TOR слабо подходит на роль помощника и сам подвергается сильнейшему давлению со стороны цензурирования многих веб-сайтов.

Пример внутренней интернет-цензуры.

Пример внешней интернет-цензуры.

  1. Открыть в Snoop репозитории на Github-e Issue/Pull request
    (сообщить об этом разработчику).

  2. Не обращать внимание, сайты иногда уходят на ремонтные работы и возвращаются в строй.

  3. Проблема с openssl в некоторых дистрибутивах GNU/Linux, а также проблема с сайтами, которые не обновлялись годами. Проблема эта встречается, если пользователь намеренно запустил snoop с опцией '--cert-on'.
    Решение не использовать опцию «--cert-on» или:

$ sudo nano /etc/ssl/openssl.cnf

# Изменить в самом низу файла строки:
[MinProtocol = TLSv1.2]
на
[MinProtocol = TLSv1]

[CipherString = DEFAULT@SECLEVEL=2]
на
[CipherString = DEFAULT@SECLEVEL=1]
🟠 Дополнительная информация/Additional information

История развития проекта/History.

Лицензия Snoop Project/License.

Документация/Documentation.

Отпечаток публичного ключа: 076DB9A00B583FFB606964322F1154A0203EAE9D.

Информация для юридических лиц: Snoop Project включен в реестр отечественного ПО с заявленным кодом: 26.30.11.16 Программное Обеспечение, обеспечивающее выполнение установленных действий при проведении оперативно-розыскных мероприятий. Приказ Минкомсвязи РФ №515 реестровый № 7012.

Snoop неидеален: вэб-сайты падают; закрывающие теги отсутствуют; соединения цензурируются; хостинги вовремя не оплачиваются. Время от времени необходимо следить за всем этим "Web rock 'n' roll", поэтому донаты приветствуются: примеры коррекции БД/Example close/bad websites.

Внимание❗️ Из-за цензуры письма с 'mailru' и 'yandex' не доходят до международного почтового сервиса 'protonmail'. Пользователи mailru/yandex пишите запросы на запасную почту: snoopproject@ya.ru

Визуализация коммитов: от рождения проекта до пятницы тринадцатого 2023г/~3года.

2.mp4

Условно-расчётная финансовая стоимость разработки Snoop Project: на октябрь 2023г/3,5года.

Отзывы о ПО Snoop Project.

История звёзд.

Stargazers over time