OSINT для защиты: эффективный поиск скрытой инфраструктуры через Shodan

📋 Кратко

Shodan — мощный инструмент OSINT, который позволяет увидеть вашу инфраструктуру глазами злоумышленника. В статье разбираем, как с помощью поисковых запросов обнаружить забытые dev-серверы, открытые базы данных и панели управления. Даём чек-лист для аудита и рекомендации по защите от несанкционированного обнаружения.

⏱ 4 минуты чтениясложность
Аналитик исследует цифровой периметр через голографический интерфейс
Аналитик исследует цифровой периметр через голографический интерфейс

🔍 Что такое OSINT и почему он нужен защитникам

OSINT (Open Source Intelligence) — разведка по открытым источникам. В контексте кибербезопасности это сбор информации о компании из публично доступных данных: поисковые системы, социальные сети, сертификаты TLS, DNS-записи и, конечно, Shodan. Многие команды ИБ используют OSINT только для внешнего пентеста или расследования инцидентов. Но на самом деле это незаменимый инструмент для постоянного аудита собственного периметра.

Всевидящее око Shodan сканирует цифровой мир в поисках устройств
Всевидящее око Shodan сканирует цифровой мир в поисках устройств

Злоумышленники активно применяют Shodan для поиска уязвимых устройств и забытых сервисов. Если вы не смотрите на свою инфраструктуру через Shodan, это делает кто-то другой. Разница лишь в целях: вы ищете, чтобы закрыть дыры, а атакующий — чтобы проникнуть внутрь.

Ключевая мысль: OSINT — это не хакерский инструмент, а метод защиты. Shodan позволяет увидеть, какие активы компании доступны из интернета, даже если вы считали их скрытыми.

🛠️ Как Shodan находит «скрытое»

Shodan — это поисковая система для устройств, подключённых к интернету. В отличие от Google, который индексирует веб-страницы, Shodan сканирует IP-адреса и порты, собирая баннеры сервисов — ответы, которые устройства отправляют при подключении. Даже если сервер не отвечает на HTTP-запросы, он может быть виден через другие протоколы: SSH, FTP, RDP, Telnet, Modbus, SNMP.

Поисковые запросы Shodan раскрывают скрытые активы организации
Поисковые запросы Shodan раскрывают скрытые активы организации

«Скрытая» инфраструктура — это не та, что спрятана за VPN или недоступна извне. Это активы, которые компания ошибочно считает недоступными, но они всё равно отвечают на запросы из интернета. Например, тестовый Jenkins на 8080 порту, панель управления PostgreSQL на 5432 или веб-камера с дефолтным паролем. Shodan находит их автоматически, и любой пользователь может увидеть эти данные.

📊 Примеры поисковых запросов для аудита

Shodan поддерживает фильтры: страна, город, организация, порт, протокол, продукт. Вот несколько поисковых запросов (dorks), которые помогут обнаружить скрытые активы вашей компании:

Забытые серверы и базы данных без защиты ждут своего взломщика
Забытые серверы и базы данных без защиты ждут своего взломщика
  • org:"Название компании" — все устройства, ассоциированные с вашей организацией.
  • port:8080 org:"Название компании" — серверы с открытым портом 8080 (часто Jenkins, Tomcat, панели управления).
  • product:GitLab org:"Название компании" — инсталляции GitLab, доступные извне.
  • product:PostgreSQL port:5432 — открытые базы данных PostgreSQL.
  • "default password" org:"Название компании" — устройства с дефолтными учётными данными.
  • http.title:"Dashboard" org:"Название компании" — панели администрирования.

Важно: Используйте эти запросы только для аудита собственной инфраструктуры или с явного разрешения владельца. Несанкционированный доступ к чужим системам незаконен.

🎯 Типичные «скрытые» активы: от Jenkins до баз данных

Чаще всего через Shodan обнаруживаются:

Фаервол и VPN создают непроницаемый цифровой щит вокруг инфраструктуры
Фаервол и VPN создают непроницаемый цифровой щит вокруг инфраструктуры
  • Dev-серверы и CI/CD: Jenkins, GitLab, TeamCity, Nexus — часто выставляются наружу для удобства разработчиков, но без должной аутентификации.
  • Базы данных: MongoDB, Elasticsearch, PostgreSQL, MySQL — забытые инстансы, которые не должны быть доступны из интернета.
  • Панели управления: Webmin, cPanel, phpMyAdmin, маршрутизаторы и коммутаторы с веб-интерфейсом.
  • IoT-устройства: IP-камеры, принтеры, системы умного дома, промышленные контроллеры (PLC).
  • Устаревшие сервисы: Telnet, FTP, SMB — протоколы, которые давно пора заменить.

Каждый такой актив — потенциальная точка входа. Злоумышленнику не нужно взламывать корпоративный VPN, если он может зайти напрямую на Jenkins с дефолтным паролем.

⚠️ Почему «скрытая» инфраструктура — не миф, а реальная угроза

Многие компании уверены, что их внутренние сервисы недоступны из интернета. Однако на практике:

Центр мониторинга отслеживает все активы компании в реальном времени
Центр мониторинга отслеживает все активы компании в реальном времени
  • Разработчики открывают порты для тестирования и забывают их закрыть.
  • Администраторы настраивают временные доступы, которые становятся постоянными.
  • Облачные инстансы (AWS, Azure) получают публичные IP по умолчанию.
  • Старое оборудование остаётся в сети после миграции.

Shodan сканирует весь интернет каждые несколько недель. Если ваш актив хотя бы раз ответил на запрос, он уже в базе. И любой желающий может найти его через простой поиск. По данным отчётов по безопасности, около 30% компаний имеют хотя бы один критический актив, доступный из интернета без аутентификации.

🛡️ Методы защиты от обнаружения через Shodan

Полностью скрыть устройство от Shodan невозможно — если оно доступно из интернета, рано или поздно его просканируют. Но можно минимизировать риски:

  • Используйте фаерволы: разрешайте доступ только с доверенных IP-адресов (например, через VPN).
  • Настройте аутентификацию: даже если порт открыт, без пароля злоумышленник не пройдёт.
  • Меняйте стандартные порты: перенос SSH на 2222 не защитит от Shodan, но снизит количество автоматических атак.
  • Отключайте ненужные сервисы: если сервис не используется, закройте порт.
  • Используйте VPN или Zero Trust: все внутренние ресурсы должны быть доступны только через авторизованные каналы.
  • Мониторьте Shodan: регулярно проверяйте, какие активы вашей компании видны в поиске.

Совет: Shodan позволяет подписаться на уведомления при появлении новых устройств вашей организации. Настройте мониторинг — это займёт 10 минут, но может предотвратить серьёзную утечку.

🔬 Как использовать Shodan для постоянного мониторинга

Shodan предоставляет API и инструмент Shodan Monitor (ранее Shodan Alert). Вы можете:

  • Настроить оповещения на email при обнаружении новых открытых портов или сервисов, связанных с вашей организацией.
  • Интегрировать Shodan с SIEM-системами для автоматической корреляции.
  • Проводить ежемесячные аудиты с помощью скриптов на Python (библиотека shodan).

Пример простого скрипта для проверки:

import shodan
api = shodan.Shodan('YOUR_API_KEY')
try:
    results = api.search('org:"Название компании"')
    for result in results['matches']:
        print(result['ip_str'], result['port'], result['product'])
except shodan.APIError as e:
    print('Error:', e)

Такой скрипт можно запускать по расписанию и сравнивать результаты с предыдущими. Если появился новый порт — это повод для проверки.

✅ Чек-лист: что проверить в своей инфраструктуре уже сегодня

  • 🔹 Найдите все IP-адреса своей организации (через whois, DNS, SSL-сертификаты).
  • 🔹 Выполните поиск в Shodan: org:"Ваша компания".
  • 🔹 Проверьте открытые порты: 22, 23, 80, 443, 8080, 8443, 3306, 5432, 27017, 6379, 9200.
  • 🔹 Обратите внимание на сервисы с дефолтными страницами входа.
  • 🔹 Убедитесь, что все базы данных и панели управления закрыты фаерволом.
  • 🔹 Настройте Shodan Monitor для уведомлений.
  • 🔹 Проведите повторный аудит через месяц.

Помните: безопасность периметра — это непрерывный процесс. Shodan — лишь один из инструментов, но он даёт реалистичную картину того, что видят злоумышленники. Используйте его для защиты, а не для атаки.

📚 Читайте также

📖 Термины

OWASP · XDR · Автоматизированное сканирование

🔗 Источники