holehe, sherlock-project, exiftool, curl, API-ключ Have I Been Pwned (HIBP), Watson (ваша сборка), пустой каталог ~/osint-audit
python3 --version (нужен 3.10+) и pip3 --version.exiftool — читает метаданные файлов: sudo apt install libimage-exiftool-perl (Debian/Ubuntu) или brew install exiftool (macOS).curl — для запросов к API HIBP.watson --help. Если в вашей сборке нет нужной подкоманды — сверьтесь с документацией, а не подставляйте флаги из чужих статей.mkdir -p ~/osint-audit/reports && cd ~/osint-audit
ls -la
Пример: после ls -la вы увидите каталог reports с правами вашего пользователя. Все артефакты ниже складываются туда, чтобы аудит можно было повторить через месяц и сравнить результат.
Чек-лист перед стартом:
watson --help~/osint-audit/reportsЧто сделать: проверить, на каких сайтах зарегистрирована ваша почта и где встречается ваш никнейм.
Зачем: регистрация на старом форуме — это публичный профиль, часто с городом и датой рождения. Именно с таких аккаунтов начинается деанонимизация: OSINT (сбор данных из открытых источников) идёт от известного идентификатора к неизвестным.
pip3 install --user holehe sherlock-project
holehe <ваша-почта> | tee reports/holehe_<ваша-почта>.txt
Пример: в выводе holehe напротив каждого сервиса стоит [+] (аккаунт есть) или [-] (нет). Флаг --only-used оставляет только найденные — сверьтесь с holehe --help, он есть не во всех версиях.
sherlock <ваш-никнейм> --timeout 15 | tee reports/sherlock_<ваш-никнейм>.txt
Почему это работает: оба инструмента не «взламывают» — они отправляют запрос на публичную страницу восстановления пароля или на профиль по адресу https://<сайт>/<никнейм> и смотрят код ответа. Ничего скрытого они не читают.
Как проверить: grep -c "^\[+\]" reports/holehe_<ваша-почта>.txt — команда должна вернуть число больше нуля. Если вернула 0, либо почта нигде не засвечена, либо запросы блокируются — переходите к разделу о проблемах.

Что сделать: собрать три слоя данных — попадания в утечки, публичные файлы на ваших доменах и EXIF-метаданные (служебная информация внутри фотофайла: модель камеры, дата, иногда GPS) — и свести их в один прогон Watson.
Зачем: утечка даёт связку «почта + пароль», поиск по домену показывает документы, которые вы не планировали публиковать, а метаданные выдают геолокацию съёмки. По отдельности это мелочи, вместе — готовый профиль. Логика защиты таких связок разобрана в гайде «Безопасность ИИ-агентов: как защитить данные и избежать утечек».
export HIBP_KEY="<ваш-ключ>"
curl -s -H "hibp-api-key: $HIBP_KEY" -H "user-agent: osint-self-audit" \
"https://haveibeenpwned.com/api/v3/breachedaccount/<ваша-почта>?truncateResponse=false" \
| tee reports/hibp_<ваша-почта>.json
Пример: если почта найдена, в reports/hibp_<ваша-почта>.json придёт JSON-массив с полями Name (имя базы) и DataClasses (какие типы данных утекли: Emails, Passwords, IP addresses). Если не найдена — тело ответа пустое, а код ответа 404.
Поисковые запросы по домену (выполняются в браузере, синтаксис операторов — стандартный):
site:<ваш-домен> filetype:pdf
site:<ваш-домен> intitle:"index of"
"<ваша-фамилия>" site:vk.com
Почему это работает: оператор site: ограничивает выдачу одним доменом, filetype: — типом файла, intitle: ищет строку в заголовке страницы. Так находятся документы и открытые листинги каталогов, которые видны поисковику.
exiftool photo.jpg | grep -Ei "author|creator|artist|gps|software|e-mail"
watson --help > reports/watson_help.txt
Пример: exiftool может вернуть строку вида GPS Position : 55 deg 45' 21.00" N, 37 deg 37' 04.00" E — это координаты съёмки. Дальше прогоняйте через Watson только те подкоманды, которые реально перечислены в reports/watson_help.txt:
# шаблон: подставьте подкоманду и флаги из reports/watson_help.txt
watson <подкоманда> --target <ваш-домен> | tee reports/watson_domain.txt
Как проверить: wc -l reports/watson_domain.txt — число строк больше нуля, и grep -i "error" reports/watson_domain.txt не должен ничего находить.

Что сделать: свести находки в таблицу, отметить каждую как «удалить / скрыть / принять» и сохранить отчёт.
Зачем: без таблицы аудит превращается в стопку файлов, которую никто не откроет второй раз. Таблица — это план действий: у каждой строки есть владелец (вы) и срок.
cd ~/osint-audit
for f in reports/*.txt reports/*.json; do echo "== $f"; wc -l < "$f"; done
grep -rl "GPS Position" reports/ || echo "метаданных с GPS не найдено"
Пример вывода:
== reports/holehe_user@example.com.txt
27
== reports/sherlock_user123.txt
112
== reports/hibp_user@example.com.json
14
Как проверить, что получилось: в каталоге reports/ лежит минимум четыре файла (holehe, sherlock, HIBP, Watson), и вы можете назвать по каждому конкретное действие. Успех — не «файлы есть», а закрытые пункты: удалён старый аккаунт, снят EXIF перед публикацией, включена двухфакторная аутентификация там, где нашлась регистрация. Если планируете складывать найденные файлы в датасет для обучения — предварительно пройдите чистку и разметку данных, иначе метаданные уедут в модель вместе с файлами.
Проблема. holehe установился, но команда не находится
ModuleNotFoundError: No module named 'holehe'pip3 install --user поставил пакет в пользовательский каталог, которого нет в PATH/sys.path — типично при нескольких версиях Python.python3 -m holehe <ваша-почта> --only-used
Проблема. HIBP отвечает отказом
{"statusCode":401,"message":"Access denied due to missing hibp-api-key."}HIBP_KEY пустая (например, export выполнен в другой вкладке терминала) или ключ не активирован.echo ${HIBP_KEY:0:4} — должно вывести первые 4 символа ключа, а не пустую строку; затем повторите curl в том же окне терминала. Лимиты и требования к ключу — сверьтесь с документацией HIBP.Проблема. Sherlock обрывает прогон на середине
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='...', port=443): Max retries exceededsherlock <ваш-никнейм> --timeout 30 --site GitHub --site Reddit
Вы собрали четыре независимых среза личного цифрового следа и превратили их в список конкретных действий. Следующий шаг — повторить прогон через 30 дней по тем же командам и сравнить wc -l по файлам в reports/: расхождение покажет, что закрылось, а что появилось нового.
Как проверить, какие данные обо мне есть в открытом доступе бесплатно?
Начните с holehe по своей почте и sherlock по никнейму — оба инструмента бесплатны и работают по публичным страницам. Дальше добавьте поиск по домену через site: и проверку метаданных файлов через exiftool.
Можно ли проверить почту на утечки без платного ключа?
Запрос к API HIBP требует ключа; условия и лимиты бесплатного доступа — сверьтесь с документацией сервиса. Пока ключа нет, используйте поиск по названию своей почты в поисковике и проверку менеджером паролей, который сам сообщает о скомпрометированных записях.
Watson показывает не те подкоманды, что в статье. Почему?
Синтаксис зависит от сборки. Выполните watson --help, сохраните вывод в reports/watson_help.txt и используйте только те подкоманды, флаги и параметры, которые там перечислены; остальное сверьте с документацией.
Опасно ли запускать такие инструменты со своего рабочего компьютера?
Запросы идут на публичные страницы и содержат ваши собственные идентификаторы, поэтому запускайте аудит по своим данным, а не по чужим. Не сохраняйте найденные пароли в открытом виде в reports/ и не передавайте файлы отчёта третьим лицам.