ИНСТРУМЕНТЫ

Алексей Марков, Сергей Миронов, Валентин Цирлов,

Сотрудники НПП "Безопасные информационные технологии" (www.npp-bit.ru)

С развитием информационных систем и технологий растет и число уязвимостей программных ресурсов. Широкое распространение средств реализации угроз, в том числе вирусного типа, обуславливает актуальность различных систем анализа защищенности. При аудите безопасности, аттестации и сертификации автоматизированных систем (АС) часто используются сетевые сканеры уязвимостей, позволяющие проводить инвентаризацию сети и идентификацию брешей. На рынке программных средств представлено довольно много подобных сканеров - от условно бесплатных и с открытым кодом до специализированных комплексов аудитора информационной безопасности. В этой статье рассматриваются особенности сетевых сканеров, работающих в среде Windows.

Диаграмма результатов сравнительного анализа сканеров

 

Общие возможности сетевых сканеров уязвимостей

Сетевые сканеры служат для анализа защищенности сети путем сканирования и зондирования сетевых ресурсов и выявления их уязвимостей. Применение сканеров позволяет решить следующие задачи:

- инвентаризация ресурсов, включающих устройства сети, ОС, службы и ПО;

- идентификация и анализ уязвимостей;

- формирование отчетов, в том числе с описанием проблем и вариантами устранения.

Для оценки эффективности решения этих задач мы исследовали пять сканеров:

- "Ревизор сети" 1.2.1.0 ("ЦБИ-сервис");

- XSpider 7.0 (Positive Technologies);

- Retina 4.9.221 (eEye Digital Security);

- Tenable NeWT 2.0 (Tenable Network Security);

- Internet Scanner 7.0 (Internet Security Systems).

Отбирая продукты на тестирование, мы отдали предпочтение отечественным сканерам, прошедшим сертификацию в нашей стране, - XSpider и "Ревизор сети". Выбор Internet Scanner (IS) обусловлен его лидирующим положением по объему продаж и декларируемому количеству обнаруживаемых уязвимостей (см.: Snyder J. We tested five VA scanners to see how well they illuminate holes in your systems. How Vulnerable? Information Security, March 2003). Из стоимостных соображений был взят для исследования широко известный и доступный на некоммерческой основе сканер NeWT (Windows-порт Nessus). И кроме того, к этому списку был добавлен распространенный сканер Retina (см., например, www.ptsecurity.ru/compare2.asp). Все сканеры функционируют в среде Windows и имеют нераспределенную архитектуру (см. табл. 1).

Таблица 1. Сетевые сканеры

    

Следует отметить, что в наши цели не входило академическое всестороннее исследование сканеров; не проверяли мы их возможности и как инструмента хакерских атак. Поэтому в качестве среды испытаний были выбраны типовые объекты АС, подлежащие частым проверкам на предмет безопасности в реальной жизни. Испытательный стенд включал подсеть класса C с рабочими станциями, функционирующими под управлением MS Windows 95/98/NT 4.0 SP1 Server/2000 Professional/2003 Server, MCBC 3.0 и Red Hat Linux 7.1. Выбор отечественной защищенной ОС МСВС не случаен, так как она рекомендована для построения АС в защищенном исполнении по линии госзаказа. Помимо стандартных служб дополнительно использовались почтовые серверы Kerio 5.5.0, Merak 4.4.1, Web-серверы Apache 2.0.50, IIS 6.0, IIS 2.0, FTP-сервер BlackMoon 2.2.3 и MS SQL Server 8.00.760. Установка всех средств и систем выполнялась в режимах по умолчанию. Нестандартные серверные компоненты и средства межсетевого экранирования отсутствовали, параметры протоколов стека TCP/IP были установлены в значения по умолчанию.

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

К основным проверкам были отнесены следующие: 1) оценка качества сканирования портов и возможности идентификации ОС и сервисов; 2) оценка возможностей обнаружения уязвимостей; 3) анализ удобства интерфейса и полноты формирования отчетов.

Методика оценки результатов исследования

1. Оценка качества инвентаризации ресурсов была разбита на следующие проверки:

- сканирование TCP- и UDP-портов;

- идентификация ОС;

- идентификация TCP- и UDP-сервисов.

Несмотря на то что для первой проверки удобны сканеры портов (такие, как nmap), сканеры уязвимости определяют активные сетевые сервисы, используя результаты, полученные на этапе сканирования портов. Поэтому данная проверка представляется очень важной.

Сканирование TCP- и UDP-портов проводилось для фиксированной конфигурации испытательного стенда, и затем результаты были сопоставлены с реальным перечнем открытых портов, полученных с помощью штатных средств соответствующей ОС. При этом давались следующие экспертные оценки: +1 за правильно определённый открытый порт; -1, если закрытый порт ошибочно определялся как открытый или открытый - как закрытый.

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

Качество идентификации ОС оценивалось по результатам сканирования по следующим правилам: +3 балла за точно идентифицированную ОС (с точностью до версии); +1 балл за правильно идентифицированное семейство ОС; 0 баллов за результат выдачи списка возможных семейств (например, Windows и HP), в котором содержится правильный ответ; -1 балл за неправильно идентифицированную ОС.

Таблица 2. Сканирование портов

Дополнительно были проанализированы возможности сканеров по идентификации ОС с нестандартным набором сетевых сервисов и нестандартными параметрами протоколов стека TCP/IP.

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

Качество идентификации сервисов оценивалось в соответствии со следующей градацией: +3 балла за точно идентифицированный сервис (с точностью до версии); +1 балл за точно идентифицированное семейство сервисов; -1 балл за неидентифицированный сервис; -3 балла за ошибочно идентифицированный сервис.

Таблица 3. Идентификация ОС

Выбор такой оценочной системы мотивирован тем, что практическое значение может иметь только точная идентификация TCP- или UDP-сервиса. Идентификация семейства сервисов, наверное, в ряде случаев полезна, однако её явно недостаточно.

2. Качество обнаружения уязвимостей - основная характеристика сканера безопасности, но она наиболее трудно поддаётся формальной оценке. Для анализа были отобраны хорошо известные для данных версий продуктов уязвимости. Оценки выставлялись по следующим правилам: +2 балла за точно идентифицированную уязвимость; -1 балл за ложное срабатывание; -2 балла за существующую, но не идентифицированную уязвимость.

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

Таблица 4. Идентификация сервисов

3. При анализе удобства работы учитывались наличие планировщика (для проведения тестирования по расписанию), а также возможности:

- создания профилей проверок (пользовательских наборов проверок);

- генерации отчёта для технического специалиста, содержащего подробную информацию о проведенных проверках и их результатах;

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

- приостановки сканирования;

- повторного сканирования отдельных сервисов (что может быть полезно, например, при перезагрузке целевого компьютера).

Помимо этого для каждого сканера эксперты выставляли субъективную оценку удобства интерфейса пользователя.

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

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

1. При сканировании TCP-портов все сканеры, за исключением IS, при незначительном лидерстве XSpider в целом справились со сканированием портов. В лабораторных условиях продукт фирмы ISS показал неожиданно низкий результат.

Результаты сканирования UDP-портов у всех сканеров оказались неудовлетворительными. Относительно лидировали здесь "Ревизор сети" и IS, однако и тот и другой выдали ошибочные сообщения при сканировании рабочих станций под МСВС: победителей в данном тесте просто нет.

2. При идентификации ОС сканеры удовлетворительно определили операционную систему линейки Windows, показав менее точные результаты по Linux. Лучшие результаты были у NeWT, который определил все системы с точностью до версии или версии ядра. XSpider стабильно определил семейство ОС. Недостаточно высокие результаты оказались у "Ревизора сети".

Таблица 5. Анализ возможностей по обнаружению уязвимостей

3. При идентификации TCP-сервисов лидерами стали XSpider и NeWT (более 80% правильных откликов). Весьма низкий результат показал IS: ни один сервис не был идентифицирован с точностью до версии.

Результаты идентификации UDP-сервисов были неудовлетворительны для всех сканеров: не идентифицировано и половины сервисов. Значительное количество ошибочно определенных несуществующих сервисов продемонстрировал "Ревизор сети". "Лидерство" XSpider всё же вряд ли можно признать удовлетворительным результатом (победителя в данном тесте опять-таки нет).

4. По результатам анализа уязвимостей в лучшую сторону выделились NeWT, XSpider и Retina при лидерстве первого. Сканер IS в целом показал недостаточно высокие результаты, однако существенно лучше остальных справился с анализом конфигураций механизмов безопасности Windows (некорректные настройки политики паролей и разделяемые ресурсы).

Меньше всего ложных срабатываний отмечено у XSpider и IS. Весьма много их было у "Ревизора сети", обнаружившего уязвимости несуществующих сервисов. Так, даже после корректной идентификации Web-сервера сканер нашёл уязвимости у совершенно другого сервера.

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

Относительно интерфейса следует указать, что удобная возможность повторного сканирования отдельного сервиса присутствует только у XSpider. Из наиболее досадных недостатков интерфейса отметим трудно интерпретируемые переводы на русский язык названий служб в "Ревизоре сети", например: "Протокол загрузки сервера", "Протокол пересылки файлов" и др.

Таблица 6. Анализ удобства и полноты интерфейса

Следует отметить недостатки, присущие всем сканерам, а именно: отсутствие возможностей автоматизации исправлений и добавления собственных проверок, а также отсутствие автоматизированного контроля изменений в ресурсах сети после последнего сканирования. Демоверсии продуктов имеются только для XSpider, NeWT и IS.

Полученные в нашем исследовании оценки сканеров проиллюстрированы на диаграмме.

Заключение

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

Все сканеры недостаточно хорошо идентифицируют UDP-сервисы, что, очевидно, связано с особенностями метода UDP-сканирования.

Сканеры лучше работают с ОС линейки Windows NT, нежели Linux. Возможно, этот результат объясняется большей стандартизованностью ОС Microsoft.

Самый дорогостоящий сканер - IS - продемонстрировал в ряде случаев не слишком высокие результаты, тогда как некоммерческий представитель семейства Nessus оказался одним из лучших.

В лабораторных условиях NeWT и XSpider обеспечили наилучшие показатели (разница между ними находится в пределах статистической погрешности), Retina - хорошие результаты, несколько отстают IS и "Ревизор сети".

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