Исследование уровня защиты и эффективности применения средств защиты корпоративных сетей

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

Рубрика Программирование, компьютеры и кибернетика
Вид магистерская работа
Язык русский
Дата добавления 09.06.2010
Размер файла 4,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

2.1.4 Шлюзы сетевого уровня

Шлюзы сетевого уровня представляют собой устройства или ПО реализующие технологию NAT -- это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Преобразование адресов методом NAT может производиться почти любым маршрутизирующим устройством -- маршрутизатором, сервером доступа, межсетевым экраном. Суть механизма состоит в замене обратного (source) адреса при прохождении пакета в одну строну и обратной замене адреса назначения (destination) в ответном пакете. Наряду с адресами source/destination могут также заменяться номера портов source/destination. NAT сокращает необходимость в глобально уникальных IP-адресах. Позволяет подключаться к Интернету организации с локально уникальными адресами путём трансляции этих адресов в глобально маршрутизируемое адресное пространство. Также NAT может использоваться для сокрытия IP-адресов локальной сети.

Преимущества NAT [14]:

1. Позволяет сэкономить IP-адреса, транслируя несколько внутренних приватных IP-адресов в один внешний публичный IP-адрес (или в несколько, но меньше, чем внутренних).

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

Недостатки NAT [14]:

1. Не все протоколы могут «преодолеть» NAT. Некоторые (например, IPSec) не в состоянии работать, если на пути между взаимодействующими хостами есть трансляция адресов. Некоторые межсетевые экраны, осуществляющие трансляцию IP-адресов, могут исправить этот недостаток, соответствующим образом заменяя IP-адреса не только в заголовках IP, но и на более высоких уровнях (например, в командах протоколов FTP или H.323).

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

2.1.5 Прокси-сервера

Прокси-сервер является средством переадресации прикладных услуг через одну машину. Существует обычно одна машина (защищенная ЭВМ), которая действует в качестве прокси-сервера для широкого списка протоколов (Telnet, SMTP, FTP, HTTP, и т.д.), но могут быть индивидуальные машины для некоторых видов услуг. Вместо непосредственного соединения с внешним сервером, клиент подключается к прокси-серверу, который в свою очередь инициирует соединение с запрашиваемым внешним сервером. В зависимости от используемого прокси-сервера можно конфигурировать внутренних клиентов так, чтобы они осуществляли это перенаправление автоматически, без информирования пользователя, другие могут требовать, чтобы пользователь сам подсоединялся к прокси-серверу и затем инициировал подключение в рамках специального формата.

Применение прокси-сервера предоставляет существенные преимущества в обеспечении безопасности. Имеется возможность добавления списков доступа для протоколов, требующие от пользователей или систем обеспечения определенного уровня аутентификации прежде чем доступ будет предоставлен. Могут быть запрограммированы продвинутые прокси-серверы, иногда называемые ALG (Application Layer Gateways), которые ориентированы на определенные протоколы. Например, ALG для FTP может отличать команду "put" от "get"; организация может пожелать разрешить пользователям выполнять "get" для файлов из Интернет, но запретить "put" для локальных файлов на удаленном сервере. Напротив, фильтрующий маршрутизатор может блокировать или нет FTP-доступ, но не может реализовывать частичные запреты. Прокси-серверы могут также конфигурироваться для шифрования потоков данных на основе разнообразных параметров. Организация может использовать эту особенность, чтобы разрешить криптографические соединения между двумя узлами, один из которых размещен в Интернет. Сетевые экраны обычно рассматриваются как средство блокировки доступа для злоумышленников, но они часто используются в качестве способа доступа легальных пользователей к узлу. Существует много примеров, когда легальному пользователю может быть нужно получать регулярно доступ к базовой странице во время презентаций, конференций и т.д. Доступ к Интернет бывает часто реализован через ненадежную машину или сеть. Правильно сконфигурированный прокси-сервер может допускать правильных пользователей в узел, блокируя доступ всех остальных.

В настоящее время наилучшим вариантом сетевого экрана считается комбинация двух экранирующих маршрутизаторов и одного или более прокси-серверов в сети между маршрутизаторами. Такая схема позволяет внешнему маршрутизатору блокировать любые попытки использования нижележащего IP-уровня для нарушения безопасности (IP-spoofing, маршрутизация отправителя, неправильная фрагментация пакетов), в то же время прокси-сервер защищает уязвимости на уровне верхних протоколов. Целью внутреннего маршрутизатора является блокировка всего трафика кроме направленного на вход прокси-сервера. Если реализована эта схема, может быть обеспечен высокий уровень безопасности

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

Большинство сетевых экранов предоставляют систему журналов, которые могут настраиваться, чтобы сделать администрирование безопасности сети более удобным. Система мониторинга может быть централизована, и сконфигурирована так, чтобы посылать предупреждения при возникновении аномальной ситуации. Важно регулярно просматривать журнальные файлы при малейшем признаке вторжения или попытки взлома. Так как некоторые злоумышленники будут пытаться скрыть свои следы путем редактирования журнальных файлов, желательно защитить эти файлы. Существует много способов, включая: драйвы WORM (write once, read many), и централизованные журнальные файлы, организованные через утилиту "syslog" с их периодическим резервированием [15].

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

При выборе той или иной системы Firewall следует учитывать ряд обстоятельств.

· Операционная система. Существуют версии Firewall, работающие с UNIX и Windows NT. Некоторые производители модифицируют ОС с целью усиления безопасности. Выбирать следует ту ОС, которую вы знаете лучше.

· Рабочие протоколы. Все Firewall могут работать с FTP (порт 21), e-mail (порт 25), HTTP (порт 80), NNTP (порт 119), Telnet (порт 23), Gopher (порт 70), SSL (порт 443) и некоторыми другими известными протоколами. Как правило, они не поддерживают SNMP.

· Типы фильтров. Сетевые фильтры, работающие на прикладном уровне прокси-сервера, предоставляют администратору сети возможность контролировать информационные потоки, проходящие через Firewall, но они обладают не слишком высоким быстродействием. Аппаратные решения могут пропускать большие потоки, но они менее гибки. Существует также “схемный” уровень прокси, который рассматривает сетевые пакеты, как черные ящики и определяет, пропускать их или нет. Отбор при этом осуществляется по адресам отправителя, получателя, номерам портов, типам интерфейсов и некоторым полям заголовка пакета.

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

· Администрирование. Некоторые системы Firewall снабжены графическими интерфейсами пользователя. Другие используют текстовые конфигурационные файлы. Большинство из них допускают удаленное управление.

· Простота. Хорошая система Firewall должна быть простой. Прокси-сервер должен иметь понятную структуру и удобную систему проверки. Желательно иметь тексты программ этой части, так как это повышает уровень защиты от лазеек и уязвимостей в ПО.

· Туннелирование. Некоторые системы Firewall позволяют организовывать туннели через Интернет для связи с удаленными филиалами фирмы или организации (системы Интранет). Естественно, что информация по этим туннелям передается в зашифрованном виде.

Существуют сетевые экраны в широком диапазоне цен и производительности. Цена коммерческого варианта начинается примерно с $1000 USD и достигает $25000 USD. Сетевые экраны на базе бесплатного ПО могут быть построены за меньшую сумму. При использовании бесплатного ПО затратная часть составляет покупку аппаратной части и поиск квалифицированного администратора. Следует учитывать, что правильная конфигурация сетевого экрана (коммерческого или самодельного) требует определенного мастерства и знания TCP/IP. Оба типа требуют регулярного обслуживания, установки пакетов обновления и корректировки программ, и непрерывного контроля. При оценке бюджета сетевого экрана, эти дополнительные издержки должны также учитываться наряду с аппаратной частью сетевого экрана.

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

2.2 Системы IDS

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

Было предложено немало различных подходов к решению задачи обнаружения атак. В общем случае речь идет о преднамеренной активности, включающей, помимо атак, действия, выполняемые в рамках предоставленных полномочий, но нарушающие установленные правила политики безопасности. Однако все существующие IDS можно разделить на два основных класса: одни применяют статистический анализ, другие - сигнатурный анализ.

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

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

Общие критерии оценки безопасности ИТ (ISO 15408) содержат набор требований FAU_SAA под названием «Анализ данных аудита безопасности» (Security audit analysis) [3]. Эти требования определяют функциональность IDS, которые ищут злоумышленную активность методами как статистического, так и сигнатурного анализа.

Компонент FAU_SAA2 «Выявление аномальной активности, основанное на применении профилей» (Profile based anomaly detection) предполагает обнаружение аномальной активности с помощью профилей системы, определяющих опасные с точки зрения безопасности действия пользователей системы, и выявление этих действий. С целью установления степени опасности действий того или иного пользователя вычисляются соответствующие «рейтинги недоверия» к пользователям. Чем больше опасность действий пользователя, тем выше его «рейтинг недоверия». Когда «рейтинг недоверия» достигает установленного критического значения, предпринимаются предусмотренные политикой безопасности действия по реагированию на злоумышленную активность.

Компоненты FAU_SAA3 «Простая эвристика атаки» (Simple attack heuristics) и FAU_SAA4 «Сложная эвристика атаки» (Complex attack heuristics) предусматривают выполнение сигнатурного анализа для поиска злоумышленной активности. В случае атаки FAU_SAA4 сигнатура задает последовательность событий, являющуюся признаком нарушения установленных в системе правил политики безопасности.

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

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

Система IDS на базе хоста использует агентов [16]. Они работают как небольшое дополнительное программное обеспечение на контролируемых серверах или рабочих местах и анализируют активность на основании данных журналов регистраций и аудита в поисках признаков опасных событий.

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

В теории кроме анализа протоколов и сопоставления с шаблоном имеется еще и статистический метод [16]. В соответствии с ним система IDS определяет сначала «эталонное значение» на основании множества параметров сетевого трафика, а затем рассматривает отклонения от него как потенциальные вторжения. Однако этот метод еще не получил практического признания, и почти все существующие коммерческие системы применяют сопоставление с шаблоном или анализ протоколов вместе с сопоставлением с шаблоном.

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

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

Другая возможность заключается в корреляции потенциально известных атак с информацией о фактически имеющейся инфраструктуре ИС. Специфическое для Windows злонамеренное действие, направленное против рабочей станции UNIX, является либо полностью ошибочным, либо, по крайней мере, бессмысленным, так как нацелено на уязвимое место, которого нет у конечной системы. Следовательно, сигнал тревоги можно либо отфильтровать, либо значительно снизить его приоритет. В качестве источника информации по инфраструктуре служат, например, результаты сканирования сети или специальных сенсоров. Во время анализа система считывает общий сетевой трафик и выясняет на основе содержащейся в пакетах данных информации, какая операционная система или какие приложения находятся по определенному конечному адресу в контролируемой сети. Наиболее оптимальный вариант -- коррелировать данную информацию в режиме реального времени с регистрацией сигналов тревоги, поступающих от системы выявления атак.

В большинстве случаев администраторы, пытаясь избежать ложных сигналов об атаке, вручную подстраивают сенсоры системы IDS. При этом они деактивируют определенные шаблоны для конкретных групп сенсоров или IP-адресов. Такая работа требует не только больших затрат и средств, она может привести к тому, что сенсоры станут почти слепыми, а это ставит под сомнение смысл всего проекта по внедрению IDS.

В целом проблема ложных сигналов тревоги в системах с классической технологией выявления на базе анализа протоколов и сопоставления с шаблоном не разрешаема. Лишь совершенно новая идея для выявления атак способна повлиять на улучшение ситуации [17]. Кроме того, независимо от проблематики ложных сигналов тревоги, операционные издержки при использовании системы IDS очень высоки. Система IDS распознает только те вторжения, для которых ей удается подобрать известный шаблон в потоке данных или выявить очевидное отклонение от сетевого протокола.

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

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

При проектировании СЗИ с применением IDS, должны учитываться ограничения имеющихся систем. Чаще всего производители указывают предельные значения: число известных шаблонов или максимально анализируемую пропускную способность. Однако обычно они не указывают, как много или какие именно вторжения система IDS не может обнаружить. Проблема снова заключается в технологии выявления, поскольку и при анализе протоколов она частично базируется на шаблонах. Когда в потоке данных присутствует определенный шаблон, атака распознается. Но если атака происходит, а шаблон при этом не появляется, то система ее не обнаруживает. Часто системы выявляют вторжение по характерной последовательности байт при атаке посредством известного автоматизированного инструмента вторжения, так называемого эксплоита. Если злоумышленник обладает достаточным опытом, у него есть хороший шанс создать такой инструмент самому и провести атаку так, чтобы она осталась незамеченной со стороны системы IDS на базе шаблонов.

Многие вторжения происходят на уровне приложения и, хотя они используют общий основной принцип, являются еще и очень индивидуальными. Нет никаких шаблонов, которые можно было бы распознать на сетевом уровне. Способная выявить такие атаки система IDS должна была бы, вместо поиска шаблонов, знать логику индивидуальных приложений и отслеживать их текущий статус. Ввод десятизначного числа может быть разрешен в одном поле формы Web, а в другом поле или по другому URL он может привести к несанкционированному выполнению команд. Многие современные системы выявления атак не предлагают такую функциональность.

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

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

примеры сигнатур атак, используемых при анализе трафика (заголовков сетевых пакетов):

· в заголовке TCP-пакета установлен порт назначения 139 и флаг ООВ (Out of Band), что является признаком атаки аля WinNuke;

· установлены одновременно противоречащие друг другу флаги ТСР-пакета: SYN и FIN. Посредством данной комбинации флагов во многих атакующих программах удается обходить фильтры и мониторы, проверяющие только установку одиночного SYN-флага;

пример сигнатуры атаки, применяемой при анализе контента:

· "GET. cgi-bin/etc/passwd". Появление такой строки в области данных HTTP-пакета свидетельствует о наличии эксплойтов типа phf, php или aglimpse.

Методы анализа контента имеют еще один существенный недостаток. Они не работают, когда атакующие программы (DDoS, trojans) обращаются к шифрованию трафика. Например, в Back Orifice trojan или Barbwire DDoS-команды, передаваемые между клиентом и сервером (менеджером и агентом), шифруются посредством алгоритма blowfish. Методы обнаружения такого рода атак ограничиваются анализом заголовков сетевых пакетов.

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

· большая стоимость коммерческих IDS;

· малая эффективность современных IDS, характеризующихся большим числом ложных срабатываний и несрабатываний (false positives and false negatives);

· требовательность к ресурсам и порой неудовлетворительная производительность IDS уже на скорости 100 Мбит/с в сетях;

· недооценка рисков, связанных с сетевыми атаками;

· отсутствие в организации методики анализа рисков и управления ими, позволяющей руководству адекватно оценивать величину риска и обосновывать стоимость реализации контрмер;

· необходимость в высокой квалификации экспертов по выявлению атак, без которой невозможно внедрение и развертывание IDS.

Стоимость современных IDS в аппаратном исполнении колеблется от 5000 USD до 50000 и даже выше [18]. Здесь стоимость определяет в первую очередь масштаб предприятия требования к пропускной способности и набор сигнатур атак. В то же время на рынке существуют продукты программного исполнения которые значительно дешевле и более доступны. Как и в случае с МЭ, а в отношении IDS еще существенней, уровень защищенности обеспечиваемый данным средством на 80 процентов зависит от компетентности администраторов и выхода обновлений сигнатур. В прессе существует множество примеров когда системы IDS бездействовали из-за отсутствия тонкой настройки под конкретную систему, снижая тем самым целесообразность своего применения фактически к нулю.

2.3 Антивирусная защита

2.3.1 Актуальность проблемы вирусной защиты

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

Данное положение вещей подтверждается неоднократными исследованиями различных авторитетных компаний. Так, например, из отчета по итогам 2004 года, приведенного на рисунке 2.2 - исследование (опрос) компании Ernst & Young, явно видно, что большинство опрошенных специалистов, проблему вирусной опасности поставили именно на первое место [19].

Рисунок 2.2. Наибольшие угрозы для бизнеса (исследование компании Ernst & Young).

Помимо этого, сети компаний находятся в постоянном развитии, соответственно растет и число точек проникновения вирусов в корпоративные сети. Когда-то вредоносный код попадал на компьютер к пользователю только посредством переносных носителей информации. В настоящее время, как правило, основными точками проникновения являются, в первую очередь - электронная почта, шлюзы (центральная точка входа в корпоративную сеть) и серверы Интернет (Web browsing - различные CGI скрипты и прочий вредоносный код скачиваемый пользователем).

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

2.3.2 Виды вирусных угроз

Троянские кони.

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

Программа этого типа может служить для опосредованного выполнения операций, которые несанкционированный пользователь не может выполнить непосредственно. Например, для получения доступа к файлам другого пользователя на компьютере, находящемся в совместном пользовании нескольких человек, злоумышленник может создать программу "троянского коня", которая в ходе выполнении изменит параметры контроля доступа к файлам соответствующего пользователя, сделав эти файлы открытыми для всех. Создав такую программу, автор может спровоцировать других пользователей запустить ее, поместив эту программу в общедоступный каталог и присвоив ей имя, которое большинству пользователей покажется именем полезной программы или утилиты. Примером может служить программа, якобы создающая список файлов пользователя в нужном формате. После того как какой-нибудь пользователь запустит такую программу, автор программы может получить доступ к информации, содержащейся в файлах этого пользователя. Примером "троянского коня", который очень трудно выявить, является компилятор, модифицированный с целью внедрения дополнительного кода в компилируемые программы определенного вида, например в программы входа в систему [21]. Этот код представляет собой лазейку в модуле регистрации, который позволяет автору программы войти в систему с помощью специального пароля. Обнаружить такого "троянского коня" по исходному коду программы входа в систему невозможно.

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

Вирусы.

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

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

«Черви»

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

· Электронная почта. "Червь" отправляет свою копию по почте в другую систему.

· Удаленный вызов программ. "Червь" запускает свою копию на выполнение в другой системе.

· Доступ к удаленной системе. "Червь" входит в удаленную систему как пользователь, а затем использует команду копирования себя из одной системы в другую.

Новая копия программы-"червя" в результате оказывается запущенной в удаленной системе, где в дополнение ко всем другим предусмотренным операциям "червь" продолжает размножаться указанным выше способом.

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

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

· Установление соединения с удаленной системой.

· Копирование своего кода в удаленную систему и инициирование ее запуска там.

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

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

Природа вирусов.

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

Жизненный цикл типичного вируса состоит из четырех этапов [6].

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

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

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

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

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

Типы вирусов

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

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

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

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

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

· Полиморфный (мимикрирующий) вирус. Вирус, код которого изменяется при каждом новом заражении, что делает практически невозможным обнаружить его по "сигнатуре".

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

Полиморфный вирус создает при размножении копии, эквивалентные по функциональности, но существенно различающиеся по двоичному представлению кода [6]. Как и в случае с вирусами-невидимками, это делается с целью противостоять программам, обнаруживающим вирусы. Для таких вариаций представления кода вирус может вставлять в свой код генерируемые случайным образом избыточные команды или же изменять порядок следования не зависящих друг от друга команд. Более эффективным подходом является шифрование. Часть вируса, называемая механизмом управления мутациями (mutation engine), генерирует случайное значение ключа, с помощью которого шифрует остальной код вируса. Ключ сохраняется вместе с вирусом, а механизм управления мутациями видоизменяется. Во время запуска инфицированной программы вирус с помощью сохраненного ключа расшифровывается. При новом инфицировании генерируется новый ключ.

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

Макровирусы.

За последние годы число вирусов, регистрируемых на корпоративных узлах, стремительно возросло [23]. Практически весь этот прирост связан с распространением нового типа вирусов, называемых макровирусами. Согласно информации NCSA (National Computer Security Agency -- Национальное агентство компьютерной безопасности США) макровирусы сегодня составляют две трети от общего количества вирусов [24].

Макровирусы особенно опасны по следующим причинам.

· Макровирусы независимы от платформы. Так, практически все макровирусы поражают документы Microsoft Word. Поэтому любая аппаратно-программная система, поддерживающая Word, может быть заражена таким вирусом.

· Макровирусы инфицируют документы, а не выполняемый код. А информация, вводимая в компьютерную систему, по большей части представлена в форме документов, а не программ.

· Макровирусы быстро распространяются. Чаще всего распространение происходит по электронной почте.

Существование макровирусов построено на использовании средств поддержки макросов, предлагаемых в Word и других офисных приложениях (например, Microsoft Excel). По сути, макрос представляет собой программу, встроенную в документ текстового процессора или файл какого-то другого типа. Обычно пользователи используют макросы для того, чтобы автоматизировать выполнение часто выполняемых действий, что позволяет сэкономить время. Язык макросов чаще всего является каким-нибудь вариантом языка программирования Basic. Пользователь может записать последовательность нажатий клавиш в виде макроса, а затем настроить программу так, чтобы записанный макрос вызывался нажатием функциональной клавиши или какой-то специальной комбинацией клавиш.

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

· AutoExec. Макрос, названный зарезервированным именем AutoExec, находится в шаблоне normal.dot или в глобальном шаблоне, хранящемся в каталоге запуска (startup directory) Word, и автоматически выполняется при запуске Word.

· Автомакрос. Выполняется, когда происходит определенное событие, например открытие или закрытие документа, создание нового документа шп завершение работы Word.

· Командный макрос. Если находящийся в глобальном файле макросов ил;связанный с текущим документом макрос имеет имя, совпадающее с названием команды Word, он будет выполняться при каждом вызове этойкоманды (например, команды FileSave) пользователем.

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

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

2.3.3 Виды антивирусной защиты

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

· Обнаружение. Если заражение произошло, оно должно быть немедленно обнаружено с установлением места обитания вируса.

· Идентификация. Как только заражение вирусом обнаружено, необходимо идентифицировать тип вируса, инфицировавшего программу.

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

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

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

В [22] антивирусные программы разделяются на четыре поколения.

· Первое поколение: обычные сканеры.

· Второе поколение: эвристические анализаторы.

· Третье поколение: мониторы.

· Четвертое поколение: полнофункциональные системы защиты.

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

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

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

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

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

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

2.3.4 Требования к антивирусной защите КИС

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

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

Пример простейшей функциональной модели приведен на рисунке 2.4.

Рисунок 2.3. Функциональная модель корпоративной сети

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

Взглянув на конкретную функциональную модель, становится, очевидно, что антивирусную безопасность в данной корпоративной сети не обеспечить за счет антивирусов устанавливаемых на рабочих станциях и серверах. Да, бесспорно, есть решения, включающие несколько антивирусных продуктов (для разных точек проникновения), но нет одного продукта, который бы мог контролировать все участки корпоративной сети [25].

При таком положении дел важно помнить о централизованном контроле и управлении всеми антивирусными продуктами, которые используются на предприятии.

Необходимо, чтобы администратор мог с единой консоли отслеживать все точки проникновения вирусов и, эффективно управлять всеми присутствующими в сети предприятия точками антивирусной защиты. В нынешних условиях развития вирусной индустрии, отсутствие подобного рычага у администратора приведет в лучшем случае к потере контроля над несколькими объектами сети предприятия (устаревшие базы вирусных сигнатур, отключенный режим сканирования в реальном времени, вообще не установленное антивирусное ПО), а в худшем - к потере контроля вообще над частью системы антивирусной защиты. И, как правило, это происходит в момент появления новой уязвимости и в то же время червя, который использует данную уязвимость - так называемая угроза «Zero-day» [25].

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

Для того, что бы окончательно определиться - какой должна быть система антивирусной защиты КИС, необходимо задуматься, что еще должно в ходить в ее функциональность. Для начала используем те требования, которые предъявляет к подобным системам международный, наиболее авторитетный, стандарт в области управления информационной безопасностью - ISO 17799 [10].

Если проанализировать данный стандарт, то можно выделить ряд требований, предъявляемых к самой системе антивирусной безопасности и к необходимым возможностям по управлению данной системой:

· многоплатформенность;

· отказоустойчивость;

· масштабируемость, интегрируемость и возможность централизованного управления и обновления;

· работа антивирусных средств в режиме реального времени и по расписанию;

· оценка нанесенного ущерба и восстановление системы:

Ш обнаружение и уничтожение опасных остатков вирусов, в том числе и ликвидация изменений в системах, выполненных вредоносным кодом;

Ш выявление незащищенных объектов сети и обеспечение немедленной их защиты;

Ш подробные, разноуровневые (например, отчеты для технических специалистов в данной области, для технических менеджеров (руководителей) и отчеты для руководителей высшего звена) отчеты, по работе всего антивирусного комплекса

· контроль над жизненным циклом эпидемии и своевременное информирование персонала;

· способность перекрывать все потенциальные каналы проникновения вирусов в корпоративную сеть;

· предоставления комплексного решения для гетерогенной корпоративной сети.

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

Конечно, есть требования (может быть даже субъективные), которые не описаны стандартами, но на них всегда обращают при построении любой из корпоративных систем. В первую очередь идет речь, например, о производительности и удобности эксплуатации антивирусных решений. Конечно, данные требования никто в стандарт по безопасности вносить не будет, но они существуют и играют не последнюю роль при выборе конкретных решений. Список и раскрытие этих требований перечислены ниже [25].


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.