Выбрать язык


Выбрать язык | Show only


Русский | English


суббота, 20 февраля 2016 г.

Linux и системы обнаружения вторжений



Linux: применение в корпоративной сети


В условиях дефицита бюджета вопрос стоимости решения зачастую будет играть наиболее существенную роль. Решением, которое сократит расходы на первоначальном этапе до минимума, может быть использование программных средств с открытым исходным кодом (Open Source). Рассмотрим преимущества и недостатки использования бесплатного ПО и коммерческих программно-аппаратных комплексов.


Коммерческие продукты
Преимущества
Недостатки
- Гарантии производителя;
- Поддержка, обновления;
- SLA;
- Адаптация под основные требования заказчика;
- Отсутствие необходимости содержать собственный штат разработчитков ПО.
- Высокая стоимость;
- Невысокая гибкость при адаптации под нужды заказчика;
- Отсутствие гибкости при необходимости смены поставщика решения: проблемы миграции и интеграции.


Табл. 1. Преимущества и недостатки коммерческих программно-аппаратных комплексов для заказчика.


Как описано в таблице 1, оплачивая стоимость коммерческого решения, потребитель получает гарантии производителя, возможность обновления программных компонентов, а также, в зависимости от условий договора с поставщиком, определенный уровень технического сопровождения и гарантированное время реагирования производителя либо интегратора в случае сбоя в работе системы. Отсутствие необходимости содержания своего штата разработчиков ПО является преимуществом с финансовой точки зрения, однако, коммерческие решения полностью адаптируются под нужды заказчика не всегда на 100%, либо полное удовлетворение всем требованиям увеличивает стоимость решения. Еще одной проблемой может быть необходимость смены поставщика, вызванная либо отсутствием возможности расширения текущего решения согласно темпам развития инфраструктуры заказчика, либо другими причинами. В случае необходимости расширения участка инфраструктуры, основанного на оборудовании и программном обеспечении одного производителя, посредством добавления нового участка, необходимо предусмотреть наличие стандартных открытых интерфейсов взаимодействия. Если необходим перенос данных, возникает необходимость их конвертации из формата одного поставщика в формат другого, что также влечет затраты времени и денег. 


ПО с открытым исходным кодом
Преимущества
Недостатки
- Низкая стоимость;
- Отсутствие привязки к оборудованию производителя;
- Высокая гибкость при адаптации под свои потребности.
- Необходимость содержания своих разработчиков, квалифицированных инженеров, либо принятие рисков;
- Необходимость приобретения аппаратных средств;
- Гарантии, ответственность, SLA разграничиваются внутри компании.

Табл. 2. Преимущества и недостатки использования ПО с открытым исходным кодом.


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


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

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

Linux в сетевых сенсорах


Большинство систем обеспечения безопасности, так или иначе, связаны с производными от UNIX операционными системами. Один из самых популярных программных продуктов систем обнаружения вторжений – Snort (http://www.snort.org/) – можно назвать «родным» для UNIX-систем. Популярность его обусловлена возможностью использовать бесплатно, если нет крайней необходимости в регулярном обновлении сигнатур, и при этом возможностью создавать сигнатуры, адаптированные под свою специфику инфраструктуры.

Сетевые сенсоры производства Cisco Systems (http://www.cisco.com/go/ips) основаны на операционной системе Linux. В них существует 4 уровня доступа пользователей:
Viewer – уровень доступа без возможности редактирования;
Operatorбольшинство функций CLI IPS, кроме управления пользователями;
Administrator – «суперпользователь» IPS. Имеет право на произведение любых действий в IPS CLI, но не имеет доступа в консоль операционной системы;
Serviceпользователь операционной системы.

Работая от имени пользователя с уровнем доступа service, можно без труда определить тип операционной системы и ядра:
-bash-2.05b$ uname -a
Linux <hostname> 2.4.30-IDS-smp-bigphys #2 SMP Tue Aug 18 13:05:49 UTC 2009 i686 unknown
-bash-2.05b$ cat /proc/version
Linux version 2.4.30-IDS-smp-bigphys (@stbaker-kalel-lnx) (gcc version 2.95.3 20010315 (release)) #2 SMP Tue Aug 18 13:05:49 UTC 2009

Соответственно, Cisco IPS CLI – командная оболочка /usr/cids/idsRoot/bin/cidcli, которая запускается от имени пользователя cids операционной системы, заменяющая /bin/bash для пользователей с правами доступа viewer, operator и administrator:

-bash-2.05b$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/sbin/nologin
rpc:x:7:7:Portmapper RPC user:/:/sbin/nologin
rpcuser:x:8:8:RPC Service User:/home/nfs:/sbin/nologin
nfsnobody:x:9:9:Anonymous NFS User:/home/nfs:/sbin/nologin
cids:x:50:50:cisco ids process account:/usr/cids:/bin/bash
nobody:x:99:99:nobody:/home:/sbin/nologin
default:x:100:100:Default non-root user:/home/default:/sbin/nologin
cisco:x:101:50::/home/cisco:/usr/cids/idsRoot/bin/cidcli
andrey:x:102:50::/home/andrey:/bin/bash
admin:x:103:50::/home/admin:/usr/cids/idsRoot/bin/cidcli
user1:x:104:50::/home/user1:/usr/cids/idsRoot/bin/cidcli
user2:x:105:50::/home/user2:/usr/cids/idsRoot/bin/cidcli

Сетевые сенсоры производителей Lancope StealthWatch, Juniper Networks, IBM ISS Proventia также используют адаптированные под задачи агентов систем обнаружения и предотвращения вторжений собственные доработанные версии операционной системы Linux. Программные реализации IBM ISS RealSecure Network Sensor рассчитаны на использование как в Microsoft Windows, так и в Linux и некоторых других UNIX-системах. Соответственно, можно уверенно сказать, что большинство систем обнаружения вторжений основываются на ядре операционной системы Linux с разработанным для анализа и обработки трафика программным обеспечением.

Linux в системах управления IDS/IPS

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

- модуль управления агентами;
- модуль сбора событий;
- база данных;
- модуль обработки и представления информации;
- интерфейс просмотра событий и управления агентами.

В зависимости от поставщика и реализации решения, система управления может также содержать в своем составе:
- модуль корреляции событий;
- модуль архивации событий;
- модуль оповещения посредством сторонних систем (почта, SNMP-trap, syslog);
- сервер обновлений.

Что немаловажно, от возможностей системы управления зависит ее стоимость. Важна не только комплектация модулей, но и возможности, которые они позволяют выполнять.
Возможные функции компонентов системы управления IDS/IPS:
- модуль управления агентами: проверка на доступность агентов для системы управления, сбор статистических данных с сенсоров о текущей нагрузке на интерфейсы, процессоры, количестве событий различного уровня критичности, наличие сбоев в работе агентов;
- модуль сбора событий: обеспечение целостности, криптографической защищенности и гарантированности получения событий с сенсоров;
- база данных: хранение событий в соответствии с правилами, установленными администратором;
- модуль обработки и предоставления информации: преобразование данных и обработка управляющей информации различных модулей;
- интерфейс просмотра событий и управления агентами: отображение событий в необходимом режиме (реального времени, выборка за период), удобном для восприятия виде, сортировка, наличие фильтров, возможность экспорта событий, создание настраиваемых отчетов согласно заданным параметрам, распределение уровней доступа к информации пользователей системы управления;
- модуль корреляции событий: анализ событий согласно встроенному алгоритму и/или указанным настройкам, подавление ложных срабатываний и несрабатываний;
- модуль архивации событий: возможность архивирования устаревших событий в соответствии с настройками, обеспечение доступности архивных событий;
- модуль оповещения посредством сторонних систем (почта, SNMP-trap, syslog): оповещение о срабатывании сигнатур, сбоях в работе сенсоров, настраиваемые параметры оповещений;
- сервер обновлений: регулярная проверка наличия обновлений с сайта поставщика, предоставление возможности обновления компонентов.

Исходя из вышеперечисленных требований, можно вывести базовый набор модулей и их функционала, без которого система управления IDS/IPS не будет полноценной:

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

Подобным набором параметров обладает каждая система управления IDS/IPS, даже нулевой либо очень невысокой стоимости (входящая в комплект поставки решения). Есть две принципиальные схемы управления системами обнаружения вторжений:

Рис. 1. Схема с прямым доступом к агентам.


Рис. 2. Схема с использованием выделенного сервера управления.



На рис. 1 показана схема, в которой не принимает участия сервер управления. Программное обеспечение для управления сенсорами и мониторинга событий устанавливается на ПК оператора по работе с системами обнаружения вторжений. Как пример практической реализации данной схемы может выступать работа с системами обнаружения вторжений Cisco IDS/IPS при использовании ПО Cisco IPS Manager Express (IME). В данном примере взаимодействие одностороннее, IME инициирует соединение с сенсорами и получает с них события и другую информацию.

Примером реализации схемы, изображенной на рис. 2, являются системы с использованием ISS SiteProtector, McAfee NSM, Juniper NSM, Lancope StealthWatch. Из них в первых двух сервер управления устанавливается на ОС Windows, Juniper NSM рассчитан на работу с Solaris 10 или RedHat Enterprise Linux, сервер управления Lancope StealthWatch основан на Linux.

Итого, если свести в одну таблицу использование Windows- и Linux-компонентов систем обнаружения вторжений в комплектации, позволяющей не доплачивать за системы управления, получим следующее:


Сенсор
Стандартный OM сервер
Клиент
Windows
Linux
Windows
Linux
Windows
Linux
ISS SP
+
+
+
-
+
+
Cisco
-
+
+
-
+
-
Juniper
-
+
-
+
+
+
McAfee
-
+
+
-
+
+
Lancope
-
+
-
+
+
+
Табл. 1. Использование в системах обнаружения вторжений операционных систем.

Как видно из табл. 1, все сенсоры систем обнаружения вторжений либо основаны на Linux, либо имеют программные реализации с использованием ОС Linux, ISS RealSecure Network Sensor также существует в реализации под Windows. Стандартный сервер мониторинга основан на Linux у производителей Lancope и Juniper Networks, в то время как у IBM ISS, Cisco Systems и McAfee используется Windows. Насчет Cisco стоит уточнить, что в данном случае рассматривается IPS Manager Express, который является и клиентом, и сервером системы управления одновременно. Клиент для подключения к серверу мониторинга у вышеперечисленных производителей реализован либо в виде кроссплатформенного java-приложения, загружаемого через web-интерфейс, либо в виде отдельного приложения.

Одной из проблем на всех этапах жизненного цикла инфраструктуры обеспечения безопасности информационных систем, которые обусловлены человеческим фактором, является то, что представители подразделений IT-безопасности чрезмерно увлекаются организационными вопросами и методами контроля, не уделяя должного внимания технической части вопроса. При работе с системами обнаружения вторжений необходимо помнить, что сетевые сенсоры IDS/IPS – в первую очередь программно-аппаратные комплексы, которые выполняют задачу обеспечения требуемого уровня безопасности систем. Любой программный или аппаратный сбой, воздействие внешних факторов (например, отключение электропитания) может привести к отсутствию управления и, соответственно, потере событий информационной безопасности, которые отрабатываются системами обнаружения вторжений. Если в организации не выделен Центр Управления Безопасностью (Security Operating Center), работающий 24 часа в сутки, специалисты IT-безопасности могут не заметить «потери бойца» в виде отказавшего сенсора или, например, разобранной SPAN-сессии. Соответственно, необходимо использование автоматизированных систем, которые будут проверять наличие доступности сенсоров и уровень нагрузки на них. В текущих экономических реалиях добиться выделения финансирования на дополнительные системы мониторинга может быть совсем не просто, поэтому у подразделений IT-безопасности рано или поздно созреет решение применения Open Source приложений.


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

Какие параметры IDS/IPS полезно отображать в виде графика зависимости нагрузки от времени:

- загрузка интерфейсов, «слушающих» SPAN-сессию, в битах/сек;
- загрузка интерфейсов, «слушающих» SPAN-сессию, в пакетах/сек;
- загрузка интерфейсов управления в битах/сек;
- загруженность процессоров сенсоров, в %;
- количество событий, генерируемых в секунду.

Измерение загруженности SPAN-интерфейсов дает возможность определения зависимости объемов и пакетности трафика от времени суток и сегмента сети. Резкие всплески или провалы на графиках, которые не всегда позволяют определить основные системы обнаружения вторжений, могут дополнительно сигнализировать о наличии проблем. С помощью этих же параметров можно узнать о проведенной реорганизации сети, перестроении дерева коммутации, таблиц маршрутизации в связи с нештатными ситуациями, а также о том, что SPAN-сессия разобрана либо не «собралась» после отключения электропитания коммутатора. Статистика трафика на интерфейсах управления сенсоров показывает корректность взаимодействия ПО агента и системы управления. График загрузки процессоров помогает делать выводы о рациональности использования ресурсов сетевых сенсоров, а также резкие изменения могут косвенно свидетельствовать о наличии проблем. Статистический подход к количеству событий в секунду дает возможность определять наличие проблем в безопасности в случае всплесков и провалов на графике. Для визуализации статистических данных в виде графика используются программные инструменты, основанные на организации получаемых значений в виде циклической базы данных Round Robin Database: RRDTool, MRTG, Cacti.

1 комментарий:

  1. Очень интересная концепция, которая дает возможность реализовать концепцию контроля для многих систем, типа СМИС и СМИК: ww.help-01.ru. Хорошие показатели у таких систем мониторинга!

    ОтветитьУдалить