Средства анализа информационных потоков.
Средства анализа информационных потоков
Применение методов инспекции потоков данных для защиты информационных ресурсов сети организации позволяет выявить информационные воздействия на наиболее ранних стадиях. Поскольку преодоление уязвимостей базовых протоколов семейства TCP/IP путем внесения изменений в программные реализации сетевых сервисов сопряжено со значительными трудностями, представляется целесообразным проводить защиту от атак «вне» информационной системы. Используемые в целях разграничения информационных потоков межсетевые экраны зачастую сами становятся объектами атак, поскольку либо применяют в качестве программной основы сетевую ОС, обладающую уязвимостями на уровне операционной системы, либо реализацию стека протоколов TCP/IP, имеющую заложенные протоколами слабости.
Учитывая сказанное выше, предопределен интерес к применению методов инспекции для выявления злоумышленников непосредственно в каналах связи. Однако, учитывая сложность реализации требуемых методов, многие исследования, выполняемые известными научно-исследовательскими организациями, не выходят за рамки проектов [5]. В то же время существуют коммерческие реализации данного подхода, примером которых является продукт RealSecure фирмы Internet Security Systems Inc.
RealSecure
В данном разделе приводит краткая характеристика RealSecure основанная на опыте практического использования коммерческой версии продукта.
RealSecure может функционировать под управлением AIX 3.2.5, HP-UX 9.0.5, 10.1, SunOs 4.1.x, Solaris 2.x, Linux 1.2/1.3, а также Windows NT 3.51 и 4.0 в двух основных режимах: локальном (то есть только на определенной рабочей станции) и распределенном. В распределенном режиме основные программные модули (агенты) функционируют на удаленных рабочих станциях, как правило, находящихся в разных сетях или сегментах сети, а программа управления агентами функционирует на центральной рабочей станции.
Архитектуру программного средства RealSecure можно условно разделить на следующие основные компоненты:
• основной программный модуль, осуществляющий мониторинг и контроль сетевых событий;
• механизм настроек основного модуля;
• базы данных зафиксированных сетевых событий;
• программа управления указанными компонентами, имеющая графический пользовательский интерфейс;
• базы данных отчетов о зафиксированных сетевых событиях в формате HTML (данные отчеты создаются программой управления на основе баз данных сетевых событий).
Основной модуль представляет собой программу, осуществляющую контроль и управление сетевыми событиями согласно установленной конфигурации. Ниже приводится перечень распознаваемых и контролируемых сетевых событий. Механизм настроек основного программного модуля RealSecure представляет собой набор файлов, в которых описана задаваемая пользователем конфигурация, и включает в себя (в реализации RealSecure для Solaris):
1) файл filter.cfg — фильтр отслеживаемых сетевых событий, соответствующих сетевому и транспортному уровням модели OSI. Этот фильтр реализован в виде набора правил отслеживающих событий и действий по каждому событию. Возможно задание следующего тнабора действий:
• не производить отслеживание данного события;
• просмотреть сессию данного события в режиме реального времени;
• прервать выполнение данною события (возможно только в случае, когда соединение осуществляется по протоколу TCP);
• произвести отображение данного события на контрольной панели;
• произвести запись события в файл с возможностью занесения отметки о событии в базу данных, записи текстовой информации или всех данных, передаваемых во время совершения события (последнее свойство может быть использовано для «проигрывания» информационного обмена, соответствующего данному событию);
• вызвать указанную программу при фиксировании события;
• отправить электронное сообщение определенному пользователю при фиксировании события;
• задать уровень важности события, вследствие чего каждое событие будет отображено в определенном окне и храниться заданный период времени (RealSecure позволяет сортировать все события по трем уровням важности).
2) Файл features.cfg — представляет собой набор описаний распознаваемых атак и сетевых событий, контролируемых RealSecure, а также описание действий, выполняемых при фиксировании атаки либо события (набор действий полностью совпадает с описанным выше). Кроме этого существует возможность передачи некоторых корректирующих параметров механизму распознания атак.
3) Файл general.cfg — в этом файле определяются временные интервалы, в течение которых отображаются события, задаваемые для каждого уровня важности события. Кроме того, в данном файле определяется программа просмотра руководства по использованию RealSecure и отчетов о зафиксированных сетевых событиях (в формате HTML), а также опция отключения механизма преобразования IP адреса в символическое имя (преобразование IP адреса в имя DNS требует временных затрат)
Вспомогательный файл ethereodes содержит список соответствий между адресами канального уровня сетевых адаптеров и названиями фирм-производителей данных устройств.
Базы данных зафиксированных сетевых событий представляют собой файлы, запись в которые производится согласно набору выполняемых действий при фиксировании заданных сетевых событий.
Сетевые атаки и события, распознаваемые RealSecure
Программное средство RealSecure позволяет распознавать более ста сетевых атак и событий, полный перечень которых содержится в документации. Далее приведен обзор наиболее важных на наш взгляд типовых атак, распознаваемых RealSecure, а также других возможностей этого продукта.
RealSecure позволяет распознавать следующие атаки:
1) Фрагментация данных
При передаче пакета данных протокола IP по сети может осуществляться его деление на несколько фрагментов, из которых в последствии пакет восстанавливается при достижении адресата. Злоумышленник может инициировать посылку большого числа фрагментов, что приводит к переполнению программных буферов на приемной стороне и в ряде случаев к аварийному завершению работы системы.
2) Ping flooding
Злоумышленник посылает продолжительные серии эхо-запросов по протоколу ICMP. Атакуемая система тратит свои вычислительные ресурсы, отвечая на эти запросы. Таким образом, существенно снижается производительность системы и возрастает загруженность каналов
3) UDPbomb
Передаваемый пакет UDP содержит неправильный формат служебных нолей. При получении подобного пакета некоторые старые версии сетевого ПО приводят к аварийному останову системы.
4) SYN flood
При установлении соединения по протоколу TCP приемная сторона, получив запрос на соединение (пакет с флагом SYN), посылает источнику ответ (пакет с флагами SYN АСК) о готовности установить это соединение. При этом система размещает в своей памяти служебную запись об устанавливаемом соединении и хранит ее до тех пор, пока источник не пришлет пакет-подтверждение либо не истечет время ожидания данного пакета. Злоумышленник посылает большое количество запросов на установление соединения без передачи пакетов подтверждения. Вследствие этого происходит резкое снижение производительности и при определенных обстоятельствах аварийное завершение системы.
5) Сканирование Half scan
Атака состоит в незаметном выявлении каналов информационного воздействия на систему. Злоумышленник посылает пакеты установления соединения и при получении ответов от системы сбрасывает соединение (пакет с флагом RST). При этом стандартные средства не фиксируют попытку установления соединения, в то время как злоумышленник определяет присутствие служб на определенных портах.
RealSecure фиксирует следующий информационный обмен:
1) Использование протокола АКР
Данный тип запросов может быть использован злоумышленниками для определения функционирующих систем в сегметнах локальной сети.
2) Нестандартные протоколы, инкапсулированные в IP
Пакет IP содержит поле, определяющее протокол инкапсулированного пакета (TCP, UDP, ICMP). Злоумышленики могут использовать нестандартное значение данного поля лоя передачи данных, которые не будут фиксироваться стандартными средствами контроля информационных потоков.
3) Сканирование системы средством Internet Security Scanner
Фиксируется факт сканирования системы с помощью продукта ISS коммерческой или свободно распространяемой версии.
4) Сканирование системы средством Satan
Производится распознавание сканирования системы средством Satan в режимах «heavy» и «normal».
5) Применение протокола TFTP
Данный протокол не содержит механизмов аутентификации, вследствие чего является привлекательным для злоумышленников.
6) Обращения к сервису Rwhod
Данный сервис в некоторых своих версиях содержит уязвимость, выраженную в возможности переполнения программного буфера, что может привести к выполнению произвольного кода на удаленной машине.
7) Сессии по протоколу Riogin
Механизмы аутентификации и идентификации в данном протоколе основываются на отношениях доверия между удаленными системами и соответствуют необходимому уровню надежности. Фиксируется использование опции -froot (реализация данной опции на удаленный системе позволяет любому пользователю получить права администратора).
Кроме этого, RealSecure позволяет осуществлять декодирование следующего информационного обмена:
8) Сессии по протоколу FTP
Производится декодирование имени и пароля пользователя в процессе аутентификации, команд сессии, файлов, передаваемых по коммандам GET и PUT и др., а также выполнение комманд по протоколу FTP с использованием сервера wu-ftpd.
9) Передача данных по команде GET протокола HTTP.
10) Передача электронной почты POP, IMAP, SMTP
При декодировании происходит выделение имени и пароля пользователя, атрибутов и содержимого писем.
11) Передача информации по протоколам IRC, NNTP, Talk, Finger.
Реальные возможности RealSecure (оценка эффективности методом практической реализации атак)
RealSecure представляет собой систему контроля информационных потоков сети в реальном времени. Главной задачей, которую выполняет данный продукт, является своевременное обнаружение атак. Идея их выявления проста: любой атаке соответствует определенный сетевой трафик, поэтому анализ трафика позволяет определить атаку и засечь «следы» атакующего, то есть определить IP-адреса, с которых осуществлялось информационное воздействие. Таким образом, выявление атак осуществляется методом контроля информационных потоков.
В отличие от систем пассивного контроля информационных потоков, RealSecure просматривает сетевой трафик и осуществляет анализ сетевой активности «на лету», что позволяет сократить до минимума время реакции персонала на проведенную атаку или возникшую неисправность. Кроме того, в продукте реализованы возможности защиты от атак.
Очевидно, что эффективность RealSecure можно оценивать по полноте, точности и достоверности распознавания тех или иных информационных воздействий. Схема испытаний RealSecure заключалась в следующем: данный продукт был установлен на рабочие станции Solaris 2.5 и Windows NT 4.0. Атаки проводились на серверы и рабочие станции, работающие под управлением различных операционных систем, в том числе и на станции, на которых был установлен RealSecure. Ниже приведен отчет о проведенных испытаниях.
1. Сканирование сети посредством DNS
Известно, что прежде чем начинать атаку, злоумышленники выявляют те компьютеры, которые будут жертвами атаки, а также компьютеры, осуществляющие информационный обмен с жертвами. Одним из способов выявления целей заключается в опросе сервера имен и получении от него всей имеющейся информации о домене. Для своевременного определения такого сканирования необходимо анализировать DNS-запросы (адрес и имя), приходящие, быть может, от разных DNS серверов, но за определенный промежуток времени. При этом необходимо просматривать, что за информация в них передается, и отслеживать перебор адресов. RealSecure данную атаку не распознает и средств описания информационных потоков указанным выше образом не имеет; реакцией данного программного средства на эту атаку было отображение DNS-трафика от атакующего компьютера к серверу имен.
Атака не была обнаружена.
2. Сканирование сети методом ping sweep
Ping sweep, или выявление целей с помощью протокола 1СМР, также является эффективным методом. Для определения факта ping-сканирования целей, находящихся внутри подсети, необходимо анализировать исходные и конечные адреса 1СМР пакетов. RealSecure данную атаку не обнаружил: в качестве реакции на нее наблюдался ICMP-трафик от атакующего компьютера к выявляемым машинам. Более того, в базе данных RealSecure, содержащей сигнатуры атак, данная атака не описана и средств описания.сетевой активности подобного рода нет. Данный вид сканирования был успешно проведен, а система контроля информационных потоков в реальном времени RealSecure показывала только ping активность.
Атака не была обнаружена.
3. Сканирование TCP портов
Сканирование портов представляет собой известный метод распознавания конфигурации компьютера и доступных сервисов. Для успешного проведения атак злоумышленникам необходимо знать, какие службы установлены на компьютере-жертве.
Существует несколько методов TCP-сканирования, часть из них называется скрытными (stealth), поскольку они используют уязвимости реализаций стека TCP/IP в большинстве современных ОС и не обнаруживаются стандартными средствами. RealSecure успешно определяет все эти методы, что достигается за счет полного перехвата ТСР-трафика и анализа номеров портов. Таким образом, применение RealSecure позволяет гарантировать обнаружение TCP-сканирования в режиме реального времени. Это позволяет подготовиться к возможным будущим атакам, принять своевременные защитные меры, поставить в известность персонал и руководство и т.д.
Помимо выявления факта сканирования, RealSecure осуществляет анализ всех TCP-соединений и может по желанию администратора производить их инспекцию и, если необходимо, разрыв. Это дает возможность администратору читать почту, передаваемую по сети, видеть содержание TCP-сессий, в том числе пароли пользователей, и т. п. Изучение сетевого трафика TCP с помощью RealSecure позволяет администратору определять пользователей, которые не выполняют требования по обеспечению безопасности: небрежно обращаются с паролями, используют не по назначению машинные ресурсы и т. д.
Необходимо подчеркнуть возможности продукта при противодействии TCP-сканированию. Это противодействие можно осуществлять, например, передавая TCP-пакеты с установленным флагом RST от имени сканируемого компьютера на компьютер злоумышленника, вводя его таким образом в заблуждение. Однако в процессе тестирования было обнаружено несоответствие спецификациям данного продукта: несмотря на установку в конфигурации противодействия сканированию, сбрасывающих соединение RST-пакетов обнаружено не было и сканирование прошло успешно.
Атака обнаружена.
4. Сканирование UDP портов
Другой вид сканирования портов основывается на использовании протокола UDP и заключается в следующем: на сканируемый компьютер передается UDP пакет, адресованный к порту, который проверяется на предмет доступности. Если порт недоступен, то в ответ приходит ICMP-сообщение о его недоступности (destination port unreachable), в противном случае ответа нет.
Данный вид сканирования достаточно эффективен. Он позволяет за короткое время сканировать все порты на компьютере-жертве. Кроме того, этот вид сканирования широко известен в Internet. Тем больше было наше удивление, что RealSecure не распознает данный вид сканирования, а в продукте не предусмотрены средства описания сканирования данного рода. Реакция RealSecure на UDPсканирование заключается в отображении UDP-активности в сети.
В то же время противодействовать подобному сканированию данного рода возможно путем передачи сообщений о недоступности порта на компьютер злоумышленника.
Атака не была обнаружена.
5. Атака SYN flooding
Этот вид относится к атакам запрещения обслуживания, результатом которых является невозможность предоставления услуг. Атака обычно направлена на конкретную службу, например telnet или ftp, и представляет собой передачу пакетов установления соединения на порт, соответствующий атакуемой службе. SYN flooding характеризуется большим количеством пакетов установления соединения к одной из служб на одном компьютере. Противодействие данной атаке заключается в передаче пакетов сброса соединения на нужный порт.
RealSecure не только успешно определяет такую атаку, но и осуществляет противодействие. Необходимо заметить, что RealSecure сам открывает два TCP-порта (по умолчанию 900 и 901), предоставляя злоумышленникам дополнительную возможность для атаки.
Атака обнаружена.
6. Атака Ping flooding
Эти атаки используют протокол IСМР, применяемый в сети Internet для определения достижимости компьютеров и решения других диагностических и управляющих задач.
Атака ping flooding заключается в передаче на атакуемый компьютер IСМР запросов в большом количестве. Результатом атаки является снижение производительности атакуемого компьютера, а также уменьшение пропускной способности канала связи.
RealSecure успешно определяет данную атаку и фиксирует исходные адреса пакетов, что позволяет определить атакующего и применить к нему необходимые меры.
Атака обнаружена.
7. Атака smurf
Атака smurf заключается в передаче в сеть широковещательных 1СМ.Рзапросов от имени компьютера-жертвы. В результате компьютеры, принявшие такие широковещательные пакеты, отвечают компьютеру-жертве, что приводит к существенному снижению пропускной способности канала связи и, в ряде случаев, к полной изоляции атакуемой сети.
Для распознавания данной атаки необходимо анализировать загрузку канала и определять причины снижения пропускной способности. Smurf не распознается RealSecure, что является существенным недостатком данного продукта, поскольку этот вид атаки исключительно эффективен и применяется достаточно часто.
Атака не была обнаружена.
8. Передача фрогментированных IP-пакетов
Количество реализаций атак, использующих возможность фрагментации IP-пакетов, достаточно велико. Например, программа jolt передает на компьютер-жертву несколько фрагментированных IP-пакетов, которые при сборке образуют один пакет размером более 64 К (максимальный размер IP-пакета равен 64 К мину с длина заголовка). Данная атака эффективна против компьютеров с ОС Windows NT. При получении такого пакета Windows NT, не имеющая специального патча icmp-fix, «зависает» или аварийно завершается. Другие варианты подобных атак используют неправильные смещения в IP-фрагментах, что приводит к некорректному выделению памяти, переполнению буферов и, в конечном итоге, к сбоям в работе систем.
Для выявления атак фрагментации необходимо осуществлять и анализировать сборку пакетов «налету», а это существенно повышает требования к аппаратному обеспечению (производительности процессора, памяти и т. п.) средства контроля информационных потоков.
Проведенные нами подобные атаки RealSecure не обнаруживает, хотя в базе данных сигнатур атак RealSecure атаки фрагментации присутствуют.
Атака не была обнаружена.
9. Атака Land
Атака Land использует уязвимости реализаций стека TCP/IP в некоторых ОС. Она заключается в передаче на открытый порт компьютеражертвы ТСР-пакета с установленным флагом SYN, причем исходный адрес и порт такого пакета соответственно равны адресу и порту атакуемого компьютера. Это приводит к тому, что компьютер-жертва пытается установить соединение сам с собой, в результате чего сильно возрастает загрузка процессора и может произойти «подвисание» или перезагрузка. Данная атака весьма эффективна на некоторых моделях маршрутизаторов фирмы Cisco Systems, причем успешное применение атаки к маршрутизатору может вывести из строя всю сеть организации.
Защититься от данной атаки можно, например, установив фильтр пакетов между внутренней сетью и Internet, задав на нем правило фильтрации, указывающее подавлять пришедшие из Internet пакеты с исходными IP-адресами компьютеров внутренней сети.
Нами был проведен ряд Land атак против отдельных компьютеров стенда, в том числе и против компьютера, на котором был установлен RealSecure. Данная атака выявлена не была. Кроме того, в тестируемом продукте нет средств для описания атак, использующих подделку исходных адресов под адреса внутренней сети, к которым и относиться Land.
Атака не была обнаружена.
10. Атака DN5 flooding
DNS flooding — это атака, направленная на серверы имен Internet. Она заключается в передаче большого числа DNS запросов и приводит к тому, что у пользователей не остается возможности обращаться к сервису имен и, следовательно, их работа становится невозможной. Для выявления данной атаки необходимо анализировать загрузку DNS-сервера и выявлять источники запросов.
RealSecure не осуществляет анализ загрузки сервера имен. Для защиты DNS-серверов производится проверка запросов, обеспечивающая выявление атак, связанных с превышением длины доменного имени, но атаки DNS flooding не выявляются.
Атака не была обнаружена.
11. Атака DNS spoofing
Результатом данной атаки является внесение навязываемого соответствия между IP-адресом и доменным именем в кэш DNSсервера. В результате успешного проведения такой атаки все пользователи DNS-севера получат неверную информацию о доменных именах и IP-адресах. Данная атака характеризуется большим количеством DNS-пакетов с одним и тем же доменным именем, что связано с необходимостью подбора некоторых параметров DNS обмена.
Для ее выявления необходим анализ содержимого DNS-трафика. Однако в тестируемом продукте нет средств для описания содержимого DNS обмена, следовательно, атаки данного класса не распознаются. В процессе тестирования была проведена успешная атака на действующий DNS-сервер и на компьютер, на котором установлен RealSecure.
Атака не была обнаружена.
12. Атака IP spoofing (syslog)
Большое количество атак в сети Internet связано с подменой исходного IP-адреса. К ним относится и syslog spoofing, которая представляет собой передачу на компьютер жертвы сообщения от имени другого компьютера внутренней сети. Поскольку протокол syslog используется для ведения системных журналов, путем передачи ложных сообщений на компьютер-жертву можно навязать информацию или замести следы несанкционированного доступа.
Выявление атак, связанных с подменой IP-адресов, возможно при контроле за получением на одном из интерфейсов пакета с исходным адресом этого же интерфейса или при контроле получения на внешнем интерфейсе пакетов с IP-адресами внутренней сети.
В процессе тестирования был проведен следующий эксперимент: на компьютер с установленным RealSecure было отправлено syslog сообщение с исходным адресом этого же компьютера. Реакцией было отображение в окне текущей активности сообщения от компьютера с RealSecure к себе самому, то есть атака выявлена не была.
Кроме того, в продукте нет средств описания сетевых событий, отражающих подмену IP-адреса. Очевидно, разработчики RealSecure не ставили перед собой цель противодействия таким атакам, предоставляя реализацию защиты другим средствам (например, пакетным фильтрам на базе маршрутизаторов).
Атака не была обнаружена.
13. Применение автоматизированных средств
Важной особенностью RealSecure является надежное определение применения автоматизированных средств оценки степени безопасности. В процессе тестирования были опробованы программы Satan и ISS, что было успешно обнаружено и зафиксировано RealSecure.
Атака обнаружена.
Выводы
В результате оценки возможностей продукта RealSecure методом практической реализации атак были выявлены достоинства данного продукта, позволяющие сделать заключение о целесообразности его использования для защиты участков сети Internet. В то же время RealSecure не содержит средств определения и противодействия атакам, получившим распространение в последнее время. По-видимому, данная особенность продукта обусловливается, с одной стороны, отсутствием механизма добавления сигнатур новых атак и, с другой стороны, относительно недавним распространением информации о новых атаках и выявленных уязвимостях.
Согласно информации от фирмы ISS, в последующих версиях продукта RealSecure планируется включить механизм актуализации базы данных сигнатур атак и уязвимостей программного обеспечения.
Благодарности
Тестовые ключи для исследования полнофункциональных коммерческих версий продуктов семейства SAFEsuite были любезно предоставлены официальным представителем компании ISS в России и странах СНГ — АО НИП «Информзащита». Л.
Литература
1. John D. Howard. Analysis of Security Incidents on the Internet 1989-1995. Carnegie Institute of Technology. Carnegie Mellon University. 1997.
2. И. Трифаленков. Инструментальные средства изучения защищенности информационных систем. Материалы конференции «Internet-Россия ’97».
3. А. Азаркин, Г. Фоменков. Защита информационных ресурсов сети Internet путем инспекции потоков данных. Защита информации. Конфидент. № 5.1997.
4. Кристина Б. Салливан. Поиск трещин в крепостной стене сетевой безопасности. PC Week/RE. № 46. 1997.
5. Michael Sobirey’s. Intrusion Detection Systems page. www-rnks.informatik.tu-cottbus.de/~sobirey/ids. html, 1997.