Pull to refresh

Сравнение инструментов сканирования локальной сети

Information SecurityIT Infrastructure

Когда я работал в нескольких государственных организациях кавычкодавом, овощем пентестером, суровые бородатые дяди в свитерах учили меня использовать только Nmap для сканирования сети. Сменив место работы, Добби стал свободен от предрассудков и решил выбрать сканер самостоятельно на основании псевдо-объективных данных сравнения реального функционала популярных сканеров, которые смог найти в сети самостоятельно, или, спросив у коллег, какой их любимый сканер. Собственно, о результатах внутреннего холливара сравнения сетевых сканеров и решил написать статью. Объективность не гарантирую, но постарался сделать колличественный анализ. Кому интересно, что из этого вышло, добро пожаловать под кат.

Старый и опытный волк безопасник предложил свой любимый и привычный консольный Nmap. Ещё один наш выходец из «госухи», combonik, говорил, что разницы нету, опенсорсный или вендорский, главное — веб-интерфейс для работы. Ещё наш погонщик менеджер сказал, что вендорские сканеры — самые лучшие, аргументируя свои слова тем, что такие сканеры имеют постоянную поддержку, удобный интерфейс для работы и постоянные обновления.

Дабы сгладить наши противоречия, было решено провести блиц-тестирование сетевых сканеров уязвимостей. Холивар среди пентестеров Hacken привел нас к новой задаче — проведению сравнительной характеристики по результатам сканирования. Для проведения сравнения эффективности сканирования было выбрано четыре сканера: Rapid7 Nexpose, Tenable Nessus, OpenVAS 9 и Nmap. Их выбрали на основании аналитики интернет-публикаций и личного опыта. Лично я делал ставку на Nessus, но увы, не угадал.

Rapid7 Nexpose – это сканер уязвимостей, который выполняет активное сканирование IT-инфраструктуры на наличие ошибочных конфигураций, дыр, вредоносных кодов, и предоставляет рекомендации по их устранению. Под анализ попадают все компоненты инфраструктуры, включая сети, операционные системы, базы данных и web-приложения. По результатам проверки Rapid7 Nexpose в режиме приоритетов классифицирует обнаруженные угрозы и генерирует отчеты по их устранению. [2]

Tenable Nessus Scanner – это сканер, предназначенный для оценки текущего состояния защищённости традиционной ИТ-инфраструктуры, мобильных и облачных сред, контейнеров и т.д. По результатам сканирования выдаёт отчёт о найденных уязвимостях. Рекомендуется использовать, как составную часть Nessus Security Center. [3]

OpenVAS — это сканер уязвимостей с открытым исходным кодом. OpenVAS предназначен для активного мониторинга узлов вычислительной сети на предмет наличия проблем, связанных с безопасностью, оценки серьезности этих проблем и для контроля их устранения. Активный мониторинг означает, что OpenVAS выполняет какие-то действия с узлом сети: сканирует открытые порты, посылает специальным образом сформированные пакеты для имитации атаки или даже авторизуется на узле, получает доступ к консоли управления, и выполняет на нем команды. Затем OpenVAS анализирует собранные данные и делает выводы о наличии каких-либо проблем с безопасностью. Эти проблемы, в большинстве случаев касаются установленного на узле необновленного ПО, в котором имеются известные и описанные уязвимости, или же небезопасно настроенного ПО. [1,6]

Nmap — свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети (портов и соответствующих им служб). Изначально программа была реализована для систем UNIX, но сейчас доступны версии для множества операционных систем.[4,5]

Тестовая среда


Для проведения тестирования я собрал тестовую сеть на VMware Workstation 12 Pro в схему, которая представлена на рис. 1.


Рис. 1. Схема сети

Поднятые виртуалки:

  • Windows 7 со всеми установленными обновлениями, запущенным приложением XAMPP, развёрнутыми сервисами MySQL и Apache. Также развёрнута тестовая система DVWA.
  • Metasploitable 2 – операционная система с предустановленными уязвимыми сервисами и приложениями, которая используется для тестирования.
  • Ubuntu 16.04 c установленным IDS Suricata [10] и сконфигурированным iptables [9].
  • Kali Linux — дистрибутив Linux, который используется для тестирования на проникновения.
  • Перечень уязвимых сервисов в Metasploitable 2 приведены в таблице 1.


Таблица 1
Service Port Status
Vsftpd 2..four 21 Open
OpenSSH four.7p1 Debian 8ubuntu 1 (protocol 2.zero) 22 Open
Linux telnetd service 23 Open
Postfix smtpd 25 Open
ISC BIND 9.four.2 53 Open
Apache httpd 2.2.eight Ubuntu DAV/2 80 Open
A RPCbind service 111 Open
Samba smbd .X 139, 445 Open
r companies 512, 513, 514 Open
GNU Classpath grmiregistry 1099 Open
Metasploitable root shell 1524 Open
A NFS service 2048 Open
ProFTPD 1..1 2121 Open
MySQL 5.zero.51a-3ubuntu5 3306 Open
PostgreSQL DB eight..zero — eight..7
5432 Open
VNC protocol v1. 5900 Open
X11 service 6000 Open
Unreal ircd 6667 Open
Apache Jserv protocol 1. 8009 Open
Apache Tomcat/Coyote JSP engine 1.1 8180 Open

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

Конфигурация iptables[9]:

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A INPUT -i lo -j ACCEPT
iptables -I FORWARD -j ACCEPT
iptables -A FORWARD -i ens34 -o ens33 -j ACCEPT
iptables -t nat -A POSTROUTING -o ens33 -s 192.168.234.0/24 -j MASQUERADE
iptables -A FORWARD -i ens33 -m state --state ESTABLISHED, RELATED -j ACCEPT
iptables -A FORWARD -i ens33 -o ens34 -j REJECT

Nessus Scanner запускался в режиме «Basic Network Scanning». [3]
Rapid 7 Nexpose запускался в режиме «Full audit without Web Spider». [2]
OpenVAS 9 запускался в режиме «default». [1,6]
Nmap запускался двумя командами: [4,5]

  • nmap -sV -T4 -O -F --version-light 192.168.234.130-131
  • nmap -Pn --script vuln 192.168.234.130-131

Результаты тестирования


Nexpose обнаружил 527 уязвимости (см. Диаграмма 1), из них:
Репорт

167 – получили статус “critical” — уязвимости необходимо закрывать в первую очередь.
349 – получили статус “severe” — уязвимости сложны в эксплуатации, но могут привести к тяжёлым последствиям.
46 – получили статус “moderate” — найденные уязвимости могут предоставить атакующему информацию о системе, которую он может применить при проведении атаки.

Найдены уязвимости не только тестированных систем, но и потенциальные уязвимости в системе виртуализации.


Tenable Nessus обнаружил 168 уязвимостей (см. Диаграмма 2), из них:
Репорт

3 – получили статус “critical”
9 – получили статус “high”
33 – получили статус “medium”
5 – получили статус “low”
118 получили статус “info”

Уязвимости уровня “critical” и “high” необходимо закрывать в первую очередь.
Уязвимости уровня “medium” — сложны в эксплуатации, но при должной проработке могут нанести ущерб.
Уязвимости уровня “low” и “info” — могут предоставить атакующему информацию о системе, которую он может применить при проведении атаки через другие векторы.


OpenVAS 9 обнаружил 53 уязвимости (см. Диаграмма 3), из них:
Репорт
Результаты срабатывания IDS

16 – получили статус “high”
33 – получили статус “medium”
4 – получили статус “low”

Уязвимости уровня “high” необходимо закрывать в первую очередь.
Уязвимости уровня “medium” — сложны в эксплуатации, но при должной проработке могут нанести ущерб.
Уязвимости уровня “low” могут предоставить атакующему информацию о системе, которую он может применить при проведении атаки через другие векторы.



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

Использование скрипта “vuln” определило следующие типы уязвимостей:

  • открытый telnet
  • http-csrf
  • http-enum
  • http-sql-injection
  • http-vuln-cve2017-1001000
  • rmi-vuln-classloader
  • mysql-vuln-cve2012-2122
  • ssl-ccs-injection
  • ssl-dh-params
  • ssl-poodle
  • irc-botnet-channels
  • http-cookie-flags

Результаты работы Nmap и IDS
Результаты работы Nmap с использованием скрипта «vuln» и IDS

Выводы


Для формирования выводов я применил количественный метод оценки по суммарному количеству найденных уязвимостей. В результате выяснилось, что наибольшую глубину сканирования проводит Nexpose. Довольно слабо отработал Nessus, так как в режиме сканирования сети выдал много служебных данных о системах и сервисах, которые только дают информацию для аналитики. С очень слабой стороны показал себя сканнер OpenVAS 9 с последними обновлениями. Отдельного слова требует Nmap – очень хороший инструмент для проведения аналитического тестирования с возможностью расширения с помощью NSE-скриптов.

Во время тестирования IDS Suricata обнаружила сканнеры NMap и OpenVAS.

Данное тестирование не является каноничным, как например, тесты Gartner или NSS Labs. Но не смотря на это, думаю, статья будет актуальна для специалистов в сфере администрирования систем и технического аудита.

P.S. А для чего это всё делалось?

Необходимо было принять на вооружение выбрать сканер для компании Hacken. Кроме того, проведение сканирования внутренней сети регламентировано стандартами управления информационной безопасности в коммерчиских организациях, банковской, энергетической и прочих сферах деятельности. Сканирование сети необходимо проводить не только для получения сертификации для организации, но и для управления уязвимостями в информационно-телекоммуникационной системе, контроля обновления операционных систем и другие не менее важные задачи по управлению информационной безопасностью. [8, 11]

Tags:vulnerability assessmentnetwork securityvulnerability scanningvulnerability scanner
Hubs: Information Security IT Infrastructure
Total votes 28: ↑23 and ↓5 +18
Views43.4K

Popular right now

Security Engineer
from 2,000 to 5,000 $CoinLoanRemote job
Преподаватель авторизованных курсов "Kaspersky"
from 80,000 to 160,000 ₽Центр компьютерного обучения СПЕЦИАЛИСТМоскваRemote job
Application Security Specialist
from 150,000 ₽СindicatorСанкт-ПетербургRemote job
IT Recruiter
from 50,000 ₽Red LabRemote job
IT Recruiter
from 30,000 ₽Digital NomadsТомск