
пассивный OSINT-инструментарий на python — имена пользователей, email, домены, ip, телефоны, хеши. без ключей, без логинов.
Пассивный OSINT-инструментарий на Python. Без API-ключей, без аккаунтов, без логирования где-либо. Направьте его на никнейм, email, домен, IP, номер телефона или хеш — и он копается в том, что уже находится в открытом доступе.

Шесть модулей, все читают публичные эндпоинты:
| Модуль | Что вы получаете |
|---|---|
username | прогоняет никнейм по ~700 сайтам (датасет WhatsMyName), с обновлением в реальном времени по мере поступления совпадений |
email | синтаксис, MX, проверка на одноразовый адрес, gravatar, затем часть до @ как username |
domain | A/AAAA/MX/NS/TXT/CNAME, http-статус и заголовок, поддомены из certificate transparency, whois |
ip | гео + ASN, обратный dns, опциональное сканирование распространённых портов |
phone | валидность, оператор, регион, тип линии, часовой пояс |
hash | определение длины/набора символов |
scan | быстрый TCP-скан портов с захватом баннеров на базе ядра на C++ |
Здесь ничто не касается ничего приватного. Всё это DNS, WHOIS, публичные эндпоинты профилей и логи сертификатов.
Прогон по username работает на data/wmn-data.json — датасете сообщества
WhatsMyName, ~700 сайтов,
каждый с правилом проверки (код статуса плюс строка, которая должна, и не
должна, присутствовать). Замените на более свежую копию в любой момент,
просто положив её поверх файла; инструмент читает его при запуске. Если его
нет, используется небольшой встроенный список.
Сузьте прогон с помощью --cat:
python higernes.py username vqkro --cat social
python higernes.py username vqkro --cat gaming
Запустите без --cat — и он пройдётся по всему.
Сканер портов слишком медленный на Python, поэтому основная работа лежит в
core/hcore.cpp — небольшом автономном бинарнике, который выполняет
многопоточные connect-сканы с захватом баннеров и разрешением имён хостов.
higernes.py ищет его рядом с собой (или в core/, или в PATH) и
вызывает его; если его нет, скан ip --ports тихо откатывается к более
медленной чисто-Python версии.
Соберите его (нужно только если вы запускаете из исходников и хотите быстрый путь):
# windows (mingw g++)
g++ -O2 -std=c++17 -static -o core/hcore.exe core/hcore.cpp -lws2_32
# linux / macOS
g++ -O2 -std=c++17 -o core/hcore core/hcore.cpp -pthread
Запустите его напрямую, если хотите:
hcore dns github.com
hcore ports example.com --banners
hcore ports example.com --all --threads 1024
Готовый .exe на странице Releases уже содержит встроенное ядро.
Требуется Python 3.9 или новее.
Любая ОС
pip install -r requirements.txt
Это подтянет rich, requests, dnspython и aiohttp. phonenumbers
там тоже есть, но он нужен только модулю phone — уберите его из файла, и
остальное продолжит работать. Без aiohttp прогон по username откатывается
к потокам, что гораздо медленнее (десятки секунд против сотен).
Windows (PowerShell, если python ещё не в PATH)
winget install --id Python.Python.3.13 -e
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
pip install -r requirements.txt
python higernes.py
Linux / macOS
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
python3 -m pip install -r requirements.txt
python3 higernes.py
FreeBSD
pkg install -y python3
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
python3 -m pip install -r requirements.txt
Если pip жалуется на externally-managed environment, либо используйте venv:
python3 -m venv .venv && . .venv/bin/activate && pip install -r requirements.txt
либо передайте --break-system-packages.
Запустите его без аргументов — и получите меню. Или сразу переходите к модулю:
python higernes.py username vqkro
python higernes.py username vqkro --cat coding
python higernes.py email [email protected]
python higernes.py domain example.com
python higernes.py ip 1.1.1.1 --ports
python higernes.py phone +14155552671
python higernes.py hash 5f4dcc3b5aa765d61d8327deb882cf99
python higernes.py scan example.com
python higernes.py scan example.com --all
Экран — это сплошные живые спиннеры и цветные таблицы; логотип рисуется сам при запуске.
dnspython и requests настоятельно рекомендуются. Без dnspython
разрешается только A-запись (с использованием stdlib), а все остальные типы
записей пропускаются.Нет Python на целевой машине? Упакуйте его:
pip install pyinstaller
pyinstaller --onefile --name higernes --console higernes.py
# -> dist/higernes.exe
Именно так создаётся бинарник на странице Releases. Больше ничего настраивать не нужно.
MIT. См. LICENSE.