Сканирование сервисов
Сканирование сервисов (англ. service scan) — это процесс выявления доступных сетевых сервисов в компьютерных сетях путём попыток установить множество сеансов с разными прикладными приложениями для каждого устройства из выбранной группы целей. Для этого инициируются соединения с разными приложениями посредством передачи пакетов установления сеанса на открытые порты всех указанных устройств. Сканирование охватывает широкий диапазон портов различных транспортных протоколов, в том числе TCP, UDP и, при необходимости, другие протоколы транспортного уровня, такие как SCTP и QUIC (UDP/443)[1]. Сканер сервисов для каждого найденного устройства определяет список сервисов, обнаруженных на просканированных портах[2][3].
Принципы работы
Большинство пользовательских сетевых сервисов предназначены для обнаружения пользователями[4]. Например, веб-сервис может быть доступен на порту TCP 80 определённого устройства. TCP/80 является стандартным портом для протокола HTTP, и пользователи могут получить доступ к содержимому веб-сервера — веб-сайта — направив свой веб-браузер на адрес данного устройства, чтобы просмотреть главную страницу сайта. Вместе с тем, веб-сервис может быть открыт и на другом порту, где может предоставляться другое содержимое. Это может использоваться для сокрытия материала от обычных пользователей, предоставления его только тем, кто знает о нестандартном порте доступа. Сканирование портов позволяет определить, что порт на устройстве открыт, но не всегда — какой сервис там развернут. Сканирование сервисов для этого устройства выявит не только наличие открытого порта, но и то, что на нём именно веб-сервис.
Сканеры сервисов могут быть настроены на проверку одного устройства, однако чаще они используются для массового сканирования множества устройств. Например, сканер может быть настроен для проверки всей подсети. Возможно задание сканирования только стандартных, популярных или неиспользуемых портов с попытками установить соединение с известными сервисами для каждого из них. Это отличается от просева портов, который выявляет лишь наличие открытых портов, предполагая, что на них работают стандартные для них сервисы. В свою очередь, сканирование портов и просев портов определяет только факт доступности порта на устройстве и предполагает наличие типового сервисного приложения. Однако сканер сервисов способен проверить, действительно ли сервис соответствует порту, либо выявить, какое приложение реально функционирует на данном порте.
Инструменты и технологии
Для задач сканирования сервисов и снижения рисков информационной безопасности традиционно используются такие инструменты, как nmap и Nessus. Для крупномасштабного сканирования применяются высокоскоростные решения, такие как Masscan и ZMap. Masscan представляет собой сверхбыстрый TCP-сканер портов, использующий асинхронную передачу, который способен обрабатывать до десятков миллионов пакетов в секунду[5] и применяется для широкого обнаружения хостов в масштабах всего интернета. ZMap — это исследовательский высокоскоростной интернет-сканер, использующий однопакетные зонды, предназначенный для академических проектов и проведения крупномасштабных измерений всего пространства IPv4[6].
Для ускорения процесса сканирования и обработки трафика применяется технология eBPF (в связке с XDP). Она позволяет перехватывать сетевые пакеты на уровне драйвера сетевой карты, обходя стандартный сетевой стек. Это существенно снижает накладные расходы на переключение контекста и позволяет обрабатывать миллионы пакетов в секунду на каждое ядро процессора[7][8].
Современные технологии сканирования включают методы TLS Fingerprinting, в частности семейство JA4. Этот метод позволяет идентифицировать версию и тип программного обеспечения без установления полного соединения за счёт анализа сообщения TLS ClientHello на начальном этапе рукопожатия[9][10].
Сканирование сервисов, работающих по протоколу QUIC, имеет свою специфику. Стандартные инструменты, такие как Nmap, не имеют надёжных встроенных механизмов для фингерпринтинга QUIC. Для этих задач применяется специализированный сканер quicmap, позволяющий осуществлять брутфорс поддерживаемых протоколов ALPN для точной идентификации служб. Также используется расширенная версия ZMap в связке с утилитой QScanner, которая обрабатывает результаты сканирования для получения TLS-сертификатов и идентификации сервисов по протоколу HTTP/3[11].
Применение в информационной безопасности
Злоумышленники могут использовать специальный тип сканера сервисов, называемый сканером уязвимостей, чтобы находить устройства с неустановленными обновлениями и известными уязвимостями[12]. Также они могут использовать сканеры сервисов для поиска открытых административных портов, таких как Telnet (TCP/23)[13] и SSH (TCP/22). После нахождения таких портов злоумышленник может попытаться получить доступ к устройствам, перебирая пары имя пользователя/пароль[14].
В 2025 году глобальный рост числа выявленных уязвимостей составил 45 %. Основными причинами кризиса в их обработке стали нехватка ресурсов у Национальной базы данных уязвимостей (NVD), высокая скорость появления эксплойтов, а также слишком медленные процессы сканирования и установки патчей[15].
Для защиты внешнего периметра организаций сканирование играет центральную роль в системах управления внешней поверхностью атаки (External Attack Surface Management, EASM). В архитектуре EASM автоматическое сканирование интернета применяется для непрерывного обнаружения и инвентаризации всех внешних цифровых активов, включая неизвестные или забытые ресурсы. Активное сканирование позволяет выявлять уязвимости, открытые порты и ошибочные конфигурации, после чего результаты валидируются и приоритизируются на основе реальной эксплуатируемости и критичности активов[16][17].
В облачных средах эволюция инструментов привела к развитию Cloud-native сканирования, ключевым отличием которого является использование безагентных подходов. Вместо установки агентов или использования сетевого доступа такие решения считывают снимки дисков или блочное хранилище напрямую через API и уровень виртуализации облачного провайдера. Это обеспечивает непрерывность сканирования и позволяет эффективно отслеживать эфемерные ресурсы, приоритизируя угрозы на основе специфического облачного контекста[18][19].
В микросервисных архитектурах Service Mesh (например, Istio и Linkerd) выявление сервисов, скрытых за sidecar-прокси, обеспечивается за счёт встроенных механизмов наблюдаемости. Перехват трафика позволяет автоматически собирать метрики, формировать логи и распределённые трассировки, что даёт возможность проследить точный путь запроса и выявить скрытые сервисы без вмешательства в код приложений[20].
Новые риски для информационной безопасности связаны со сканированием кода, сгенерированного искусственным интеллектом. Значительная часть такого кода не проходит тесты на безопасность, часто содержа уязвимости из списка OWASP Top 10 (например, XSS и SQL-инъекции), а также подвержена атакам типа «slopsquatting» (ссылки на несуществующие пакеты, которые могут быть зарегистрированы злоумышленниками). Для выявления этих угроз применяются методы статического тестирования безопасности (SAST), анализ состава ПО (SCA) и автоматизированное сканирование секретов на каждом этапе разработки[21].
Практика в Российской Федерации
В Российской Федерации применяется практика блокировки ресурсов через технические средства противодействия угрозам (ТСПУ) при обнаружении уязвимостей или нарушений. В частности, блокировке подвергаются VPN-сервисы, отказавшиеся фильтровать доступ к запрещённым ресурсам, а также сетевые протоколы, массово используемые для обхода ограничений (такие как SOCKS5, VLESS, L2TP, WireGuard и OpenVPN). Кроме того, Роскомнадзор осуществляет автоматическую рассылку рекомендаций по устранению выявленных угроз и уязвимостей на контактные адреса владельцев информационных систем, операторов связи и хостинг-провайдеров.