Учебное пособие Ставрополь сф мггу им. М. А. Шолохова 2009
Скачать 5.26 Mb.
|
Существует пять основных типов датчиков HIDS. 1. Анализаторы журналов. Большая часть анализаторов журналов настроена на отслеживание записей журналов, которые могут означать событие, связанное с безопасностью системы. Анализаторы журналов по своей природе являются реактивными системами. Иными словами, они реагируют на событие уже после того, как оно произошло. Таким образом, журнал будет содержать сведения о том, что проникновение в систему выполнено. В большинстве случаев анализаторы журналов не способны предотвратить осуществляемую атаку на систему. 2. Датчики признаков. Системы, основанные на сопоставлении признаков, обеспечивают возможность отслеживания атак во время их 246 выполнения в системе, поэтому они могут выдавать дополнительные уведомления о проведении злоумышленных действий. Тем не менее, атака будет успешно или безуспешно завершена перед вступлением в действие датчика HIDS, поэтому датчики этого типа считаются реактивными. Датчик признаков HIDS является полезным при отслеживании авторизованных пользователей внутри информационных систем. 3. Анализаторы системных вызовов. Анализаторы системных вызовов осуществляют анализ вызовов между приложениями и операционной системой для идентификации событий, связанных с безопасностью. Датчики HIDS данного типа размещают программную спайку между операционной системой и приложениями. Когда приложению требуется выполнить действие, его вызов операционной системы анализируется и сопоставляется с базой данных признаков. Эти признаки являются примерами различных типов поведения, которые являют собой атакующие действия, или объектом интереса для администратора IDS. Анализаторы системных вызовов отличаются от анализаторов журналов и датчиков признаков HIDS тем, что они могут предотвращать действия. Если приложение генерирует вызов, соответствующий, например, признаку атаки на переполнение буфера, датчик позволяет предотвратить этот вызов и сохранить систему в безопасности. 4. Анализаторы поведения приложений. Анализаторы поведения приложений аналогичны анализаторам системных вызовов в том, что они применяются в виде программной спайки между приложениями и операционной системой. В анализаторах поведения датчик проверяет вызов на предмет того, разрешено ли приложению выполнять данное действие, вместо определения соответствие вызова признакам атак. Например, веб- серверу обычно разрешается принимать сетевые соединения через порт 80, считывать файлы в веб-каталоге и передавать эти файлы по соединениям через порт 80. Если веб-сервер попытается записать или считать файлы из другого места или открыть новые сетевые соединения, датчик обнаружит несоответствующее норме поведение сервера и заблокирует действие. 5. Контролеры целостности файлов. Контролеры целостности файлов отслеживают изменения в файлах. Это осуществляется посредством использования криптографической контрольной суммы или цифровой подписи файла. Конечная цифровая подпись файла будет изменена, если произойдет изменение хотя бы малой части исходного файла (это могут быть атрибуты файла, такие как время и дата создания). Алгоритмы, используемые для выполнения этого процесса, разрабатывались с целью максимального снижения возможности для внесения изменений в файл с сохранением прежней подписи. 247 17.3.3 Сетевые IDS Сетевые IDS (Network intrusion detection system - NIDS) представляет собой программный процесс, работающий на специально выделенной системе. NIDS переключает сетевую карту в режим работы, при котором сетевой адаптер пропускает весь сетевой трафик (а не только трафик, направленный на данную систему) в программное обеспечение NIDS. После этого происходит анализ трафика с использованием набора правил и признаков атак для определения того, представляет ли этот трафик какой-либо интерес. Если это так, то генерируется соответствующее событие. На данный момент большинство систем NIDS базируется на признаках атак. Это означает, что в системы встроен набор признаков атак, с которыми сопоставляется трафик в канале связи. Если происходит атака, признак которой отсутствует в системе обнаружения вторжений, система NIDS не замечает эту атаку. NIDS-системы позволяют указывать интересуемый трафик по адресу источника, конечному адресу, порту источника или конечному порту. Это дает возможность отслеживания трафика, не соответствующего признакам атак. Рис. 17.7 - Конфигурация NIDS с двумя сетевыми картами Среди преимуществ использования NIDS можно выделить следующие моменты. - NIDS можно полностью скрыть в сети таким образом, что злоумышленник не будет знать о том, что за ним ведется наблюдение. - Одна система NIDS может использоваться для мониторинга трафика с большим числом потенциальных систем-целей. - NIDS может осуществлять перехват содержимого всех пакетов, направляющихся на систему-цель. 248 Среди недостатков NIDS необходимо отметить следующие аспекты. - Система NIDS может только выдавать сигнал тревоги, если трафик соответствует предустановленным правилам или признакам. - NIDS может упустить нужный интересуемый трафик из-за использования широкой полосы пропускания или альтернативных маршрутов. - Система NIDS не может определить, была ли атака успешной. - Система NIDS не может просматривать зашифрованный трафик. - В коммутируемых сетях (в отличие от сетей с общими носителями) требуются специальные конфигурации, без которых NIDS будет проверять не весь трафик. 17.3.4 Использование IDS Пример использования IDS приведен на рис. 17.8. Рис. 17.8 - Пример выбора объекта мониторинга Таблица 17.3 – События, отслеживаемые при наличии политики IDS Политика NIDS HIDS Обнаружение атак Весь трафик, поступающий на потенциально атакуемые системы (сетевые экраны, веб-серверы, серверы приложений и т.д.) Неудачные попытки входа. Попытки соединения. Удачный вход с удаленных систем. Предотвращение атак То же, что и для обнаружения атак То же, что и для обнаружения атак. Обнаружение нарушений политики Весь трафик HTTP, формируемый на системах клиентах. Весь трафик FTP, формируемый на системах клиентах Успешные HTTP-соединения. Успешные FTP соединения. Загружаемые файлы. 249 Политика NIDS HIDS Принуждение к использованию политик То же, что и для обнаружения нарушений политики То же, что и для обнаружения нарушения политики. Принуждение к соответствию политикам соединений Весь трафик, нарушающий принудительно используемую политику соединения Успешные соединения с запрещенных адресов или по запрещенным портам. Сбор доказательств Содержимое всего трафика, формируемого на системе- цели или атакующей системе Все успешные подключения, исходящие с атакующей системы. Все неудачные соединения с атакующих систем. Все нажатия клавиш из интерактивных сеансов на атакующих системах. При обнаружении вторжения IDS должна выработать методы противодействия вторжению. Рассматривают следуюшие виды действий при обнаружении вторжений: - Пассивная обработка - это наиболее распространенный тип действий, предпринимаемых при обнаружении вторжения. Причина этому проста - пассивные ответные действия обеспечивают меньшую вероятность повреждения легитимного трафика, являясь, в то же время, наиболее простыми для автоматического применения. Как правило, пассивные ответные действия осуществляют сбор большего числа информации или передают уведомления лицам, имеющим право на принятие более жестких мер. - Активная обработка события позволяет наиболее быстро предпринять возможные меры для снижения уровня вредоносного действия события. Однако если недостаточно серьезно отнестись к логическому программированию действий в различных ситуациях и не провести должного тестирования набора правил, активная обработка событий может вызвать повреждение системы или полный отказ в обслуживании легитимных пользователей. Среди активной обработки событий различают следующие. - Прерывание соединений, сеансов или процессов. Вероятно, самым простым действием для понимания является прерывание события. Оно может осуществляться посредством прерывания соединения, используемого атакующим злоумышленником (это возможно только в том случае, если событие использует TCP-соединение), с закрытием сеанса пользователя или завершением процесса, вызвавшего неполадку. - Определение того, какой объект подлежит уничтожению, выполняется посредством изучения события. Если процесс 250 использует слишком много системных ресурсов, лучше всего завершить его. Если пользователь пытается использовать конкретную уязвимость или осуществить нелегальный доступ к файлам, то рекомендуется закрыть сеанс этого пользователя. Если злоумышленник использует сетевое соединение в попытках изучения уязвимостей системы, то следует закрыть соединение. Таблица 17.4. - Примеры ответных действий, определяемые политикой IDS Политика Пассивные ответные действия Активные ответные действия Обнаружение атак Ведение журналов. Ведение дополнительных журналов. Уведомление Нет ответного активного действия. Предотвращение атак Ведение журналов. Уведомление. Закрытие соединения. Завершение процесса. Возможна перенастройка маршрутизатора или межсетевого экрана. Обнаружение нарушений политики Ведение журналов. Уведомление. Нет ответного активного действия. Принудительное использование политик Ведение журналов. Уведомление. Закрытие соединения. Возможно перенастройка прокси. Принудительное использование политик соединения Ведение журналов. Уведомление. Закрытие соединения. Возможно перенастройка маршрутизатора или межсетевого экрана. Сбор доказательств Ведение журналов. Ведение дополнительных журналов. Уведомление. Обманные действия. Возможно закрытие соединения. 251 18. ОБЕСПЕЧЕНИЕ БЕЗОПАСТНОГО ВЗАИМОДЕЙСТВИЯ В ГЛОБАЛЬНЫХ КОМПЬЮТЕРНЫХ СЕТЯХ 18.1 Аутефекация и управление сертификатами 18.1.1 Цифровые подписи Цифровые подписи - это форма шифрования, обеспечивающая аутентификацию (подтверждение подлинности) цифровой информации. С помощью цифровой подписи можно повысить уровень этой защиты и обезопасить информацию от изменения после получения и дешифрования. Рис. 18.1 - Схема формирования цифровой подписи по алгоритму RSA До настоящего времени наиболее часто для построения схемы цифровой подписи использовался алгоритм RSA. В основе этого алгоритма лежит концепция Диффи-Хеллмана. Она заключается в том, что каждый пользователь сети имеет свой закрытый ключ, необходимый для формирования подписи; соответствующий этому секретному ключу открытый ключ, предназначенный для проверки подписи, известен всем другим пользователям сети. На рис. 18.1 показана схема формирования цифровой подписи по алгоритму RSA. Подписанное сообщение состоит из двух частей: незашифрованной части, в которой содержится исходный текст Т, и зашифрованной части, представляющей собой цифровую подпись. Если результат расшифровки цифровой подписи совпадает с открытой частью сообщения, то считается, что документ подлинный, не претерпел никаких изменений в процессе передачи, а автором его является именно тот человек, который передал свой открытый ключ получателю. Если сообщение снабжено цифровой подписью, то получатель может быть уверен, что оно не было изменено или подделано по пути. Цифровые подписи применяются к тексту до того, как он шифруется. Если помимо снабжения текста электронного документа цифровой подписью надо обеспечить его конфиденциальность, то вначале к тексту применяют 252 цифровую подпись, а затем шифруют все вместе: и текст, и цифровую подпись (рис. 18.2). Рис. 18.2 - Обеспечение конфиденциальности документа с цифровой подписью 18.1.2 Управление ключами и сертификация ключей Управление ключами является самой неприятной задачей при использовании любой системы шифрования. Ключи представляют собой самые важные объекты во всей системе, так как если злоумышленник получает ключ, у него появляется возможность расшифровывать все данные, зашифрованные с помощью этого ключа. Управление ключами заключается не только в защите их при использовании. Данная задача предусматривает создание надежных ключей, безопасное распространение ключей среди удаленных пользователей, обеспечение корректности ключей, отмену в случае их раскрытия или истечения срока действия. Если ключи некоторым образом передаются в удаленное место расположения, они должны проверяться при получении на предмет того, не подверглись ли они вмешательству в процессе передачи. Это можно делать вручную либо использовать некоторую форму цифровой подписи. Открытые ключи предназначены для публикации или передачи другим пользователям и должны сертифицироваться как принадлежащие владельцу ключевой пары. Сертификация осуществляется с помощью центрального бюро сертификатов (Certificate Authority - CA). В данном случае CA предоставляет цифровую подпись на открытом ключе, и благодаря этому CA с доверием воспринимает тот факт, что открытый ключ принадлежит владельцу ключевой пары (см. рис. 18.3). 253 Цифровой сертификат представляет собой цифровой документ (небольшой файл), заверяющий подлинность и статус владельца для пользователя или компьютерной системы. Бюро сертификатов (Certificate Authority - CA) - объединение, включающее сервер сертификатов и создающее сертификаты. Рис. 18.3 - Сертификация открытого ключа в бюро сертификатов 18.1.3 Концепция доверия в информационной системе Концепция доверия является основополагающим принципом информационной безопасности и шифрования в частности. Для работы шифрования необходима уверенность в том, что ключ шифра не будет раскрыт, и что используемый алгоритм шифрования является достаточно мощным. В случае с аутентификацией и цифровыми подписями необходима также уверенность в том, что открытый ключ на самом деле принадлежит тому, кто его использует. 18.1.3.1 Иерархическая модель доверия Иерархическая модель доверия наиболее проста для восприятия. Говоря простым языком, в данном случае вы доверяете человеку, который находится выше в иерархической цепи, так как от него было получено соответствующее указание о необходимости доверия. На рисунке 18.4 изображена схема этой модели. 254 Рис. 18.4 - Иерархическая модель доверия Как видно из рисунка, пользователи User1 и User2 располагаются под CA1. Следовательно, если CA1 говорит, что сертификат открытого ключа принадлежит пользователю User1, пользователь User2 будет верить этому. На практике User2 передает пользователю User1 свой сертификат открытого ключа, подписанный CA1. Пользователь User1 проверяет подпись CA1 с использованием открытого ключа CA1. Так как CA1 находится в иерархии выше, чем User1, то User1 доверяет CA1 и, следовательно, доверяет сертификату пользователя User2. Если пользователю User1 нужно проверить информацию от пользователя User3, все несколько усложняется. CA1 не знает о пользователе User3, в отличие от CA2. Тем не менее, пользователь User1 не доверяет CA2, так как это бюро сертификатов напрямую не принадлежит цепочке пользователя User1. Следующий уровень вверх по цепочке - CA4. Пользователь User1 может верифицировать информацию от пользователя User3 посредством проверки с помощью CA4 следующим образом. - Пользователь User1 смотрит на сертификат пользователя User3. Он подписан в CA2. - Пользователь User1 получает сертификат пользователя CA2. Он подписан в CA4. - Так как пользователь User1 доверяет CA4, открытый ключ CA4 может использоваться для верификации сертификата CA2. - Как только сертификат CA2 верифицирован, пользователь User1 может верифицировать сертификат пользователя User3. - Как только будет верифицирован сертификат пользователя User3, пользователь User1 может использовать открытый ключ пользователя User3 для верификации данных. 255 18.1.3.2 Сетевая модель доверия Сеть с доверием представляет собой альтернативную модель доверия. Эта концепция была впервые использована в технологии Pretty Good Privacy (PGP). Сетевая модель доверия заключается в том, что каждый пользователь сертифицирует свой сертификат и передает его известным ассоциированным объектам. Эти объекты могут подписать сертификат другого пользователя, так как он известен (см. рис. 18.5). Рис. 18.5 - Сетевая модель доверия В данной модели не существует центрального бюро сертификатов. Если пользователю User1 требуется верифицировать информацию, поступающую от пользователя User2, он запрашивает сертификат пользователя User2. Так как пользователь User1 знает пользователя User2, то доверяет сертификату и даже может его подписать. Теперь рассмотрим ситуацию, в которой User1 получает информацию от User3. Пользователь User3 не известен пользователю User1, но у пользователя User3 есть сертификат, подписанный пользователем User2. Таким образом, рассматриваемая модель распространяется на всю компьютерную сеть. Единственным решением, которое должно приниматься в процессе работы, является число переходов, которому доверяет пользователь. Как правило, это число равно 3 или 4. Кроме того, может возникнуть ситуация, в которой для установления доверия другому пользователю есть два пути. Например, User2 может использовать два пути установления доверия с пользователем User5: один через пользователя User3 и другой через пользователя User4. Так как оба пользователя User3 и User4 сертифицируют пользователя User5, пользователь User2 может быть уверен в сертификате пользователя User5. |