Технологии защиты информации в сети

Примеры
Задачи

Возрождение

Лекции
Чертеж

Протокол взаимодействия

В случае распределённой архитектуры клиентская и серверная части взаимодействуют друг с другом по сети. На транспортном уровне для этого могут быть использованы протоколы TCP или UDP (для всех четырёх сравниваемых сканеров разработчиками был выбран протокол ТСР).

На прикладном уровне может использоваться либо свой собственный протокол, либо стандартный. Для сканера Internet Scanner это свой собственный протокол, в сканерах Nessus и Retina для взаимодействия между клиентскими и серверными частями используется протокол SSL/TLS.

Отношения между клиентской и серверной частями

При взаимодействии между консолью и агентами могут быть использованы разные модели отношений:

1. Один к одному

2. Один ко многим (при этом может быть две схемы: «одна консоль - много агентов», «один агент - много консолей»)

3. Многие ко многим

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

Ещё следует учитывать, что роли консолей могут быть разными, например, одна консоль подключена в режиме «read/write», другая – в режиме «read only».

Среди сравниваемых сканеров наиболее гибким в плане отношений между клиентской и серверной частями выглядит Nessus. В нём реализована модель «многие ко многим» без всяких ограничений с равноправными консолями.

Internet Scanner, в принципе, реализован по схеме «Многие ко многим», но при одновременном запуске сканирования с нескольких консолей одно задание (запущенное первым) начинает выполняться, остальные «становятся» в очередь.

Количество соединений с серверной частью

Этот параметр показывает, какое количество соединений требуется установить со стороны компонентов управления для полноценного управления сканером и получения от него результатов. При этом все операции могут осуществляться в рамках одного соединения (например, для сканера Nessus) или в рамках нескольких соединений, например, двух для Internet Scanner (при этом одно соединение используется для управления, другое – для получения результатов сканирования).

Управление

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

• Управление через графический интерфейс

• Управление при помощи командной строки

• Управление через WEB-интерфейс

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

Управление при помощи командной строки может дать следующие преимущества:

• Более быстрое выполнение операций, поскольку не требуется отображать в графическом виде ход их выполнения;

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

• Возможность выполнения операций по расписанию средствами ОС (например, при помощи Task Scheduler);

• Возможность вывода и просмотра отладочной информации при разрешении проблем и

выяснении причин сбоев.

Из сравниваемых сканеров возможность управления через интерфейс командной строки имеется у Internet Scanner, Nessus, LANguard, Retina и XSpider. Интересно, что для Internet

Scanner при этом появляется возможность удалённого управления без использования системы SiteProtector.

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

Из перечисленных продуктов эта возможность имеется только для Internet Scanner (при условии управления им через SiteProtector) и для сканера Retina (при условии подключения к REM).

Защита собственных данных

Сканеры безопасности – это, прежде всего, средства защиты. Тем не менее, они сами нуждаются в защите от несанкционированного доступа. И тому есть несколько причин:

1. Как уже говорилось выше, сканер безопасности может быть не только средством защиты, но и средством нападения, поэтому его использование должно осуществляться только авторизованными пользователями.

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

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

Для сравниваемых сканеров дела обстоят следующим образом. Для всех сканеров, имеющих распределённую архитектуру, предусмотрена защита взаимодействия между клиентской и серверной частями. При этом у Internet Scanner для этой цели используется собственный протокол, а Nessus и Retina пользуются стандартным – SSL.

Для распределённой архитектуры должна быть предусмотрена аутентификация между клиентской и серверной частями.

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

уровне компьютера или на уровне пользователя.

Компоненты сканера после его развёртывания – это файловая система, реестр и СУБД (если она предусмотрена для хранения результатов). Разграничения доступа к перечисленным компонентам не предусмотрено ни в одном из рассматриваемых сканеров. Для его реализации рекомендуется использовать средства ОС, т. е. назначать допуски, пользуясь, например, свойствами файловой системы NTFS. Кстати, Internet Scanner делает это автоматически в процессе установки. Если сканер использует стандартную СУБД, необходимо задействовать встроенные в неё механизмы защиты данных.

Краткое резюме: Механизмы защиты реализованы, главным образом, в сканерах, имеющих распределённую архитектуру. В автономном варианте защита от несанкционированного запуска имеется только в сканере Shadow.

Трудоёмкость развёртывания

Сканеры XSpider, LANguard, Retina и Shadow, как правило, не вызывают затруднений при установке. Последующая установка обновлений также не вызовет затруднений, поскольку производится автоматически при первом запуске сканера. Время, потраченное на установку, лежит в пределах 5 минут (при установке обновлений многое зависит от пропускной способности канала для подключения к Интернет). Сканер Nessus, возможно, чуть сложнее в установке, поскольку его серверная часть устанавливается в среде UNIX, кроме того, потребуется отдельно установить клиентское программное обеспечение. Поэтому на установку сканера Nessus может быть потрачено чуть больше времени.

Наконец, самый длительный процесс установки у Internet Scanner. После установки его самого потребуется установить как минимум 21 обновление. В общей сложности эта процедура может отнять 1 час. Если же потребуется использовать распределённую архитектуру, то необходимо установить систему SiteProtector. Эта система достаточно сложна, и на её установку также может быть потрачено несколько часов (не говоря уже о предварительном обучении, которое в данном случае может сэкономить время на развёртывание системы).

Идентификация устройств сети

Перед тем, как искать уязвимости, сканер безопасности должен убедиться, что узел доступен. Эта задача называется идентификацией узла сети и может быть выполнена несколькими методами:

1. ICMP Ping

2. Другие сообщения ICMP

3. TCP Ping

4. UDP Discovery

5. ARP Scan

6. Пассивные методы (анализ сетевого трафика).

Подробное рассмотрение этих методов выходит за рамки данного обзора. Что касается сравниваемых сканеров, то, разумеется, все они поддерживают метод ICMP Ping. Этот метод очевиден и не нуждается в комментариях. Однако он не всегда эффективен. Если узел блокирует запросы ICMP ECHO или защищён МЭ, который блокирует запросы ICMP ECHO, метод ICMP Ping не годится.

Следует заметить, что кроме запросов ECHO по протоколу ICMP можно отправлять и другие запросы, например, timestamp. Кстати, на этот запрос отвечают многие ОС, но, как видно из таблицы, в качестве метода идентификации в сканерах безопасности он не используется6.

Следующий метод – TCP Ping. Это очень эффективный метод, потому что, даже если исследуемый порт окажется закрытым, ответ всё равно придёт, главное, чтобы узёл был включён, и не было фильтрации трафика соответствующего типа.

Идентификация служб и приложений

Открытый порт ещё не означает, что его использует соответствующая ему служба. Например, сервер НТТР может использовать порт 80, а может, например, порт 8081. Для сканера очень важно определить, какая служба соответствует открытому порту, поскольку далее предстоит

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

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

1. Анализ «баннеров»

2. Использование команд служб прикладного уровня

3. Учёт особенностей работы сервисов прикладного уровня.

4. Различные эвристические методы

Идентификация операционных систем

Проблема определения типа и версии операционной системы удаленного узла весьма актуальна при проведении сканирования. Чем точнее будет определена ОС тестируемого узла, тем эффективнее будет выполнена его проверка. Более того, набор выполняемых проверок может зависеть от результатов определения ОС (как, например, в сканере Internet Scanner). Идентификация ОС – довольно сложная задача, далеко не всегда решаемая однозначно. Вот известные методы идентификации ОС, используемые в настоящее время:

• Простейшие. Подключение на открытые порты и анализ отклика работающих на них служб. Отклик часто содержит информацию об операционной системе.

• Опрос стека TCP/IP. Впервые реализован в известном сканере nmap. На сегодняшний день это наиболее эффективный метод идентификации операционных систем.

• Анализ пакетов ICMP. Чаще всего заключается в исследовании пакета ICMP Port Unreachable (что также реализовано в сканере nmap). Однако этот метод может быть существенно расширен и дополнен, что реализовано, например, в утилите xprobe.

• Анализ работы таймера повторной передачи ТСР. На открытый порт исследуемого узла отправляется SYN-запрос. После получения подтверждения (пакета SYN-ACK) третий пакет (завершающий процедуру установления соединения) не отправляется. Исследуемый узел через некоторое время повторно отправит пакет SYN-ACK. Анализу подвергаются количество таких пакетов и изменение времени между пересылками. Метод реализован в утилите RING.

• Тесты в отношении порта 0. Различные запросы, посланные в отношении «нулевого» порта TCP или с «нулевого» порта, как оказалось, по-разному обрабатываются разными ОС.

• Эвристические. Различные методы, основанные на личном опыте разработчиков сканеров, отклики от служб и приложений исследуемого узла, сочетание открытых портов и т. п.

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

Что касается сравниваемых сканеров, то все они используют простейшие методы идентификации ОС и анализ пакетов ICMP. Механизм опроса стека (и, соответственно, базу сканера nmap) используют Retina, Nessus, Internet Scanner, XSpider7. Остальные названные методы не реализованы в сканерах безопасности, остаются лишь эвристические.

Ланшафтный дизайн