Как пользоваться nessus windows

«Кратко» про установку и настройку Nessus

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

  • так как продукт коммерческий, то после установки требует активацию;
  • инструкция по активации и запуску клиента и сервера на английском, поэтому пришлось долго понимать;
  • после запуска сервера начала подвисать Ubuntu, подозреваю что не хватило ресурсов в связи с моими предыдущими экспериментами.
  • Немного о продукте

    В репозиториях данной утилиты нет, поэтому скачать ее можно с сайта www.nessus.org . Сам сканер написан Рено Дерезоном, Мишелем Арбуа и Брюсом Вердремом и реализован по классической клиент-серверной технологии. Сервер осуществляет сканирование, а клиент отвечает за пользовательский интерфейс. Клиент используется для задания сканируемых адресов, выбора параметров сканирования и просмотра результатов.

    Примечательно то, что сервер работает исключительно под Unix/Linux, а клиент — мультиплатформенный, в этом я вижу большой плюс. При этом взаимодействие клиента и сервера происходит по зашифрованному каналу.

    Данный сканер очень толково сделан и не всегда выполняет исключительно выставленные настройки. Если, допустим, проверка показала, что сканируемый узел не является Windows-системой, то и Windows-тесты не выполняются, даже если они включены в спецификацию тестирования. Кроме того утиль «не доверяет» стандартному файлу /etc/services и проверяет каждый порт, чтобы понять, какая служба его контролирует в реалии. После выяснения службы, nessus запускает соответствующие тесты, причем вместо того, чтоб сообщать о множественных уязвимых местах, прога находит реально существующие «бреши». При этом выводит результат в удобный для пользователя формат — LaTex, HTML, расширенный HTML (с использованием круговых и трехмерных диаграмм), XML.

    Установка

    На узле разработчиков по адресу http://nessus.org/download/ я попал на страницу следущего содержания:

    меня интересовали пакеты для Ubuntu, поэтому перейдя по нескольким ссылкам, согласившись с условиями компании я все-таки скачал файл с расширением .deb.

    Кто как, а я устанавливал через консоль, поскольку через GUI не вышло, предварительно необходимо перейти в нужный каталог со скаченным файлом и ввести команду:

    где, кстати, «i» — указывает на установку пакета.

    Следующий интересный момент — это активация и дальнейшая настройка, в принципе все просто главное внимательно и вдумчиво читать инструкции и так:

    • на странице (сверху) с пакетами есть 2 ссылки на активацию программы для домашних целей и для корпорации (я выбрал home users);

    • пройдя все этапы, указав свой e-mail, должно прийти письмо с дальнейшими указаниями;
    • в письме указывается способ активации (для Linux-дистр.) — это
    • при желании, есть возможность отключения авто-обновлений в файле nessusd.conf таким образом auto_update = no;
    • необходимое и обязательное правило — создание пользователя
    • переход по ссылке типа https://localhost:0987/ , перейдя по которой происходит непосредственно инициализация клиента, который работает на веб-интерфейсе.

    На этом установка окончена.

    Основные параметры конфигурационного файла

    • plugins_folder — задает каталог, в котором находятся подключаемые модули (по умолчанию — /opt/nessus/lib/nessus/plugins);
    • logfile — задает путь к журнальному файлу (по умолчанию — /opt/nessus/var/nessus/logs/nessusd.messages);
    • max_hosts — максимальное число узлов, которые могут проверятся одновременно (по умолчанию — 100), может переопределяться клиентом;
    • rules — задает путь к базе данных правил (по умолчанию — /opt/nessus/etc/nessus/nessusd.rules), это общесистемные правила, которым подчиняются все пользователи;
    • checks_read_timeout — задает число секунд, в течении которых следует ожидать завершения функции recv() (по умолчанию — 5).

    Опции для демона nessusd

    • -c конфигурационный_файл — задает альтернативный к.файл вместо стандартоного — /opt/nessus/etc/nessus/nessusd.conf;
    • -a IP-адрес — заставляет сервер ожидать подключений только по указанному IP-адресу;
    • -p порт — задает порт, прослушиваемый сервером (по умолчанию — 1241);
    • -D — переводит сервер в фоновый режим;
    • -d — сообщить параметры компиляции;
    • -v — вывод номера версии и завершение работы;
    • -h — вывод справки.

    Клиентские вкладки

    На страничке документации сайта ( http://nessus.org/documentation/ ) можно найти ознакомительное видео, несмотря на английский язык, все манипуляции с вкладками можно легко повторить в домашних условиях.

    Поэтому подведу итог, просмотренной мною инструкции:

  • обязательная авторизация;
  • вкладка Policies дает возможность установить правила поведения сканера;
  • там же можно задать параметры сканирования Preferences, выбрав определенный Plugin;
  • создав правила, можно запустить сканер, предварительно выбрав установленную нами Policies и список IP-адресов или список узлов из DNS, или список в формате CIDR (например 172.12.1.145/210), или же загрузить список из файла;
  • пить чай и следить за процессом сканирования;
  • обязательно просмотреть отчеты по узлам сети и проблемным портам, на вкладке Reports можно найти всю правду отдельно по каждой станции;
  • главное не увлекаться, а то можно почувствовать себя Богом. -)
  • Если интересно, что за зверь такой Nessus, установите его себе, но не забывайте кормить, т. е. обновлять, а то перестанет адекватно работать. Удачи в эксплуатации.

    Как сканировать свою сеть на наличие уязвимостей при помощи Nessus Scanner

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

    Одним из наиболее популярных сканеров уязвимостей на рынке является Nessus Vulnerability Scanner. Он стал своего рода стандартом для сканеров уязвимостей. Изначально он стартовал как проект с открытым кодом. Далее его приобрела компания Tenable, и теперь он является коммерческим продуктом (версия Professional). Несмотря на это, у Nessus Scanner по-прежнему есть «Home» версия, которая распространяется бесплатно, но имеет ограничение в 16 IP адресов. Именно эту версию мы и будем рассматривать в данной инструкции по применению.

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

    Не стоит забывать важные моменты касательно сканеров уязвимостей. Они не могут обнаружить уязвимости 0-day. Как и антивирусные программные продукты, их базы должны обновляться каждый день, чтобы быть эффективными.

    Любой уважающий себя пентестер, должен быть знаком с Nessus Scanner. Многие достаточно крупные организаций по всему миру используют его в комплексе информационной безопасности.

    С недавнего времени даже правительство США начало его использовать для сканирования уязвимостей. Почти каждый федеральный офис и военная база США во всем мире теперь применяет Nessus.

    Давайте рассмотрим, что представляет собой эта программа в работе!

    Шаг 1. Скачать Nessus Scanner бесплатно

    Найти бесплатную домашнюю версию Nessus Home на сайте Tenable непросто. Поэтому мы для вас подготовили прямую ссылку.

    Для получения бесплатной версии требуется регистрация, поэтому вам нужно будет указать свой email адрес для получения кода активации.

    Далее вам будет предложено выбрать тип и разрядность вашей системы, поддерживаются Windows Server, MaxOS X, Linux, FreeBSD, GPG Keys.

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

    Шаг 2. Запуск Nessus

    После завершения установки, откроется браузер по умолчанию с сообщением, как показано ниже. Nessus построен на клиент-серверной архитектуре. Вы установили сервер на localhost, а в роли клиента выступает браузер.

    Вы, скорее всего, получите сообщение, в котором говорится: «Your connection is not secure». Нажмите «Advanced».

    Затем добавьте исключения для подключения Nessus по 8834 порту.

    Шаг 3. Настройка Nessus Home

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

    Вам необходимо создать учетную запись. Именно ее нужно будет указывать для входа в Nessus.

    После ввода вашего логина и пароля будет необходимо активировать продукт. Находим письмо с кодом активации у себя в почте и вводим его в соответствующее поле на странице вашего Nessus.

    Когда это будет сделано, Nessus начнет загружать все актуальные обновления и плагины, необходимые для поиска уязвимостей в вашей сети. Процесс может занять некоторое время.

    Шаг 4. Запуск сканирования уязвимостей

    Когда Nessus завершит обновление, вас встретит вот такой экран, как показано ниже. Нажмите «New Scan».

    Это откроет новую страницу, на которой вы сможете выбрать тип сканирования. Обратите внимания, там всегда содержаться самые актуальные на сегодняшний день модели угроз.

    Давайте нажмем на «Basic Network Scan».

    Откроется страница, наподобие приведенной ниже, на которой вас попросят указать имя вашего сканирования (можно указать любое понятное для вас, например, First Scan). Также необходимо будет указать узлы, которые будем сканировать. Можно указать всю подсеть IP адресов 192.168.1.0/24. Нажимаем «Save».

    Теперь нажимаем кнопку «Launch», чтобы запустить сканирование уязвимостей.

    Шаг 5. Просмотр результатов сканирования

    По результатам сканирования мы получаем список с IP адресами и связанные с ними риски. Риски имеют цветовую кодировку.

    Нажимаем «vulnerabilities» в верхнем меню, чтобы отобразить все уязвимости, обнаруженные в сети.

    Если кликнуть по конкретной уязвимости, то мы получим более детальную информацию. Ниже приведен пример уязвимости «CodeMeter».

    Важно отметить, что помимо описания уязвимости, в отчете присутствует также и способ ее исправления и закрытия (раздел Solution).

    Результаты сканирования можно сохранить в различных форматах. Откройте вкладку «Экспорт» выберите формат файла отчета:

    Заключение

    Nessus Vulnerability Scanner от компании Tenable даже в бесплатной Home версии представляет собой достаточно простой в использовании, но в то же время мощный сканер уязвимостей. Главным его достоинством является то, что в нем всегда можно найти актуальные модели угроз, на возможность эксплуатации которых он быстро и качественно проверит вашу сеть.

    Помните, что успех качественной информационной безопасности — это регулярный аудит!

    Но не забывайте, что сканирование чужих сетей, может иметь последствия в виде проблем с законом!

    Обнаружение активов с помощью Nessus: первый шаг по оценке киберрисков

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

    Полная инвентаризация информационных активов всегда была первым условием для эффективного управления уязвимостями. Поверхность атаки постоянно растет и усложняется, поэтому возможность находить все ресурсы в сети сегодня важнее, чем когда-либо. Необходимо уметь выявлять не только обычные ИТ-ресурсы, но и ресурсы, связанные с операционными технологиями (ОТ) и «теневым ИТ». Любые ресурсы, которые остаются вне поля вашего зрения, представляют собой дополнительный риск.

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

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

    1. повышения глубины детализации ресурсов и обнаружения «слепых зон»;
    2. базового управления уязвимостями, которое в основном полагается на такие данные как установленное ПО или его версии;
    3. риск-ориентированного управления уязвимостями, которое осуществляет точный расчет метрик киберрисков для Tenable Lumin.

    Информация, полученная в результате инвентаризации ресурсов, напрямую влияет на метрики Lumin, например, на рейтинг критичности актива (Asset Criticality Rating, ACR), т. к. он рассчитывается на основе данных о типе устройства и его функциях. Другая метрика, оценка риска актива (Asset Exposure Score, AES), основана на информации базового управления уязвимостями, а значит, и на информации об инвентаризации.

    Обнаружение активов с помощью сканера Nessus

    Обнаружение активов в сканерах Nessus выполняется с помощью множества плагинов. В то время как большая часть плагинов (более 95%) отвечает за выявление уязвимостей, в процессе обнаружения ресурсов используются специализированные плагины (многие из них имеют пометку INFO), которые извлекают точную информацию о хосте. Стоит заметить, что сканеры Nessus в основном используются для ИТ-пространства, в том числе для теневых ИТ. Для сканирования ресурсов АСУ ТП применяются другие продукты Tenable, например, Tenable.ot.

    Процесс обнаружения ресурсов логически структурирован и проходит в четыре этапа, которые показаны на рисунке 1: сканирование портов, обнаружение сервисов и протоколов, определение ПО и снятие отпечатка ОС.

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

    Четыре этапа обнаружения ресурсов:

    1. Сканирование портов. Сканер Nessus разными способами пингует узел, находит открытые порты и определяет, нужно ли продолжать сканирование.
    2. Обнаружение сервисов и протоколов. Nessus отправляет тестовые запросы на открытые порты в поисках сервисов, которые их слушают, и известных протоколов.
    3. Определение ПО. Главная цель — составить список различных приложений, их версий и патчей, которые есть на узле.
    4. Наконец, на основе всей информации, полученной на предыдущих этапах, Nessus пытается определить тип ОС и ее версию на удаленном узле.

    В следующих разделах будут описаны определенные этапы, а также задействованные на них плагины и их основные группы.

    Сканирование портов

    Сканирование в Nessus начинается с проверки, доступен ли хост онлайн. Если хост онлайн, то составляется список обнаруженных на нем открытых портов. Чтобы определить, принадлежит ли данное имя или IP-адрес активному хосту, первым при сканировании обычно запускается плагин Ping Remote Host (10180), но его можно отключить. Если этот плагин не получает ответа от хоста, то хост считается неактивным, и процесс сканирования прекращается. Если же хост активен, то Nessus попытается просканировать его порты с помощью различных плагинов из группы для сканирования портов. Это можно сделать как удаленно, так и локально (если доступна учетная запись). Обнаружение открытых портов — крайне важный этап в работе любого сетевого сканера, т. к. это обеспечивает последующее обнаружение сервисов и отправление на них тестовых запросов, а также дальнейшую коммуникацию с удаленным узлом.

    Перед тем, как продолжить сканирование, Nessus проверяет, может ли узел оказаться «хрупким» ресурсом, например, принтером или устройством АСУ ТП. Большое количество и разнообразие запросов, посылаемых к таким ресурсам при активном сканировании, может негативно сказаться на их работе. По этой причине в сканер по умолчанию встроена функция, которая позволяет уберечь хрупкие ресурсы. Плагины для прекращения сканирования, например, 22481 и 11933, остановят процесс при обнаружении подобного ресурса.

    Рисунок 2: этап сканирования портов в Nessus

    Обнаружение сервисов и протоколов

    По списку открытых портов на узле сканер выявляет сервисы и протоколы, в основном с помощью плагинов из группы для обнаружения сервисов.

    Плагины этой группы (главным образом, плагин 22964) отправляют тестовые запросы на открытые порты и анализируют их ответы, чтобы определить, какие сервисы запущены на удаленном узле. Информация об известных и неизвестных сервисах (например, баннер сервиса, версия сервиса или SSL-инкапсуляция) сохраняется для использования плагинами на следующих этапах обнаружения.

    Затем, на основе данных о выявленных сервисах, сканер отправляет тестовые запросы к конкретным протоколам и их версиям, например, к протоколам HTTP (10582, 10107), SSL / TLS (21643), SSH (10267), Telnet (10280), SMB (10394, 10150), SNMP (40448), SMTP (10263) и многим другим. Нужно отметить два особых случая: часть тестовых запросов к протоколам SMB и SSH отправляется сразу же после пингования узла, т. к. оба эти протокола могут быть использованы для сканирований с использованием учетных данных, в том числе для локального сканирования портов.

    Определение ПО

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

    1. локальные, основанные на доступе через учетную запись и информации о локальной системе;
    2. удаленные, в которых на конкретные протоколы и сервисы отправляются тестовые запросы и считываются отпечатки этих протоколов и сервисов;
    3. комбинированные, где применяются средства как локального, так и удаленного обнаружения.

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

    Локальные проверки

    При сканировании с использованием учетной записи Nessus запускает несколько плагинов для поддерживаемых ОС (Unix-подобных или Windows). Эти плагины можно назвать «локальными перечислителями» (local enumerators), они предназначены для получения информации об основных характеристиках системы, в том числе об установленных патчах и ПО (плагины 13855, 97993, 83991), а также о процессах и сервисах (110483, 70329). На следующих этапах другие плагины могут собрать эту информацию, чтобы использовать ее при определенных видах обнаружения или других проверках. Разберем пару примеров, чтобы лучше понять этот процесс: один для Windows, другой для Unix-подобной ОС.

    Для начала рассмотрим случай типичного локального детекта клиента Zoom в системе Windows (плагин 118801). Данный плагин проверяет информацию из реестра Windows, полученную от плагина 13855. В зависимости от полученных данных будут проведены дополнительные проверки реестра и файловой системы, чтобы найти информацию о версии приложения и проверить расположение установочного файла.

    Теперь рассмотрим случай локального обнаружения Java-приложения в системе Unix (64815). Процесс этого обнаружения немного сложнее, потому что Java может присутствовать в системе по-разному. Этот плагин производит комбинацию проверок, основываясь на информации файловой системы, данных диспетчера пакетов и запущенных процессах.

    Удаленные проверки

    Как уже упоминалось, удаленное обнаружение основано на отправлении тестовых запросов к протоколам и сервисам и считывании их отпечатка. Удаленное обнаружение не такое точное, как локальное, но оно не требует использования учетных записей, что помогает обнаружить слепые зоны в сети. В качестве примера мы рассмотрим удаленное обнаружение на основе протокола HTTP.

    Обнаружение на основе HTTP, скорее всего, преобладает среди других видов удаленных обнаружений в Nessus, потому что веб-серверы, веб-приложения и HTTP-соединения есть практически везде. На рисунке 6 показан пример обнаружения веб-сервера Apache на основе HTTP (плагин 48204). Здесь изображен поток информации от плагинов обнаружения сервисов и протоколов (например, 10582), а также процесс того, как дополнительные плагины агрегируют данные об HTTP-серверах в целом (10107, 19689) и о веб-сервере Apache в частности (111465).

    Комбинированные проверки

    Наконец, при комбинированном обнаружении информация собирается и из локальных, и из удаленных источников. Например, плагин для обнаружения операционной системы Cisco IOS (47864) собирает информацию от удаленных плагинов для обнаружения протокола SNMP (10800, 10969) и от «локальных перечислителей» (12634). Обратите внимание, что большинство видов комбинированных обнаружений не объединены в один плагин, а представлены в отдельных локальных и удаленных плагинах обнаружения, например, сервера Weblogic (71642, 71643, 73913), Apache HTTP Server (48204, 141262, 141394) и др.

    Определение типа ОС

    Определение типа ОС — последний шаг в процессе инвентаризации ресурсов, когда сканер анализирует информацию, полученную на всех предыдущих этапах, и делает наиболее точное предположение об ОС узла. На рисунке 8 показано, что плагин для определения ОС (11936) полагается на множество других плагинов и различных протоколов. Каждый из этих плагинов может сделать собственное предположение, которое имеет соответствующую степень достоверности. Степень достоверности определяется в каждом отдельном случае и во многом зависит от конкретного протокола и задействованных отпечатков.

    В таблице ниже можно увидеть конкретный пример с использованием четырех методов считывания отпечатка ОС. Плагин для определения типа ОС выберет метод с наивысшей степенью достоверности (в этом случае это локальное обнаружение протокола SMB), и предположение на основе этого метода будет объявлено как распознанная ОС.

    Метод Предположение Степень достоверности
    HTTP Microsoft Windows 70
    SMB (удаленное обнаружение) Windows 6.3 70
    MSRPC Microsoft Windows Server 2012 R2 Standard 99
    SMB (локальное обнаружение) Microsoft Windows Server 2012 R2 Standard 100

    Источник: Tenable

    Следует заметить, что только часть методов считывания отпечатка может сделать предположение о типе ОС. Например, предположение HTTP-плагина об ОС (плагин 25247) может быть сделано только тогда, когда мы обнаружим этот протокол на удаленном хосте, получим баннер и сопоставим с известным отпечатком ОС в плагинах Nessus. Кроме того, некоторые методы позволят извлечь более подробную информацию, чем другие: плагин для вероятностного определения отпечатка (132935), возможно, сделает предположение об основной версии дистрибутива Linux, в то время как локальный плагин для определения отпечатка Linux (25335) сможет точно определить конкретный дистрибутив, его версию и сборку.

    Заключение

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

    Об авторе

    Тайгер Оптикс является специализированным дистрибьютором решений по кибербезопасности. Компания основана в 2010 году в Российской Федерации и имеет представительства в Казахстане, Беларуси, Азербайджане и Узбекистане.

    Мы помогаем партнерам и заказчикам повышать защищенность на всем протяжении корпоративной ИТ-инфраструктуры – от гибридного ЦОДа до конечных точек – рабочих станций и мобильных устройств.

    Читайте также:  Сервер шлюза удаленных рабочих столов временно недоступен windows
    Оцените статью