Поиск уязвимостей в ИТ-инфраструктуре: типы сканеров, методы обнаружения и Vulnerability Management

Автор статьи:

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

Что такое Vulnerability Scanner и какова его роль в обеспечении безопасности

Vulnerability Scanner или сканер уязвимостей – это программное обеспечение, позволяющее автоматизировать процесс аудита безопасности, выявить скрытые киберугрозы.

Менее распространенное название — Vulnerability detection tool или средство обнаружения уязвимостей. Это решение способно анализировать сетевую инфраструктуру, веб-приложения, серверы, рабочие станции, облачные сервисы и даже исходный код.

Типы сканеров уязвимостей (Vulnerability Scanners)

Существует несколько типов сканеров уязвимостей (Vulnerability Scanners), применяемых в аудите кибербезопасности:

  • Сетевые сканеры – оперируют доступной в сети информацией – порты, протоколы, уязвимые сетевые приложения. Проводят сканирование сети. Используются для внешнего периметра и внутренних сетей компании.
  • Агентные сканеры (или сканеры для хостов) – анализируют не только сетевое, но и всё прикладное и системное программное обеспечение, установленное на хосте. Под хостами в данном контексте понимают серверы и рабочие станции
  • Сканеры WEB-приложений осуществляют поиск уязвимостей на внешних и внутренних порталах компании. Проводят сканирование веб-приложений
  • Отдельно стоят сканеры исходного кода и приложений (SAST, DAST- в том числе API и иные). Тестируют безопасность программного кода и API-интерфейсов
  • Ряд сканеров позволяет тестировать облачные ресурсы и сервисы, однако такое сканирование, как правило, ограничено юридически

Зачем нужно сканирование уязвимостей

Регулярное сканирование уязвимостей — основа кибербезопасности организации.
аудит сканирование уязвимсотей

Этапы проведения сканирования

Результаты сканирования (перечень уязвимостей и уязвимого ПО) могут применяться для следующих целей:

  1. Банальное закрытие уязвимостей (как правило, обновление ПО)
  2. Удаление уязвимых приложений
  3. Перенастройка средств защиты для компенсации уязвимостей
  4. Планирование перехода на доверенные программно-аппаратные комплексы (ДПАК)

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

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

Агентное и безагентное сканирование уязвимостей

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

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

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

Для специальных сканеров типа сканеров исходного кода может применяться процесс поиска уязвимостей, интегрированный в конвейер разработки (CI/CD процессы).

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

Дополнительно, как сказано выше, может применять SAST и DAST сканирование на ранних этапах жизненного цикла целевого WEB-сайта (приложения).

Как работает сканер уязвимостей (Vulnerability Scanner)

Большинство сканеров работают по одному и тому же принципу:

  • Идентификация объектов сканирования
  • Выполнение по отношению к ним набора тестов (например, установлено ли программное обеспечение какой-либо версии)
  • Агрегация данных (для случая, когда сканер реализует несколько алгоритмов поиска)
  • Генерация отчета

Работа сканера

Работа сканера уязвимостей

Полученный отчет используется специалистами для валидации (проверки найденных уязвимостей), оценки рисков и составления рекомендаций. Этот процесс называется Vulnerability management или управление уязвимостями.

Регулярное сканирование и типы уязвимостей

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

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

Для WEB-приложений сформирован перечень наиболее частый уязвимостей от OWASP. Так называемый OWASP TOP TEN включает в себя инъекции (SQLi, XSSi и т.д.), ошибки настроек и прочее.

Одним из наиболее опасных типов уязвимостей является RCE – удаленное исполнение кода. Может быть реализовано как на операционных системах, так и на различных приложениях – от 1С и WEB-сайтов до мобильных систем и АСУ ТП. При поиске и анализе уязвимостей следует уделять им особое внимание.

Уязвимости собираются в базы данных коммерческими и государственными организациями. Самые известные – CVE от NIST (США) и отечественная БДУ от ФСТЭК. Регулярное обновление баз уязвимостей критически важно для точной работы сканеров безопасности и аудита ИБ.

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

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

Статистика

Управление уязвимостями с помощью сканера. Автоматизация поиска угроз

Сканирование уязвимостей – первый этап для управления ими. За сканированием обязательно должен следовать анализ (оценка) и устранение. При таком подходе достигается описанная выше безопасность.

Процесс внедрения сканера безопасности состоит из нескольких этапов:

  1. Для начала использования сканера необходимо оценить количество ресурсов, которые будут подлежать сканированию. Как правило, от них зависит стоимость и вычислительные мощности, необходимые сканеру
  2. Следующий шаг – поиск сотрудника, который будет со сканером работать (или обучение уже имеющегося специалиста). Здесь важно соблюдать баланс – более дорогие сканеры могут предоставлять больше функционала, но его использование потребует больше квалификации. Поэтому на первых этапах (первые 2-3 года) имеет смысл выбирать более простые инструменты – все равно на закрытие уязвимостей уйдет время
  3. После – уже закупка и внедрение. Для ряда вендоров возможно вначале внедрение (так называемый пилот), а уже потом – закупка

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

Однако, следует учесть, что анализ уязвимостей – лицензируемый вид деятельности и подрядчик должен иметь лицензию ФСТЭК на техническую защиту конфиденциальной информации и опыт проведения аудитов безопасности.

Подписывайтесь на канал ИТ. Право. Безопасность в Telegram

Телеграм канал ИТ Право Безопасность

Задать вопрос эксперту