РАЗБОР На проверке 

Сканеры уязвимостей для пентеста: OpenVAS vs Nessus

Сергей Попов
Сергей Попов Red Team · 6,4 тыс. сообщений
Подписаться
85
Режим чтения
Точные весы на тёмном антистатическом коврике сравнивают два металлических куба с гравировкой OpenVAS и Nessus, подсвеченные тёплой лампой и зеленоватым свечением надписи T1595.002 VULN SCAN.


Два года назад я получил первый коммерческий проект - внутренний пентест сети из 50 хостов. Nmap отработал за 20 минут, порты собраны, баннеры сняты. Дальше - vulnerability assessment. И тут я завис на полдня: OpenVAS или Nessus? Форумы не помогли - одни хвалили бесплатный OpenVAS, другие клялись на Nessus. Я плюнул, поставил оба на одну Kali-машину и прогнал по тем же адресам. Результат удивил: сканеры нашли разные уязвимости, и оба выдали ложные срабатывания в нескольких местах. За два года работы с обоими у меня сложилось чёткое понимание - когда какой брать и почему.

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

Сканер уязвимостей автоматизирует один конкретный этап пентеста - оценку уязвимостей. В терминологии MITRE ATT&CK это техника Vulnerability Scanning (T1595.002, Reconnaissance). Сканер берёт результаты обнаружения сервисов - то, что делает nmap на этапе Network Service Discovery (T1046, Discovery) - и проверяет каждый найденный сервис по базе известных CVE.

Что сканер делает:
Что сканер НЕ делает (и это важно понимать с самого начала):
  • не эксплуатирует уязвимости - это работа Metasploit и ручных техник
  • не проверяет бизнес-логику приложений
  • пропускает zero-day и нестандартные конфигурации
Сканер - не замена пентесту. Это инструмент, который экономит часы ручного перебора CVE на этапе разведки. Эксплуатация найденного - Exploit Public-Facing Application (T1190, Initial Access) - всегда отдельный шаг с другим набором инструментов. Путать vulnerability assessment с пентестом - примерно как путать рентген с операцией.

Настройка OpenVAS: обучение на первом проекте​

OpenVAS развивается компанией Greenbone как часть Greenbone Vulnerability Management. Бесплатный сканер с открытым исходным кодом, происходящий от форка последней открытой версии Nessus (v2). Nessus сменил лицензию на проприетарную в 2005 году; вскоре после этого сообщество создало форк, который в 2006-м получил имя OpenVAS. С тех пор кодовая база сильно эволюционировала, и с 2008 года развитием занимается Greenbone Networks.

Установка и первый запуск

OpenVAS работает только на Linux. В Kali установка начинается с sudo apt install gvm, затем sudo gvm-setup. Вторая команда настраивает базу данных, скачивает NVT-фиды (Network Vulnerability Tests) и генерирует пароль администратора.

Грабли, на которые я наступил: первый gvm-setup занял больше двух часов - скачивание фидов на среднем канале растягивается до неприличия. Если процесс прервётся - а он прервётся, поверьте - придётся запускать gvm-feed-update заново. Совет: оставляйте первую синхронизацию на ночь и не трогайте машину.

После установки веб-интерфейс (Greenbone Security Assistant) доступен по адресу https://127.0.0.1:9392. Пароль администратора выводится в терминал - запишите его сразу. Если потеряете, сбросить можно через gvmd --user=admin --new-password=<новый_пароль>, но зачем себе лишнюю головную боль.

Первый скан​

В интерфейсе создаётся задача (Task) с указанием целевых хостов. OpenVAS предлагает 7 шаблонов сканирования - от Discovery (только обнаружение хостов) до Full and fast (полная проверка). Для учебного проекта Full and fast - рабочий вариант.

На практике: на 50 хостах полное сканирование сети на уязвимости занимает от 4 до 8 часов. Это ощутимо медленнее Nessus на том же объёме. Если у вас проект с жёсткими сроками - закладывайте это в план, иначе будете нервно смотреть на прогресс-бар в три часа ночи.

Когда OpenVAS не подходит​

OpenVAS - выбор для обучения, CTF-задач и проектов без бюджета. Ограничения вылезают на масштабе: больше 200 хостов - производительность проседает заметно, отчёты базовые и требуют ручной доработки для заказчика (а заказчик хочет красивый PDF, а не сырой XML). Открытый код - преимущество, если вы готовы копаться в NASL-скриптах и кастомизировать проверки под нестандартную инфраструктуру. Если не готовы - это не преимущество, а лишний источник боли.

Nessus для начинающих: установка и первый скан​

📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме

По опыту и публичным сравнениям, покрытие CVE у обоих сканеров сопоставимо - с незначительным перевесом в пользу Nessus. Разница в абсолютных числах небольшая, но Nessus поддерживает больше 30 типов аутентификации для credentialed-сканов (SSH, SMB, WMI, ESXi, SNMP, базы данных), тогда как OpenVAS ограничен SSH, SMB и ESXi. На реальном проекте это означает: если нужно просканировать Oracle DB или VMware vCenter с аутентификацией - Nessus справится, OpenVAS нет.

Когда Nessus не подходит​

Essentials - строго 16 IP-адресов. Для проекта на 50+ хостов нужна Professional-лицензия (цены регулярно обновляются на сайте Tenable - не буду приводить цифры, которые устареют через месяц). Второе ограничение: Nessus - закрытый продукт. Модифицировать логику проверок под нестандартные задачи не получится. В OpenVAS с его открытым кодом можно залезть в NASL-скрипт и дописать проверку под конкретный сервис заказчика. В Nessus - нет, работаете с тем, что дали.

Сравнение OpenVAS и Nessus: выбор сканера уязвимостей​

КритерийOpenVAS (Greenbone)Nessus (Tenable)
ЦенаБесплатно (Community)Бесплатно до 16 IP (Essentials)
УстановкаLinux, 2+ часа на первый запускWindows/macOS/Linux, 20–30 минут
Шаблоны сканов723
Покрытие CVEсопоставимо (по публичным сравнениям)сопоставимо, с небольшим перевесом
Типы аутентификацииSSH, SMB, ESXi30+ типов
Скорость (50 хостов)4–8 часовпо моему опыту быстрее OpenVAS
ОтчётыБазовые, требуют ручной доработкиДетальные, готовы для заказчика
Кастомизация проверокПолная (открытый код)Ограниченная
Когда НЕ подходитБольшие сети, жёсткие срокиБюджет = 0, нужна полная гибкость

По неподтверждённым данным одного из сторонних обзоров (Intruder.io, дата и версия сканеров не указаны), OpenVAS обнаруживает несколько меньше критических уязвимостей, чем Nessus, но в удалённых (remote/unauthenticated) проверках может показывать лучшие результаты. Эти данные стоит перепроверять на актуальных версиях - я бы не принимал решение для реального проекта на основе чужого бенчмарка с неизвестными условиями.

Roadmap: что выбрать для старта в пентесте​

Для тех, кто думает, как начать - вот мой путь, сжатый до четырёх пунктов:
  1. Учебная среда (TryHackMe, HackTheBox, CTF) - Nessus Essentials. 16 хостов хватает, установка быстрая, шаблоны понятны без документации.
  2. Первый проект до 16 хостов - снова Nessus Essentials. Отчёты выглядят профессионально: CVSS-рейтинги, описания, рекомендации по устранению в готовом PDF. Заказчику не стыдно показать.
  3. Проект на 20–100 хостов без бюджета - OpenVAS. Нет лимита по IP, полные функции. Закладывайте время на настройку и разбор false positive - их будет много.
  4. Регулярные коммерческие проекты - Nessus Professional. Окупается скоростью: три часа вместо восьми при прочих равных. Время - деньги, и тут это не фигура речи.
Сканер - первый шаг. Инструменты пентестера для старта - это связка: nmap для разведки, сканер уязвимостей для vulnerability assessment, Metasploit и Burp Suite для эксплуатации, LinPEAS для privilege escalation после получения low-priv shell. Сканер генерирует список целей - дальше начинается ручная работа.

Многие новички на форумах тратят недели на выбор «идеального» инструмента. OpenVAS или Nessus, а может Nuclei, а может сразу Qualys - и так по кругу. Реальная проблема не в инструменте. Большинство из них ни разу не запускали ни один сканер на живой (пусть и учебной) цели. Первый скан 10 хостов даст больше, чем месяц сравнительных таблиц. Я сам потерял две недели на метания, а потом за один вечер с Nessus Essentials нашёл на учебном стенде три мисконфигурации, которые пропустил при ручном анализе.

Второй момент, который упускают: сканер без понимания того, что он показывает - генератор непонятных PDF. Если не понимаете, почему CVSSv3 9.8 требует немедленной реакции, а 4.3 можно отложить, отчёт останется набором строк. Оценка уязвимостей, сетевые протоколы, базовые принципы ИБ - без этого любой сканер бесполезен. На IB Basics берут с любого старта и дают эту базу системно, а не россыпью случайных статей.
Полезно

Комментарии

0

Ещё по теме