В октябре 2024 года французский провайдер Free потерял данные почти 14 миллионов абонентов - номера телефонов, банковские реквизиты, всё как обычно (по данным Have I Been Pwned). Для OSINT-исследователя каждый утёкший номер - точка входа: оператор, регион, привязанные аккаунты, следы в поисковых системах. PhoneInfoga автоматизирует именно эту цепочку. Ниже - полная инструкция по установке на три платформы с разбором типичных ошибок, о которых русскоязычные гайды почему-то молчат.
PhoneInfoga - что это и где он нужен в OSINT-цепочке
PhoneInfoga - open-source сканер телефонных номеров на Go (автор - Raphael / sundowndev, лицензия GPLv3). Принимает номер в международном формате и собирает по нему всё, что доступно из открытых источников: страну, оператора, тип линии (мобильный, стационарный, VoIP), а затем генерирует Google-дорки для поиска следов в соцсетях и телефонных справочниках.В терминах MITRE ATT&CK PhoneInfoga закрывает несколько подтехник на этапе Reconnaissance:
- Поиск через поисковые системы - Search Engines (T1593.002, Reconnaissance)
- Обнаружение привязанных аккаунтов - Social Media (T1593.001, Reconnaissance)
- Извлечение данных из WHOIS и DNS - WHOIS (T1596.002), DNS/Passive DNS (T1596.001)
- Сбор email-адресов и имён, ассоциированных с номером - Email Addresses (T1589.002), Employee Names (T1589.003)
Критически важный момент, на котором спотыкаются многие: практически все русскоязычные руководства до сих пор ссылаются на старую Python-версию (
phoneinfoga.py с requirements.txt). Она давно заброшена. Актуальная ветка - v2.x, скомпилированный бинарник на Go. Видите в гайде pip install -r requirements.txt - закрывайте, инструкция протухла. Репозиторий github.com/sundowndev/phoneinfoga активно поддерживается (последний релиз - 2024, Docker-образ обновляется вместе с релизами).Требования к окружению
Перед установкой проверьте, что система соответствует минимальным условиям:- ОС: Linux (x86_64 / arm64), macOS (Intel / Apple Silicon), Windows 10/11 (x86_64). Полный список архитектур - на странице релизов GitHub
- RAM: от 512 МБ свободной памяти. PhoneInfoga - лёгкий бинарник, никаких GPU-зависимостей
- Сеть: строго online. Инструмент шлёт запросы к внешним API и поисковым системам, без интернета бесполезен
- Docker (опционально): Docker Engine 20.10+ или Docker Desktop для контейнерного развёртывания
- Для Android: Termux + пакет proot-distro (root-права не нужны)
- API-ключи (опционально): Numverify, Google CSE. Расширяют набор данных, но базовый скан работает и без них
Установка PhoneInfoga на Linux
Бинарный файл через скрипт
Самый быстрый способ на любом дистрибутиве с bash и curl. Скрипт из официальной документации PhoneInfoga сам определяет архитектуру и тянет нужный бинарник:
Bash:
bash <( curl -sSL https://raw.githubusercontent.com/sundowndev/phoneinfoga/master/support/scripts/install )
sudo install ./phoneinfoga /usr/local/bin/phoneinfoga
phoneinfoga version
echo "$(uname -s)_$(uname -m)" и сверьте результат с архивами на странице релизов. Флаг --help покажет параметры установки.Альтернатива скрипту - ручное скачивание: на
github.com/sundowndev/phoneinfoga/releases берёте архив под свою ОС, распаковываете и перемещаете бинарник в /usr/local/bin/.Homebrew (macOS и Linux)
Для пользователей Homebrew установка PhoneInfoga сводится кbrew install phoneinfoga. Формула официальная, обновляется синхронно с релизами в репозитории. После установки - phoneinfoga version для проверки.PhoneInfoga на Windows 10: два рабочих способа
Нативный бинарник
PhoneInfoga поддерживает Windows напрямую. Скомпилированный .exe, никакого Python, Go или зависимостей:- Откройте страницу релизов
github.com/sundowndev/phoneinfoga/releases - Скачайте архив с пометкой
Windows_x86_64 - Распакуйте
phoneinfoga.exeв удобную директорию, напримерC:\Tools\phoneinfoga\ - Откройте PowerShell в этой директории и выполните
.\phoneinfoga.exe version - Вывод номера версии - значит, работает
C:\Tools\phoneinfoga\ в системную переменную PATH через «Параметры системы» → «Переменные среды» → «Path» → «Изменить» → «Создать».Типичная засада: Windows Defender или сторонний антивирус (Kaspersky, Dr.Web) блокирует бинарник при первом запуске. Go-бинарники security-инструментов регулярно попадают под эвристику - это ожидаемое поведение, а не малварь. Решение: добавьте файл или директорию в исключения антивируса.
Через WSL2
Если вы работаете в Windows Subsystem for Linux, PhoneInfoga ставится внутри WSL-дистрибутива стандартным Linux-способом через curl-скрипт (описан выше). WSL2 имеет смысл в одном случае: когда рядом живут другие OSINT-утилиты (theHarvester, Sherlock, Recon-ng), заточенные под unix. Держать весь инструментарий в одной среде удобнее, чем прыгать между PowerShell и Bash.Docker-запуск PhoneInfoga
Docker - вариант для тех, кто не хочет засорять основную систему. Образ на Docker Hub:docker pull sundowndev/phoneinfoga:latest. Быстрая проверка: docker run --rm -it sundowndev/phoneinfoga version.Для постоянного использования с веб-интерфейсом удобнее docker-compose. Минимальный конфиг из официальной документации:
YAML:
version: '3.7'
services:
phoneinfoga:
container_name: phoneinfoga
restart: on-failure
image: sundowndev/phoneinfoga:latest
command:
- "serve"
ports:
- "80:5000"
docker-compose up -d веб-интерфейс доступен на http://localhost. Нужен только API без фронтенда - добавьте --no-client в секцию command. Для диагностики: docker logs -f phoneinfoga - весь вывод идёт в stdout.Бонус для Windows: тот же docker-compose файл без единого изменения работает в Docker Desktop. Пожалуй, самый безболезненный способ поднять PhoneInfoga на Windows - без скачивания бинарника и возни с PATH.
Тег
latest привязан к стабильным релизам. Хотите пощупать свежие изменения из master - используйте тег next, но для боевых задач я бы не рекомендовал.PhoneInfoga на Android через Termux
Официальной Android-сборки PhoneInfoga не существует. Но инструмент запускается через proot-distro в Termux (подтверждено в issue #573 на GitHub) - по сути, вы разворачиваете Linux-дистрибутив внутри Android и ставите PhoneInfoga обычным Linux-способом.Пошаговый процесс:
- Установите Termux из F-Droid (версия из Google Play устарела и не обновляется - не берите её)
- Обновите пакеты:
pkg update && pkg upgrade - Установите proot-distro:
pkg install proot-distro - Установите Ubuntu:
proot-distro install ubuntu - Войдите в дистрибутив:
proot-distro login ubuntu - Внутри Ubuntu:
apt update && apt install curl- это зависимость для скрипта установки - Запустите стандартный скрипт установки PhoneInfoga - тот же, что в разделе про Linux
serve доступен только локально на устройстве (для доступа извне потребуется проброс портов через SSH).Запуск PhoneInfoga web server
Командаphoneinfoga serve поднимает веб-интерфейс на порту 5000. Кастомный порт: phoneinfoga serve -p 8080. В браузере - http://localhost:5000.Веб-интерфейс - удобная обёртка над CLI: вводите номер в форму, получаете карточку с данными и ссылками на Google-дорки в один клик. Для автоматизации или интеграции в пайплайн лучше CLI:
phoneinfoga scan -n "+7XXXXXXXXXX" выдаёт данные в структурированном виде, пригодном для парсинга или перенаправления в файл.Первый скан: разведка по номеру телефона
Базовый скан:phoneinfoga scan -n "+7XXXXXXXXXX" - номер строго в формате E.164, с кодом страны и знаком +. Инструмент последовательно выполнит:- Валидацию формата номера
- Определение страны, оператора и типа линии (мобильный, стационарный, VoIP)
- Генерацию Google-дорков для обнаружения номера в открытых источниках
- Проверку через подключённые API (Numverify, Google CSE - если сконфигурированы через переменные окружения)
phoneinfoga scan -n "+7XXXXXXXXXX" > result.txt.Ограничения PhoneInfoga и когда инструмент не поможет
- Номера стран СНГ. Google-дорки и онлайн-справочники заточены под западный рынок. Для российских и казахстанских номеров основная ценность - определение оператора и региона. Привязки к соцсетям работают заметно хуже, чем для номеров США или ЕС
- Массовый перебор. Google быстро ловит автоматические запросы и бросает CAPTCHA. Для тысяч номеров нужны HLR-lookup API, а не PhoneInfoga
- Определение владельца. Инструмент не ломает операторские базы. Он собирает то, что уже засвечено в открытых источниках. Если номер нигде не наследил - результат будет минимальным
- Работа через Tor/VPN. Google блокирует практически все запросы с exit-нод Tor. Через VPN ситуация лучше, но капчи всё равно прилетают
- Удалённые данные. PhoneInfoga показывает то, что проиндексировано сейчас. Закрытые профили и очищенные страницы не обнаруживаются
Чем PhoneInfoga отличается от OSINT-аналогов
📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
PhoneInfoga - не замена Maltego или Recon-ng, а узкоспециализированный инструмент для одной задачи: быстро собрать всё доступное по номеру телефона. В рабочем процессе он стоит перед Maltego: прогнали номер - получили привязки - импортировали в граф для дальнейшего анализа связей.
Основная проблема начинающих OSINT-исследователей не в установке, а в ожиданиях. PhoneInfoga не выдаёт готовое досье по номеру - он собирает метаданные и генерирует поисковые запросы. Реальная ценность появляется при комбинировании: PhoneInfoga для номера, Sherlock для ника из найденного профиля, theHarvester для email из того же профиля. Каждый инструмент даёт вход для следующего.
Проблема русскоязычных гайдов глубже - они описывают запуск одной команды и ждут магии. OSINT работает как цепочка: дорки, которые генерирует PhoneInfoga, нужно открывать руками, проходить по результатам, собирать новые идентификаторы и прогонять через другие инструменты. Автоматизация заканчивается на стадии сбора - анализ и корреляция остаются на исследователе. Кто считает, что оператор и пара ссылок - это всё, тот остановился на первом шаге из десяти.
Ещё один момент, который редко обсуждают: Go-версия PhoneInfoga быстрее и стабильнее Python-предшественника, но потеряла возможность быстрой модификации. В Python-версии можно было открыть
social_medias.json и добавить свои ресурсы для поиска. В скомпилированном бинарнике такой кастомизации нет без пересборки из исходников. Для большинства задач некритично, но кто привык подтачивать инструменты под себя - имейте в виду. На HackerLab есть сценарии, где нужно собрать полную OSINT-цепочку от номера телефона до идентификации цели - и там сразу видно, где стандартного функционала одного инструмента не хватает.