
Сканирование на уязвимости — это один из ключевых этапов в процессе управления уязвимостями. На первый взгляд, оно может показаться простой задачей, но на этом этапе есть множество нюансов, которые могут повлиять на точность и эффективность процесса. В этой статье я поделюсь своим опытом, разберу основные сложности и предложу идеи, которые помогут сделать сканирование более эффективным и результативным.
Что важно учитывать при сканировании
Автоматизированный учет активов: как не оставить слепых зон в сети
Важно провести максимально полную инвентаризацию активов в сети перед тем, как приступать к поиску уязвимостей на всех системах. При инвентаризации необходимо учитывать все типы активов, так как уязвимости могут быть не только в серверах и рабочих станциях, но и в менее очевидных устройствах:
Рабочие станции
Серверы
Сетевые устройства (коммутаторы, маршрутизаторы, точки доступа)
Средства защиты информации (брандмауэры, IDS/IPS, VPN-шлюзы)
СУБД (Oracle, MySQL, PostgreSQL, MS SQL)
Веб-приложения (внешние и внутренние)
Системы телефонии и VoIP
IoT, МФУ, камеры видеонаблюдения
Облачные сервисы и контейнерные среды (Docker, Kubernetes)
Чем точнее инвентаризация, тем эффективнее будет сканирование, ведь пропущенные активы могут стать точкой входа для атакующих.
Кроме того инвентаризация хорошо коррелируется со сбором данных для построения поверхности атак. Чем детальнее инвентаризация, тем больше задач она поможет решить в будущем, в том числе для других направлений SOC.
Сканеры уязвимостей могут использоваться как один из инструментов для инвентаризации, но полагаться только на них недостаточно. Они могут пропускать активы, особенно если устройства не отвечают на запросы или используют нестандартные конфигурации. Поэтому важно применять комплексный подход.
Дополнительную информацию можно получать:
Логи DNS и DHCP – позволяют выявить устройства, которые не были найдены сканерами.
Active Directory – можно выгрузить данные с помощью SharpHound и проанализировать их в BloodHound для дополнительного анализа.
IPAM (IP Address Management) – системы управления IP-адресами содержат полезную информацию о сетевых ресурсах, которые могут не отражаться в других источниках.
Классификация активов по операционным системам и используемым протоколам доступа
При сканировании на уязвимости необходимо учитывать, к какой категории относится актив и каким образом можно получить доступ к его конфигурации.
Например серверы – могут работать на разных операционных системах (Windows, Linux, BSD, Solaris и др.), и для каждой из них требуется отдельный профиль сканирования.
Грамотная классификация активов помогает логически группировать устройства, а значит:
Создавать точные политики и профили сканирования
Избегать ненужной нагрузки на систему
Учитывать специфику каждого типа активов и не пропускать уязвимости

Классификация активов по уровню риска: приоритеты в управлении уязвимостями
Данная классификация часто используется для приоритизации устранения уязвимостей и соответствующего планирования сканирования. Приоритеты обычно расставляются с учетом следующих параметров:
Ценность информации, обрабатываемой на активе (например, базы данных с персональными данными или финансовой информацией).
Критичность для отказоустойчивости – если хост является точкой отказа, его компрометация может привести к значительным сбоям в работе системы.
Расположение в сети – насколько легко атакующему получить доступ к уязвимому серверу (внешний периметр, внутренняя сеть, сегмент с повышенным уровнем безопасности).
Дополнительно, среди моих тактических метрик для оценки рисков можно выделить:
Простота эксплуатации уязвимости – насколько легко можно использовать уязвимость для атаки (наличие публичных эксплойтов, необходимость специальных знаний).
Методы доставки эксплойта – требуется ли локальный доступ, можно ли провести атаку удаленно, возможна ли эксплуатация через фишинг или зараженные документы.
Ценность хранимой информации с точки зрения атакующего – насколько полезны данные на этом активе для злоумышленника (данные учетных записей в памяти, доступ к другим системам).
Рабочие станции иногда ставят по приоритету ниже серверов, хотя получить к ним доступ может быть значительно проще.
Иногда на рабочей станции можно найти более ценную информацию, чем на сервере. Например, если за этим компьютером работает сотрудник IT-отдела, чья учетная запись обладает повышенными привилегиями в домене.
Особенности функционирования активов
Понимание того, как функционирует актив, его назначение и характерное поведение в сети - критически важно. Например, сервер, скорее всего, работает 24/7, тогда как рабочая станция может выключаться на ночь.
Местоположение актива и почему это важно
Расположение актива играет важную роль, и здесь следует учитывать два типа локации:
Расположение в сети – определяет, в каком сегменте сети находится актив (внешний, внутренний, изолированный).
Географическое расположение – физическое местоположение устройства. Важно учитывать для филиалов, удаленных офисов и облачных сред, так как разные регионы могут иметь различные риски и требования регуляторов.
Если расписание сканирования настроено по времени GMT+3, ориентируясь на часовой пояс головного офиса (где предположим находится сервер сканера и вы сами), но удаленный хост (например, рабочая станция) расположен в другом часовом поясе, велика вероятность, что сканер пропустит его.
Если компьютер выключается на ночь, а сканирование запланировано на время, когда хост недоступен то это приведет к постоянным пропускам активов в этом регионе.
Мой опыт за прошлый год показал, что настройка сканирования с учетом местного времени и рабочих часов позволила увеличить охват рабочих станций на 29% в пиковый месяц.
Другой пример: сервер расположен в зоне DMZ. Мы можем просканировать его с помощью аудиторской задачи или агентского решения, но поскольку некоторые сервисы доступны из интернета, а условный DMZ-сегмент может иметь маршрутизацию во внешнюю сеть, не лишним будет провести сканирование из интернета, чтобы проверить, какие сервисы действительно доступны.
Тут нужно понимать, что даже если сам сервис не содержит известных уязвимостей, настройки сервисов по умолчанию могут привести к компрометации сервера, а затем всей сети.
Основные способы сканирования на уязвимости
Существуют различные методы получения информации об уязвимостях на хостах, и у каждого из них есть свои плюсы и минусы. Основные из методов:
Сканирование методом аудита с использованием агента
Сканирование методом аудита без агента
Анализ через перехват сетевого трафика
Сканирование методом пентеста
Каждый из этих методов имеет свои преимущества и недостатки, дополняя друг друга для достижения более полного охвата и прозрачности. Поэтому рекомендуется применять их в комплексе, адаптируя к активам с учетом инфраструктуры и возможностей.
Сканирование методом аудита с использованием агента
При агентном сканировании на целевой системе устанавливается агент, который собирает данные и передает их в сканер и систему управления уязвимостями.
Преимущества:
Полная информация о системе – собираются данные об установленных пакетах, конфигурациях, процессах и правах пользователей.
Мониторинг изменений в реальном времени – агент фиксирует появление новых уязвимостей сразу после их появления(при актуальных базах).
Работа без постоянного сетевого соединения – данные синхронизируются по расписанию, что полезно для ноутбуков и удаленных устройств.
Недостатки:
Не все системы поддерживают агентный режим – например, старые Linux-дистрибутивы, IoT-устройства, встроенные системы.
Необходимо устанавливать дополнительное ПО, что может потребовать времени и администрирования.
Дополнительная нагрузка на конечных устройствах.
Где лучше применять:
Удаленные клиенты и ноутбуки – сканирование выполняется даже при нестабильном соединении.
Пользовательские рабочие станции – подробный анализ уязвимостей без нагрузки на сеть.
Облачные ресурсы (AWS, Azure) – многие облачные платформы поддерживают агентные проверки для детального анализа конфигураций.
Сканирование методом аудита без агента
При сканировании методом аудита сканер подключается к хосту по сети и анализирует его открытые порты, сервисы и конфигурации (обычно через SSH, WMI, RPC). Некоторые сканеры могут временно загружать и запускать исполняемый файл или скрипт для сбора дополнительной информации.
Преимущества:
Не требуется установка ПО на каждую систему – упрощает процесс развертывания.
Меньшая нагрузка на конечные устройства по сравнению с агентным методом.
Можно сканировать устройства, где невозможно установить агенты – например, сетевое оборудование.
Недостатки:
Может давать неполную информацию, в зависимости от возможностей сканера и уровня доступа.
Может блокироваться межсетевыми экранами и системами защиты – требует предварительной настройки сети.
Может требовать ослабления защиты хоста – например, открытия удаленного реестра в Windows.
Требует корректная настройка для подключения по протоколам доступа(SSH, WMI, RPC).
Где лучше применять:
Идеально подходит для серверов и хостов внутри сети, где можно настроить доступы и политики безопасности.
Не подходит для удаленных клиентов, особенно хостов, работающих за NAT или VPN.
Анализ через перехват сетевого трафика
Существуют решения, которые позволяют анализировать сетевой трафик и выявлять уязвимости на хостах без активного взаимодействия с ними. Данные, полученные таким способом, нужно сопоставлять с результатами других методов, чтобы минимизировать ложные срабатывания.
Преимущества:
Не создает нагрузки на сеть и конечные устройства.
Не требует установки ПО на хостах.
Позволяет выявлять скрытые уязвимости, например, устройства, которые давно не обновлялись.
Недостатки:
Не всегда дает полную картину, особенно если трафик зашифрован.
Зависит от доступности сетевого трафика, требует грамотного размещения сенсоров.
Может пропускать уязвимости на уровне приложений.
Высокий риск ложных срабатываний.
Где лучше применять:
Во внутренней сети, особенно для мониторинга неконтролируемых устройств (IoT, устаревших систем, теневого IT).
Как дополнительный метод анализа, который дополняет активное и агентное сканирование, но не заменяет их.
Сканирование методом пентест
При выборе метода пентест сканер подключается к доступным сервисам хоста, получает информацию о версиях сервисов и анализирует их на наличие уязвимостей. Если поддерживается аутентификация, можно задать учетные данные для получения более детальной информации.
Преимущества:
Позволяет выявить реальные векторы атак с точки зрения злоумышленника.
Проверяет не только известные уязвимости, но и ошибки конфигурации, слабые пароли и проблемы логики.
Недостатки:
Более высокий риск ложных срабатываний.
Риск пропустить уязвимость выше, чем при сканировании методом аудит.
Часто не выявляет уязвимости для локального повышения привилегий.
Где лучше применять:
Сканирование периметра сети, чтобы определить, какие уязвимости реально доступны извне.
Анализ межсегментных соединений, когда нужно проверить корректность настроек межсетевых экранов.
По факту пентест-сканирование не заменяет другие методы сканирования, а дополняет его.
Оптимизация процесса сканирования
Параметры настроек задач на сканирования зависят от выбранного метода сканирования и типа активов, поэтому я обобщу основные требования для различных категорий. Более детальные настройки зависят от конкретного решения и возможностей используемых систем.
Основные параметры, которые можно учитывать:
Метод сканирования: агентное, безагентное-аудит, пентест, пассивный мониторинг
Частота сканирования: ежедневно, еженедельно, ежемесячно
Время проведения: дневное/ночное, будние/выходные дни
Эти параметры позволяют оптимизировать процесс сканирования, снижая нагрузку на сеть и системы, а также повышая точность и своевременность выявления уязвимостей.
Сканирование периметра сети
В идеале на периметре должны быть доступны только ключевые сервисы, такие как веб-приложения, SMTP, DNS и VPN. Однако на практике нередко встречаются открытые RDP, SSH и даже Telnet, что значительно увеличивает поверхность атаки.
Вообще под периметром следует понимать не только блок IP-адресов в публичном пространстве. Сюда также относятся беспроводные сети, а в некоторой степени и удаленные клиенты, которые подключаются к корпоративной сети.
Периметр — это первый рубеж защиты, который требует постоянного мониторинга. Его необходимо сканировать изнутри методом аудита и снаружи, используя пентест-подход, чтобы выявлять потенциальные угрозы и уязвимости, доступные злоумышленнику.
Дополнительно можно использовать внешние сервисы разведки, такие как Shodan и Censys, которые позволяют обнаружить, экспонированные сервисы и потенциально уязвимые системы. Дополнительно можно провести сканирование с помощью Nmap, выявляя открытые порты и вручную анализируя ответы сервисов.
Метод сканирования: безагентное-аудит, пентест
Частота сканирования: раз в неделю, раз в месяц
Время проведения: дневное/ночное, будние/выходные
Сканирование удаленных активов (рабочих станций)
Удаленные клиенты, как правило, находятся вне локальной сети и работают автономно, что делает их сложными для централизованного мониторинга. Единственным эффективным способом их сканирования является использование агентного подхода, который позволяет регулярно собирать данные об уязвимостях, даже когда устройство находится за пределами корпоративной инфраструктуры.
Однако в некоторых случаях можно применить безагентное сканирование, если клиентская рабочая станция подключается к корпоративной сети через VPN. В этот момент возможно проведение аудита с использованием стандартных методов удаленного сканирования, аналогично внутренним хостам.
Основные параметры сканирования удаленных клиентов:
Метод сканирования: агентное, безагентное-аудит (при VPN-подключении)
Частота сканирования: ежедневно, раз в неделю
Время проведения: дневное, будние дни
Сканирование активов в беспроводных сетях
В беспроводной сети лучше всего использовать агентное решение. Можно также сканировать изнутри, разместив сканер в нужном сетевом сегменте. Это позволяет получить более точные результаты и выявить уязвимости, которые могли бы остаться незамеченными при сканировании извне.
Имеет смысл проводить сканирование только в тех беспроводных сетях, где находятся клиентские рабочие станции, так как именно они представляют потенциальную точку входа для атакующих. Гостевые сети сканировать нецелесообразно, а подключение корпоративных устройств к открытым или общественным Wi-Fi сетям не рекомендуется, за исключением удаленных клиентов, работающих через защищенные VPN-соединения.
Основные параметры сканирования беспроводных сетей:
Метод сканирования: агентное, безагентное-аудит, пассивный мониторинг
Частота сканирования: ежедневно, раз в неделю
Время проведения: дневное, будние
Сканирование серверов внутри сети
Сканирование серверов является наименее сложным случаем, так как серверы, как правило, работают круглосуточно. Это упрощает задачу, так как нет риска пропустить актив из-за его недоступности. При планировании расписания сканирования стоит учитывать временные окна для технических работ, чтобы избежать лишней нагрузки на критические сервисы в моменты их максимальной активности.
Основные параметры сканирования серверов:
Метод сканирования: безагентное-аудит
Частота сканирования: ежедневно, раз в неделю, раз в месяц
Время проведения: ночное/дневное, будние/выходные
Сканирование рабочих станций внутри сети
Сканирование рабочих станций имеет нюансы. Во время сканирования безагентным аудитом рабочие станции могут быть выключены в нерабочее время, поэтому планирование сканирования должно учитывать рабочие часы и часовой пояс офиса, где расположен хост. Это позволяет минимизировать пропуски активов и повысить эффективность обнаружения уязвимостей.
Дополнительно стоит учитывать, что некоторые вендоры сканеров уязвимостей рекомендуют отключать определенные механизмы защиты ОС. Это может повысить точность сканирования, но одновременно увеличивает риск взлома.
Также учетная запись, под которой выполняется безагентное сканирование, часто обладает высокими привилегиями, что делает ее возможной целью атак. Важно:
разделять учетные записи для сканирования рабочих станций и серверов
минимизировать права учетной записи в домене, ограничивая ее доступ только к необходимым ресурсам
Например представляют риск членство в группах Администраторы, привилегии на чтение и запись атрибутов(ms-MCS-AdmPwd, msDS-KeyCredentialLink, msDS-GroupMSAMembership) объектов в Active Directory через DACLs.
Основные параметры сканирования рабочих станций:
Метод сканирования: агентное, безагентное-аудит, пассивный мониторинг
Частота сканирования: ежедневно, раз в неделю
Время проведения: дневное, будние дни
Сканирование сетевых устройств
Сканирование сетевых устройств чаще всего выполняется методом безагентного аудита. Сканер подключается к устройству, выполняет серию команд, извлекает конфигурацию и анализирует.
Метод пентеста в данном случае не всегда подходит и часто малоэффективен, так как сетевые устройства редко позволяют проводить активные атаки в стандартных условиях.
Основные параметры сканирования сетевых устройств:
Метод сканирования: безагентный-аудит, пассивный мониторинг
Частота сканирования: раз в неделю, раз в месяц
Время проведения: ночное/дневное, будние/выходные
Сканирование МФУ
Принтеры и аналогичные устройства могут нестабильно реагировать на сетевые запросы. Как правило, они не поддерживаются большинством сканеров уязвимостей, и их сканирование не рекомендуется, так как это может привести к сбоям в их работе.
Эффективных стандартных решений для анализа безопасности таких устройств немного, но возможен частный подход. Например, с помощью Python можно написать скрипт, который проверяет принтер на наличие конкретной уязвимости, если известна информация о ней и существует соответствующий эксплойт.
Самым надежным методом защиты остается контроль настроек и актуальности прошивок, так как большинство атак на подобные устройства связано именно с устаревшим ПО и слабыми конфигурациями.
Основные, возможные параметры сканирования принтеров и подобных устройств:
Метод сканирования: пентест, пассивный мониторинг
Частота сканирования: раз в неделю, раз в месяц
Время проведения: дневное, будние дни
Сканирование неподдерживаемых устройств
Неподдерживаемые устройства невозможно просканировать методом аудита, так как они не имеют возможности интеграции. В таких случаях остается использование пентест-методов и частный скриптинг, с доступом к устройству по известным протоколам и анализом его конфигурации.
Дополнительно осуществлять мониторинг и анализ фидов от вендоров этих устройств, а также отслеживать появление новых уязвимостей. Это позволяет своевременно принимать меры, даже если стандартные инструменты безопасности не поддерживают работу с данным оборудованием.
Примеры фидов уязвимостей:
Основные, возможные параметры сканирования неподдерживаемых устройств:
метод сканирования: пентест, пассивный мониторинг
частота сканирования: раз в неделю, раз в месяц
время проведения: ночное/дневное, будние/выходные
Заключение
В заключение хочется выделить ключевые моменты, которые помогут повысить эффективность сканирования на уязвимости:
Охват всех активов классификация - основа безопасности. Важно учитывать не только серверы и рабочие станции, но и сетевые устройства, принтеры, IoT и другие потенциальные активы.
Если сканер не поддерживает устройство, стоит искать альтернативные методы, такие как частный скриптинг, мониторинг фидов и анализ конфигурации.
Регулярный мониторинг фидов CVE помогает выявлять угрозы раньше атакующих и своевременно обновлять защитные меры.
Постоянный мониторинг трендовых уязвимостей и обновление методик сканирования помогают адаптироваться к новым угрозам и улучшать процесс защиты.