Как использовать Shodan для поиска уязвимых устройств в интернете

Как использовать Shodan для поиска уязвимых устройств в интернете

Представьте, что вы можете заглянуть во все уголки интернета и увидеть миллионы подключенных устройств — от веб-камер в спальнях до промышленных систем управления электростанциями. Звучит как сценарий фантастического фильма? Добро пожаловать в реальность под названием Shodan — поисковик, который часто называют «самым опасным поисковиком в интернете».

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

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

Что такое Shodan и почему он так важен

Shodan — это не обычная поисковая система типа Google или Яндекс. В то время как обычные поисковики индексируют контент веб-страниц, Shodan сканирует весь интернет в поисках устройств и сервисов, подключенных к глобальной сети. Он индексирует всё: от веб-серверов и маршрутизаторов до умных холодильников и промышленных систем управления.

По сути, Shodan — это Google для устройств интернета вещей (IoT). Но в отличие от Google, который скажет вам, на каких сайтах есть информация о пицце, Shodan покажет вам, какие устройства в интернете используют устаревшие версии ПО или имеют известные уязвимости в системе безопасности.

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

Однако с большой силой приходит большая ответственность. Shodan открывает доступ к информации, которая в неправильных руках может использоваться для злонамеренных целей. Поэтому, прежде чем мы погрузимся в технические детали, давайте поговорим об этической стороне вопроса.

Этические и правовые аспекты использования Shodan

Когда я впервые рассказываю студентам о возможностях Shodan, в аудитории всегда повисает напряженная тишина. «Разве это законно?» — обычно первый вопрос, который задают. Ответ не так прост, как хотелось бы.

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

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

В разных странах законы о компьютерных преступлениях различаются. В России, например, несанкционированный доступ к компьютерной информации является преступлением по статье 272 УК РФ. В США действует CFAA (Computer Fraud and Abuse Act), который также запрещает несанкционированный доступ.

Помните: этичное использование Shodan — это когда вы проверяете собственные системы или проводите исследования с правильными разрешениями.

Начало работы с Shodan: регистрация и базовый интерфейс

Теперь, когда мы разобрались с этической стороной вопроса, давайте приступим к практической части. Первым шагом будет создание учетной записи на Shodan.

Посетите официальный сайт www.shodan.io и нажмите на кнопку регистрации. Базовая учетная запись бесплатна и предоставляет ограниченное количество поисковых запросов (обычно около 10-20 в месяц). Если вы серьезно занимаетесь безопасностью, имеет смысл рассмотреть платную подписку, которая даёт доступ к расширенным функциям и большему количеству запросов.

После регистрации вы увидите главную страницу с поисковой строкой, очень похожей на Google. Но не дайте этому простому интерфейсу ввести вас в заблуждение — за ним скрывается мощный инструмент с богатыми возможностями поиска.

На главной странице вы также увидите разделы:

  • Explore — здесь собраны популярные запросы и интересные находки сообщества
  • Maps — визуализирует результаты поиска на карте мира
  • Images — отображает визуальные снимки с уязвимых устройств (часто скриншоты с веб-интерфейсов)
  • Dashboard — персональная панель, где вы можете отслеживать свои поиски и настройки

Поистине удивительно, насколько простым может быть интерфейс для такого сложного и мощного инструмента. В этом Shodan напоминает мне айсберг — на поверхности видна лишь малая часть его возможностей.

Базовые техники поиска в Shodan

Теперь самое интересное — как же на практике искать уязвимые устройства? Начнем с базовых поисковых запросов. В Shodan вы можете искать устройства по различным параметрам:

Поиск по типу устройства или сервиса

Один из самых простых способов начать — это поиск по определенному типу устройств или сервисов:

  • webcam — найдет веб-камеры, доступные из интернета
  • apache — покажет серверы, работающие на Apache
  • nginx — найдет серверы с Nginx
  • mysql — базы данных MySQL, доступные извне
  • ftp — FTP-серверы

Например, простой запрос webcam может выдать тысячи результатов — и это только начало кроличьей норы. Я помню, как однажды нашел целую сеть промышленных камер одного завода, доступных без какой-либо аутентификации. Конечно, я немедленно связался с их ИТ-отделом.

Поиск по географическому расположению

Часто бывает полезно ограничить поиск определенной страной или городом:

  • country:RU — устройства, расположенные в России
  • city:"Saint Petersburg" — устройства в Санкт-Петербурге
  • geo:"59.93, 30.30" — устройства вблизи указанных координат

Комбинируя эти параметры, вы можете, например, найти все MySQL-серверы в Москве с помощью запроса mysql country:RU city:Moscow.

Поиск по организации и провайдеру

Вы также можете искать устройства, принадлежащие определенной организации:

  • org:"Yandex" — устройства, принадлежащие Яндексу
  • net:"195.20.0.0/16" — устройства в указанной подсети
  • asn:AS12345 — устройства в определенной автономной системе

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

Продвинутые фильтры и операторы поиска

Как только вы освоите базовые запросы, пора переходить к более сложным фильтрам. Именно здесь раскрывается настоящая мощь Shodan.

Поиск уязвимых систем

Shodan позволяет искать уязвимые системы по известным проблемам безопасности:

  • vuln:CVE-2021-44228 — найдет системы, уязвимые к Log4Shell
  • ssl:poodle — системы, уязвимые к атаке POODLE на SSL
  • has_vuln:true — любые устройства с известными уязвимостями

Важно отметить, что Shodan не проводит активное тестирование на уязвимости — он просто идентифицирует системы, которые, судя по их баннерам и характеристикам, могут быть уязвимы.

Поиск по версиям программного обеспечения

Устаревшие версии ПО часто содержат известные уязвимости:

  • apache version:"2.4.49" — Apache версии 2.4.49 (с известной уязвимостью)
  • nginx version:"1.16" — Nginx версии 1.16
  • product:MySQL version:"5.5" — MySQL версии 5.5

Когда я провожу тренинги по кибербезопасности, я часто демонстрирую, как много устройств до сих пор работают на версиях ПО 5-10-летней давности. Это всегда вызывает нервный смех в аудитории — особенно среди системных администраторов.

Логические операторы и комбинации запросов

Для создания более точных запросов используйте логические операторы:

  • AND — для объединения условий (все условия должны выполняться)
  • OR — любое из условий должно выполняться
  • - — исключение (минус перед термином)

Например, запрос apache country:RU -product:"Apache httpd" найдет устройства в России, где упоминается Apache, но не являющиеся веб-серверами Apache httpd.

Особенно мощным становится комбинирование поиска уязвимостей с географическим таргетингом. Запрос vuln:CVE-2021-44228 country:RU org:"SomeCompany" может быстро выявить уязвимые системы в конкретной организации — это именно то, что делают как этичные исследователи, так и злоумышленники.

Понимание результатов поиска

Когда вы выполняете поиск в Shodan, результаты могут сначала показаться сложными для интерпретации. Давайте разберемся, что означают различные элементы в результатах поиска.

Анатомия результата поиска

Каждый результат содержит набор ключевой информации:

  • IP-адрес и порт — уникальный идентификатор устройства в интернете
  • Хостнейм — если доступен
  • Географическое расположение — страна и город
  • Организация — кому принадлежит IP-адрес
  • Баннер — текстовая информация, которую отправляет сервис при подключении
  • Открытые порты — какие сервисы доступны
  • Дата сканирования — когда Shodan последний раз проверял этот IP

Наиболее ценная информация обычно содержится в баннере — это может быть версия программного обеспечения, конфигурационная информация или даже данные аутентификации.

Что можно узнать из баннера?

Баннеры — это настоящая золотая жила информации для исследователя безопасности. Например:

  • Баннер веб-сервера может раскрыть не только его тип и версию, но и установленные модули, и даже операционную систему.
  • Баннер SSH может показать версию OpenSSH, доступные методы аутентификации и иногда даже уровень патчей.
  • Баннер FTP может содержать приветственное сообщение, которое администраторы забывают изменить, и оно может раскрыть внутреннюю информацию о компании.

Я однажды нашел промышленный контроллер, чей баннер услужливо сообщал, что он используется для управления водоочистной станцией, и даже указывал точное географическое расположение. Такая утечка информации может быть критически опасной.

Оценка безопасности найденного устройства

Как понять, представляет ли найденное устройство реальную угрозу безопасности? Вот несколько признаков потенциально уязвимого устройства:

  • Устаревшая версия программного обеспечения
  • Открытые порты администрирования (22, 23, 3389)
  • Отсутствие требования аутентификации
  • Использование стандартных или слабых учетных данных
  • Известные уязвимости, связанные с обнаруженным ПО

Помните, что Shodan просто показывает, что устройство доступно и какую информацию о себе оно раскрывает. Определение реальной уязвимости требует дополнительного анализа — и должно проводиться только на системах, которые вы имеете право тестировать.

Практическое применение Shodan для оценки безопасности

Теперь, когда мы разобрались с теорией, давайте посмотрим на практические сценарии использования Shodan для законных целей безопасности.

Аудит внешнего периметра организации

Если вы специалист по безопасности, Shodan может стать вашим ежедневным инструментом для мониторинга внешнего периметра вашей организации:

  1. Определите диапазоны IP-адресов вашей организации (обычно из документации провайдера или whois-записей).
  2. Используйте запрос типа net:195.20.0.0/16 для проверки всех устройств в этой подсети.
  3. Изучите результаты на предмет нежелательно открытых портов или уязвимых сервисов.
  4. Настройте оповещения в Shodan для мониторинга изменений в вашем внешнем периметре.

Такой аудит часто выявляет удивительные находки — от забытых тестовых серверов до неавторизованных устройств, подключенных сотрудниками.

Исследование уязвимостей в промышленных системах

Промышленные системы управления (ICS) и SCADA-системы всё чаще подключаются к интернету, создавая серьезные риски безопасности:

  • tag:scada — находит системы SCADA
  • port:502 — стандартный порт Modbus, используемый в промышленных системах
  • product:"Siemens S7" — находит ПЛК Siemens

Исследователи безопасности используют эти запросы для выявления тенденций в безопасности промышленного интернета вещей и предупреждения о потенциальных рисках.

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

Обнаружение устройств с заводскими настройками

Многие устройства поставляются с известными стандартными учетными данными, которые пользователи не меняют:

  • default password — часто находит устройства с сообщениями о стандартных паролях
  • html:"default password" — находит веб-интерфейсы, упоминающие стандартные пароли

Для производителей устройств и исследователей безопасности это ценная информация о том, насколько широко распространена проблема использования стандартных учетных данных.

Защита собственных устройств от обнаружения Shodan

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

Минимизация цифрового следа

Первый шаг к безопасности — уменьшение вашего цифрового следа в интернете:

  • Инвентаризация внешних IP-адресов. Знайте, какие из ваших устройств видны из интернета.
  • Ограничение информации в баннерах. Настройте серверы так, чтобы они не раскрывали подробную информацию о версиях и конфигурации.
  • Использование файрволов и фильтрация портов. Ограничьте доступ к устройствам только необходимыми портами и из доверенных источников.

Один из самых неожиданных способов утечки информации, который я встречал — это подробные сообщения об ошибках. Администраторы часто настраивают детальные сообщения об ошибках, которые раскрывают внутреннюю структуру систем, версии ПО и даже пути к файлам.

Безопасная конфигурация сетевых устройств

Для сетевых устройств особенно важна правильная настройка:

  1. Измените стандартные пароли и имена пользователей на всех устройствах.
  2. Обновите прошивки до последних версий.
  3. Отключите ненужные сервисы и протоколы.
  4. Используйте VPN для удаленного доступа вместо открытия прямого доступа из интернета.
  5. Настройте журналирование и мониторинг попыток доступа.

Как метко заметил один из моих коллег: «Безопасность сети похожа на оборону замка — недостаточно иметь прочные стены, если вы оставляете подъемный мост опущенным».

Регулярный аудит безопасности

Используйте Shodan для проверки собственной инфраструктуры:

  • Еженедельно проверяйте свои IP-диапазоны на предмет нежелательно доступных устройств.
  • Настройте оповещения Shodan для уведомления об изменениях в вашей инфраструктуре.
  • Проводите периодический внешний пентест для выявления проблем, которые могли быть пропущены.

В индустрии информационной безопасности есть поговорка: «Вы либо нанимаете хакера, либо становитесь жертвой хакера». Регулярный аудит — это способ самостоятельно найти проблемы до того, как их найдет кто-то другой.

Альтернативы и дополнения к Shodan

Shodan — мощный инструмент, но он не единственный в своем роде. Вот несколько альтернатив и дополнительных инструментов, которые могут расширить ваши возможности по обнаружению уязвимостей:

Другие поисковые системы для устройств

  • Censys — похож на Shodan, но иногда находит устройства, которые пропускает Shodan
  • ZoomEye — китайский аналог Shodan с хорошим покрытием азиатского региона
  • FOFA — еще одна альтернатива с фокусом на азиатский регион

Интересно сравнивать результаты разных поисковиков — иногда они обнаруживают совершенно разные устройства в одних и тех же сетях из-за различий в методологии сканирования.

Специализированные инструменты для пентеста

Для более глубокого анализа безопасности часто используются специализированные инструменты:

  • Nmap — классический инструмент для сканирования портов и обнаружения сервисов
  • MASSCAN — сверхбыстрый сканер портов
  • Nmap NSE scripts — расширения для Nmap, обнаруживающие уязвимости

В отличие от Shodan, который показывает уже собранные данные, эти инструменты проводят активное сканирование. Важно помнить, что использование их против систем без разрешения может быть незаконным.

Комбинирование инструментов для максимальной эффективности

Наиболее эффективный подход — комбинирование нескольких инструментов:

  1. Используйте Shodan для первоначального обнаружения потенциально уязвимых устройств.
  2. Примените Censys для проверки и дополнения результатов Shodan.
  3. Для уже обнаруженных и разрешенных для тестирования устройств используйте Nmap для более детального анализа.
  4. Документируйте результаты и создавайте планы по устранению уязвимостей.

Помню случай, когда клиент был уверен, что его сеть полностью защищена — Shodan не показывал никаких открытых портов. Но Censys обнаружил целый ряд устройств на альтернативных IP-адресах, о которых клиент даже не подозревал. Это еще раз подтверждает важность использования нескольких инструментов.

Заключение: баланс между знанием и ответственностью

Мы прошли долгий путь от простого знакомства с Shodan до понимания его возможностей для поиска уязвимых устройств. Теперь вы знаете, как использовать этот инструмент для законных целей безопасности и как защитить собственную инфраструктуру от обнаружения.

Shodan часто называют «самым опасным поисковиком в интернете», но я предпочитаю думать о нем как о «зеркале, отражающем состояние безопасности в интернете». Он не создает уязвимости — он лишь делает видимыми те, которые уже существуют.

В мире кибербезопасности информация — это сила. И как любая сила, она может быть использована как во благо, так и во вред. Вот почему так важно подходить к использованию Shodan с чувством ответственности и этического долга.

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

А вы когда-нибудь использовали Shodan для проверки безопасности своей сети? Какие интересные находки вам встречались? Делитесь в комментариях!

Shodan кибербезопасность уязвимые устройства поиск IoT безопасность сети пентест защита инфраструктуры этичный хакинг интернет вещей сетевая безопасность
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.

Хочешь поговорить с хакерами, профессорами и разработчиками не в чатике, а глаза в глаза?

Приезжай на Positive Hack Days Fest* 22–24 мая в Москве — здесь кибербез выходит в офлайн.

*Фест. Реклама. АО «Позитив Текнолоджиз», ИНН 7718668887


Юрий Кочетов

Здесь я делюсь своими не самыми полезными, но крайне забавными мыслями о том, как устроен этот мир. Если вы устали от скучных советов и правильных решений, то вам точно сюда.