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

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


Речь в данном случае пойдет не просто про nmap или nuclei, которые ты любишь применять на кибеполигоне или багбаунти. Мы поговорим о том, зачем нужны комплексные инструменты VM и почему они являются важнейшими элементами при построении процесса управления уязвимостями.

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

Получить ответы на эти вопросы нам и поможет сканер уязвимостей. Тот самый инструмент, который и будет находить проблемы на активах нашей сети. На этапе выбора сканера возникает вечный вопрос — open source или коммерческое ПО? Давайте рассмотрим плюсы и минусы, но для начала попробуем понять, какие задачи выполняют эти инструменты.

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

В чем заключается работа сканера и какие задачи он выполняет?

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

В данном случае, сканер, настроенный на постоянный мониторинг появления новых устройств и сервисов в сети, помогает нам контролировать как внутренний, так и внешний периметр. Мы можем отсеять наши активы, выделив те, которые появились недавно. Ввод новых серверов в сети, в идеальной картине мира, особенно тех, что смотрят во внешний мир, ИТ должны согласовывать с ИБ и сканер как раз помогает контролировать этот процесс. Здесь же можем упомянуть работу по выявлению shadow it или как их еще называют — теневых активов. Это девайсы, которые находятся в сети, но непонятно какая на них ОС и тд. Для обеспечения безопасности инфраструктуры, прежде всего, вы должны понимать, что защищать.

Во-вторых, сканер помогает нам выявить уязвимости на самих устройствах. Здесь как правило предполагается 2 варианта. 

Black box и white box или метод белого и черного ящика, в терминологии некоторых вендоров режимы Audit и Pentest. 

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

В режиме Audit мы сканируем активы с помощью учетных записей. Такие учетки создаются с минимальными правами, необходимыми для сканирования, при возможности в режиме read-only, и должны применяться только для работы сканера. Крайне нежелательно сканировать от админа или рута. Делать это нужно аккуратно и обязательно в технологические окна. Исключениями могут стать случаи сканирования обычных компьютеров, которые выключены в ночное время или например сканирование сетевых устройств, после того, как вы запретили крайне “нагружающие” CPU устройства команды, например на TACACS. 

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

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

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

Не просто полезно, но крайне необходимо проверять абсолютно все системы, в том числе виртуализацию, 1С, CI/CD, СЗИ — наличие уязвимостей или мисконфигов в них, может серьезно повлиять на обеспечение безопасности предприятия.

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

Что делать дальше?

Допустим мы провели проверки всеми доступными режимами, чем еще нам может помочь сканер? В зависимости от конкретного решения — информация, полученная на предыдущих этапах, может быть собрана на карте в топологию. Это дает нам понимание о связности активов и позволяет проанализировать — как попасть из точки А в точку Б. Чем-то можно сравнить с работой BloodHound. На первый взгляд такая информация может показаться неважной, но опыт говорит о другом. Помните, что такую карту можете составить не только вы, но и злоумышленники. Сравнить ее можно с картой сокровищ или лабиринта. Можно конечно и без нее, но с ней быстрее.

Важно отметить, что преимущество платных решений заключается еще и в поддержке вендора. Допустим вышло новое обновление для вашего файервола и open source инструмент перестал его сканировать. В случае с вендором мы можем написать в техническую поддержку, да и сам вендор заинтересован в поддержке максимального количества устройств. С open source придется разбираться самим, но здесь иногда выручает сообщество.

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

Удачного поиска и исправления уязвимостей!