Всем привет!

Сегодня хочу рассказать про облачное решение по поиску и анализу уязвимостей Qualys Vulnerability Management, на котором построен один из наших сервисов.

Ниже покажу, как организовано само сканирование и какую информацию по уязвимостям можно узнать по итогам.



Что можно просканировать


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



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

Для сканирования внутри инфраструктуры клиента устанавливается сканер Qualys. Облако Qualys выполняет здесь функцию центра команд для этого сканера.

В дополнение к внутреннему серверу с Qualys на объекты сканирования можно установить агенты (Cloud Agent). Они собирают информацию о системе локально, практически не создают нагрузку на сеть и на хосты, на которых работают. Полученная информация отправляется в облако.



Тут три важных момента: аутентификация и выбор объектов для сканирования.

  1. Использование аутентификации. Некоторые клиенты просят провести сканирование blackbox, особенно для внешних сервисов: отдают нам диапазон IP-адресов без указания системы и говорят «будьте как хакер». Но хакеры редко действуют вслепую. Когда дело доходит до атаки (не разведки), то они знают, что взламывают. 

    Вслепую Qualys может наткнуться на баннеры-обманки и просканировать их вместо целевой системы.  А еще без понимания, что именно будет сканироваться, легко промахнуться с настройками сканера и «приложить» проверяемый сервис. 

    Сканирование принесет больше пользы, если проводить проверки с аутентификацией перед сканируемыми системами (whitebox). Так сканер будет понимать, куда он пришел, и вы получите полные данные об уязвимостях целевой системы.


    У Qualys много опций по аутентификации.
  2. Группировать активы. Если запускать сканирование по всему сразу и без разбора, это будет долго и создаст лишнюю нагрузку на системы. Хосты, сервисы лучше объединить в группы по важности, расположению, версии ОС, критичности инфраструктуры и прочим признакам (в Qualys они называются Asset Groups и Asset Tags) и выбирать при сканировании конкретную группу.
  3. Выбирать техническое окно для сканирования. Даже если вы все предусмотрели и подготовились, сканирование создает дополнительную нагрузку на систему. Оно необязательно вызовет деградацию сервиса, но лучше для него выбрать определенное время, как для резервного копирования или наката обновлений.

Что можно узнать из отчетов?


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

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

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





Для технического специалиста есть Technical Report со всеми деталями и подробностями. Можно сформировать следующие отчеты:

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

Вот так выглядит список проанализированных хостов с указанием работающих на них ОС.



Откроем интересующий хост и увидим список из 219 найденных уязвимостей, начиная от самых критичных, пятого уровня:



Дальше можно посмотреть подробности по каждой уязвимости. Тут мы видим:

  • когда уязвимость была зафиксирована первый и последний раз,
  • индустриальные номера уязвимостей,
  • патч для устранения уязвимости,
  • есть ли проблемы с соответствием стандарту PCI DSS, NIST и пр.,
  • есть ли эксплойт и malware для этой уязвимости,
  • обнаруживается ли уязвимость при сканировании с/ без аутентификации в системе и пр.



Если это уже не первое сканирование – да, сканироваться нужно регулярно :) – то с помощью Trend Report можно проследить динамику по работе с уязвимостями. Статус уязвимостей будет показан в сравнении с предыдущим сканированием: уязвимости, которые были найдены ранее и закрыты, будут отмечены как fixed, незакрытые – active, новые – new.

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

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



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





Отчет на соответствие стандартам PCI DSS. Стандарт PCI DSS требует проводить сканирование информационных систем и приложений, доступных из сети Интернет, каждые 90 дней. После скана можно сформировать отчет, который покажет, что в инфраструктуре не соответствует требованиям стандарта.





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

Отчеты по открытым портам. Здесь можно получить информацию по открытым портам и сервисам, работающим на них:



или сформировать отчет по уязвимостям на каждом порту:



Это лишь стандартные шаблоны отчетов. Можно создавать свои под конкретные задачи, например, показать только уязвимости не ниже пятого уровня критичности. Все отчеты доступны. Формат отчетов: CSV, XML, HTML, PDF и docx.



И помните: безопасность – это не результат, а процесс. Разовое сканирование помогает увидеть проблемы в моменте, но это не про полноценный процесс по управлению уязвимостями.
Чтобы вам было легче решиться на этот регулярный труд, мы сделали сервис на базе Qualys Vulnerability Management.

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