459
1
0
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
Назад

Shodan, Censys, SpiderFoot. Краткий гайдлайн по оценке привлекательности организации для хакеров

Время чтения 4 минуты
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
459
1
0
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники

Всё больше российских компаний атакуется злоумышленниками. По данным аналитиков, каждое полугодие в течение полутора лет этот показатель растет не менее чем на 20%, причем привлекают хакеров не только крупные организации, но и небольшие. Стоимость атак на мелкие цели значительно ниже, навыки для успеха нужны не такие продвинутые, но почти не осталось тех, кто совсем неинтересен киберпреступникам.

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

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

Shodan, Censys, SpiderFoot. Краткий гайдлайн по оценке привлекательности организации для хакеров

Разведка из открытых источников

Одним из направлений проведения пентестов (тестов на проникновение для анализа защищенности) является анализ открытых источников, или OSINT (от англ. open source intelligence). Это исследование направлено на поиск и изучение информации об объекте на интернет-форумах, в СМИ, социальных сетях, открытых реестрах, сервисах whois и DNS, в иных специализированных сервисах, открытых тендерах и так далее.

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

Для злоумышленника практически любая информация может представлять интерес: записи DNS, принадлежащие компании IP-адреса, контакты владельцев и администраторов, связанные поддомены, email-адреса, файловые метаданные, голосовые записи сотрудников (а особенно руководства), социальные связи и многое-многое другое.

Но как, спросите вы, происходит процесс сбора такой информации? Сайтов в РФ десятки миллионов, а «белых» IP-адресов еще больше. Для этого используются специализированные утилиты, сервисы и программное обеспечение.

Email-грабберы

Так, существуют сервисы, которые предоставляют готовые связанные с доменом email-адреса. Например, hunter.io, AeroLeads, Voila Norbert, Skrapp, minelead.io и множество других. Они парсят email-адреса и сохраняют их в базах адресов, к которым предоставляют платный доступ. Обычно у подобных сервисов есть ограниченный демонстрационный доступ, который, однако, позволяет оценить, имеется ли в базах информация о вашей компании.

Существует также множество утилит для самостоятельного парсинга email, например theHarvester, emailharvester и другие.

Собранные адреса могут быть использованы при атаках с применением социальной инженерии (подделка адресов отправителя, максимально похожих на оригиналы, отправка сообщений конкретным сотрудникам, просьбы от «коллег» и так далее). 

Дорки

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

Пример использования Google Dorks Queries: поиск FTP-каталогов с фразой secret на странице

Применение дорков позволяет использовать возможности поисковых роботов («кравлеров») по максимуму: можно и email найти, и хранимые на веб-ресурсе файлы определенных форматов (а иногда и целые файлы конфигураций), а также пароли, ключи и иную чувствительную информацию, которая в них записана. И всё это без прямого взаимодействия с сайтом! 

Метаданные

Например, с помощью Google Dorks можно собрать файлы определенного формата с определенного сайта. Но зачем? Для анализа метаданных. Скорее всего, файлы, публикуемые на сайте, подготовлены сотрудниками компании на своих рабочих местах. И метаданные автоматически добавляются в создаваемые документы. Анализируя их, можно получить идентификаторы автора документа и того, кто его модифицировал, а также поля документа. Комментарии и пользовательские поля, макросы в документе могут содержать полезные комментарии разработчиков макроса, ссылки в тексте документа могут указать на названия внутренних серверов, используемые сервисы, метаданные вложенных объектов (например, изображений с указанием геопозиций) и так далее. 

Для автоматизации процесса сбора и анализа метаданных существуют специальные утилиты. Например, metagoofil позволяет автоматически скачивать необходимое количество файлов определенного формата с заданного сайта, а для автоматизации извлечения метаданных подойдет утилита exiftool

Shodan

Существуют и специализированные сервисы, которые в режиме 24/7 сканируют интернет в поисках подключенных устройств и собирают с них «баннеры» (сообщения от сервера, которые выполняют роль приветствия и (или) предоставляют некоторую информацию о версиях используемых служб и программных продуктов). Это могут быть серверы, маршрутизаторы, веб-камеры, банкоматы, умные холодильники, хранилища NAS, принтеры и любые другие устройства, подключенные к интернету. При этом сервис также может автоматически определять открытые порты, работающие службы и их версии, а также даже потенциальные уязвимости.

Использование сервиса платное, но есть и ограниченный демонстрационный бесплатный функционал.

Поиск информации также осуществляется с помощью специальных поисковых операторов, которые позволяют конкретизировать запрос по ряду параметров: например, поиск в определенном городе, поиск в определенной подсети, поиск по геолокации, поиск по имени хоста и IP-адресу, поиск по операционной системе или открытому порту и так далее.

Способы использования Shodan бесконечны. 

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

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

С помощью Shodan можно найти и веб-камеры без пароля. Для этого используем фильтр has_screenshot:true, который позволяет найти те из них, для которых доступны скриншоты (что может указывать на то, что они настроены без авторизации).

Мне удалось обнаружить 526 камер без пароля, в том числе 71 в России. При более тонкой настройке можно выявить гораздо большее количество таких устройств. А сколько их удастся найти тебе, читатель? 

Пример поиска веб-камер и регистраторов без пароля

Также Shodan предоставляет возможность поиска устройств и служб, имеющих известные уязвимости, включая зарегистрированные в базе данных CVE (Common Vulnerabilities and Exposures). Для этого применяем фильтр vuln.

Примеры:

  1. vuln:rce — поиск устройств, имеющих уязвимости, связанные с удаленным выполнением кода.
  2. vuln:heartbleed — поиск устройств, уязвимых к OpenSSL Heartbleed.
  3. vuln:cve-2014-0160 — поиск устройств, затронутых конкретной уязвимостью CVE-2014-0160 (Heartbleed).
  4. vuln:Apache — поиск уязвимостей, связанных с сервером Apache.

Использование фильтра vuln доступно только для учетных записей уровня Academic Users или Small Business API и выше.

Пример поиска веб-камер, подверженных уязвимости Heartbleed

Censys

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

Как и Shodan, Censys сканирует интернет на наличие подключенных устройств, собирает баннеры, определяет открытые порты, MAC-адреса и прочее. Он также поддерживает полнотекстовый поиск, логические операторы, условные знаки и фильтры.

В целом Censys и Shodan решают схожие задачи. 

Продолжая тему веб-камер, попробуем найти камеры с учетными данными по умолчанию. Для этого используем фильтр default credentials.

Пример поиска веб-камер с учетными данными по умолчанию

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

Или при помощи фильтра certificate has expired можем обнаружить хосты, использующие просроченные сертификаты.

Результат поиска хостов, использующих просроченные сертификаты

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

SpiderFoot

SpiderFoot — это еще один инструмент, который позволяет автоматизировать сбор информации из открытых источников. В настоящее время вендор заявляет, что SpiderFoot использует более 40 источников, среди которых Shodan, RIPE, Whois, PasteBin, Google, SANS и другие.

При этом процесс поиска итерационный: обнаружив какой-то новый элемент, SpiderFoot автоматически опрашивает источники по нему, обнаруживая новые связи и повторяя процесс вновь.

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

Использование SpiderFoot для социальной инженерии и анализа связей может помочь выявить потенциальные риски и уязвимости, связанные с человеческим фактором. 

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

  • IP Intelligence — сбор информации об IP-адресах, включая географическое расположение, провайдера интернета, открытые порты и другие данные;
  • Shodan — использование функционала Shodan для поиска и анализа устройств, подключенных к интернету;
  • Social Media — сбор информации из социальных сетей, таких как Twitter, Facebook*, LinkedIn и других;
  • Threat Intelligence — сбор информации о потенциальных уязвимостях;
  • файловые хостинги — проверка популярных файловых хостингов, таких как Dropbox, Google Drive, OneDrive и других, на наличие определенных файлов или информации;
  • медиа — поиск изображений, фотографий и видео, связанных с определенными ключевыми словами или личностями;
  • VPN — анализ серверов VPN, связанных с целевым доменом или IP-адресом, может обнаруживать возможные уязвимости или некорректные настройки безопасности;
  • история домена — данные о домене, включая предыдущих владельцев, изменения доменов, DNS-записи и архивы веб-страниц.

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

Пример анализа доменного имени, принадлежащего компании

Как мы видим, удалось найти связанные email-адреса, IP-адреса и открытые порты. Также были собраны, но не попали на скриншот физические адреса, связанные имена людей и username, номера телефонов, связанные имена компаний и другая информация.

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

Результат анализа доменного имени с помощью SpiderFoot

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

Как всё это влияет на привлекательность организации для кибератак 

Итак, почему анализ открытых источников так важен и какую пользу он может принести компании?

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

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

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

Что делать, чтобы избежать излишнего внимания со стороны хакера

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

  • минимизировать количество IP-адресов, сервисов и сетевых портов, доступных из сети Интернет общего пользования;
  • технически исключить возможность просмотра наименований и версий используемого прикладного ПО (исключить «футпринтинг») на внешнем периметре организации;
  • надежно затирать метаданные при публикации каких-либо данных;
  • регулярно устанавливать актуальные обновления системного и прикладного ПО в границах внешнего периметра информационных систем;
  • регулярно проводить обучение сотрудников основам информационной безопасности и противодействию социальной инженерии;
  • регулярно проводить анализ открытых источников на предмет чувствительной информации об инфраструктуре и персонале, а также своевременно принимать меры.

Комментарии0
Тоже интересно
Комментировать
Поделиться
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники