3) Контроль целостности, фокусируется на некотором аспекте или виде файла, объекта, который был изменен. Это часто затрагивает атрибуты файла и директории, содержание и потоки данных. Анализ целостности часто использует сильные криптографические механизмы, называемые message digest (или hash) algorithms, которые могут распознавать даже незначительные изменения.
Достоинства:
Любая успешная атака, при которой были изменены файлы, даже если использовались rootkits или перехватчики сетевых пакетов, будет определяться независимо от того, использовался ли для определения атаки анализ сигнатур или статистический анализ.
Недостатки:
Поскольку современные реализации этого подхода стремятся работать в пакетном (batch)-режиме, они приводят к реагированию на атаки не в реальном масштабе времени.
Функционирование подсистем обнаружения атак и вторжений на базе ИНС основана на утверждение, что атака является отклонением от нормального поведения. ИНС обрабатывает входную информацию (входной вектор) и в процессе изменения своего состояния во времени формирует совокупность выходных сигналов (выходной вектор). Для обнаружения аномалий используется ИНС с архитектурой многослойного персептрона.
В нашем случае рассматривается уровень локальной сети, подключенной к глобальной сети, функционирующей с использованием стека протоколов TCP/IP, при этом подсистема обнаружения атак и вторжений выявляет отклонения (аномалии) сетевого трафика [100]. Анализ IP- дейтаграмм должен происходить в реальном масштабе времени для обеспечения своевременной реакции на атаку.
Для успешной работы подсистемы обнаружения атак и вторжений ИНС должна быть обучена. Однако для этого необходимо сформировать входной вектор параметров сетевого трафика, по которым можно было бы выявлять его аномалии. Такие параметры могут содержаться, например, в виде используемых, при передачи данных протоколов прикладного, транспортного и сетевого уровня, в полях данных, передаваемых по сети пакетов, в служебной информации. Кроме того, для этой цели могут быть использованы общесистемные параметры, отражающие состояние трафика в целом. Следует отметить, что использование в качестве существенных параметров для обнаружения аномалий трафика данных пользователя является наиболее сложным, поскольку содержание таких данных может быть весьма разнообразным, что существенно затрудняет обучение сети и формирования состоятельных критериев обнаружения аномалий. Более практичным и целесообразным является использование, для этих целей разнообразной служебной информации. Именно ее, как правило, модифицируют нарушители для получения прав доверенного пользователя или администратора.
Пакеты данных, передаваемых по сети, формируются исходя из стека протоколов TCP/IP. На рис. 2.6 представлена схема формирования пакета [96].
Рис. 2.6. Схема формирования пакета
TCP и UDP протоколы транспортного уровня, а так же протоколы ICMP и IGMP, используют IP датаграммы для передачи своих данных.
Формирование IP датаграммы представлено на рис. 2.7.
IP протокол, должен добавить какой-либо идентификатор к IP заголовку, который он генерирует, чтобы указать какому уровню принадлежат данные. IP протокол, делает это путем сохранения восьмибитного значения в своем заголовке, которое называется полем протокола. Это значение равно 0 для TCP, 1 для UDP, 2 для ICMP, 3 для IGMP [96].
Рис. 2.7. Схема формирования IP датаграммы
Точно так же различные приложения могут использовать TCP или UDP в одно и то же время. Протоколы транспортного уровня сохраняют в заголовке идентификатор приложения, которое их использует. TCP и UDP оба используют шестнадцатибитный номер порта (port number), чтобы указать на приложения. TCP и UDP сохраняют номер порта источника и номер порта назначения в своих заголовках.
Были выбраны 9 элементов пакета данных, поскольку, они предоставляют полное описание информации, передаваемой пакетом.
- Protocol ID - Протокол, связанный с событием (TCP = 0, UDP = 1, ICMP = 2 и IGMP = 3).
- Исходный порт - Номер порта источника.
- Порт назначения - Номер порта хоста назначения.
- Исходный адрес - IP-адрес источника.
- Адрес назначения - IP-адрес получателя.
- ICMP Type - Тип ICMP пакета (Echo Request или Null).
- ICMP Code - Кодовое поле (или поле кода) из ICMP пакета (None или Null).
- Raw Data Length - Длина данных в пакете.
- Raw Data - Порция данных пакета.
Вектор указанных параметров представляет входной вектор ИНС. В общем случае его параметры являются случайными числами (если даже некоторые из них непосредственно не представлены в числовом выражении, то их достаточно просто конвертировать в числовой формат).
Выходной вектор параметров ИНС является одномерным, представляя ответ на вопрос: является ли дано поведение аномальным или нет, входные поля вектора представлены в таблице 2.
Таблица 2
Значение координат вектора X
Таким образом, вектор принимает
вид:
Получив входной вектор для искусственной нейронной сети, мы можем предложить общую схему работы системы обнаружения вторжений и атак на основе нейронных сетей, которая представлена на рис. 2.8.
Рис. 2.8. Схема работы системы обнаружения вторжений и атак на основе нейронных сетей
нейронных сетей
Развитие искусственных нейронных сетей вдохновляется биологией. То есть, рассматривая сетевые конфигурации и алгоритмы, исследователи мыслят их в терминах организации мозговой деятельности. Но на этом аналогия может и закончиться. Наши знания о работе мозга столь ограничены, что мало бы нашлось руководящих ориентиров для тех, кто стал бы ему подражать. Поэтому разработчикам сетей приходится выходить за пределы современных биологических знаний в поисках структур, способных выполнять полезные функции. Во многих случаях это приводит к необходимости отказа от биологического правдоподобия, мозг становится просто метафорой, и создаются сети, невозможные в живой материи или требующие неправдоподобно больших допущений об анатомии и функционировании мозга [82].
Несмотря на то, что связь с биологией слаба и зачастую несущественна, искусственные нейронные сети продолжают сравниваться с мозгом. Их функционирование часто напоминает человеческое познание, поэтому трудно избежать этой аналогии. К сожалению, такие сравнения неплодотворны и создают неоправданные ожидания, неизбежно ведущие к разочарованию. Исследовательский энтузиазм, основанный на ложных надеждах, может испариться, столкнувшись с суровой действительностью, как это уже однажды было в шестидесятые годы, и многообещающая область снова придет в упадок, если не будет соблюдаться необходимая сдержанность.
Несмотря на сделанные предупреждения, полезно все же знать кое-что о нервной системе млекопитающих, так как она успешно решает задачи, к выполнению которых лишь стремятся искусственные системы.
Нервная система человека, построенная из элементов, называемых нейронами, имеет ошеломляющую сложность. Около 1011 нейронов участвуют в примерно 1015 передающих связях, имеющих длину метр и более. Каждый нейрон обладает многими качествами, общими с другими элементами тела, но его уникальной способностью является прием, обработка и передача электрохимических сигналов по нервным путям, которые образуют коммуникационную систему мозга [81].
Рис. 3.1. Биологический нейрон
На рис. 3.1 показана структура пары типичных биологических нейронов. Дендриты идут от тела нервной клетки к другим нейронам, где они принимают сигналы в точках соединения, называемых синапсами. Принятые синапсом входные сигналы подводятся к телу нейрона. Здесь они суммируются, причем одни входы стремятся возбудить нейрон, другие – воспрепятствовать его возбуждению. Когда суммарное возбуждение в теле нейрона превышает некоторый порог, нейрон возбуждается, посылая по аксону сигнал другим нейронам. У этой основной функциональной схемы много усложнений и исключений, тем не менее большинство искусственных нейронных сетей моделируют лишь эти простые свойства [80].
Искусственный нейрон имитирует в первом приближении свойства биологического нейрона. На вход искусственного нейрона поступает некоторое множество сигналов, каждый из которых является выходом другого нейрона. Каждый вход умножается на соответствующий вес, аналогичный синаптической силе, и все произведения суммируются, определяя уровень активации нейрона. На рис. 3.2 представлена модель, реализующая эту идею. Хотя сетевые парадигмы весьма разнообразны, в основе почти всех их лежит эта конфигурация. Здесь множество входных сигналов, обозначенных x1, x2,…, xn, поступает на искусственный нейрон. Эти входные сигналы, в совокупности обозначаемые вектором X, соответствуют сигналам, приходящим в синапсы биологического нейрона. Каждый сигнал умножается на соответствующий вес w1, w2,…, wn, и поступает на суммирующий блок, обозначенный Σ. Каждый вес соответствует «силе» одной биологической синаптической связи. (Множество весов в совокупности обозначается вектором W.)
Суммирующий блок, соответствующий телу
биологического элемента, складывает
взвешенные входы алгебраически, создавая
выход, который называют NET.
В векторных обозначениях это может быть
компактно записано следующим образом:
.
Рис. 3.2. Искусственный нейрон
Сигнал NET далее, как правило, преобразуется активационной функцией F и дает выходной нейронный сигнал OUT. Активационная функция может быть обычной линейной функцией [91]:
,
где К – постоянная, пороговой функции.
OUT = 1, если NET > T,
OUT = 0 в остальных случаях,
где Т – некоторая постоянная пороговая величина, или же функцией, более точно моделирующей нелинейную передаточную характеристику биологического нейрона и представляющей нейронной сети большие возможности.
Рис. 3.3. Искусственный нейрон с активационной функцией
На рис. 3.3 блок, обозначенный F, принимает сигнал NET и выдает сигнал OUT. Если блок F сужает диапазон изменения величины NET так, что при любых значениях NET значения OUT принадлежат некоторому конечному интервалу, то F называется «сжимающей» функцией. В качестве «сжимающей» функции часто используется логическая или «сигмоидальная» (S-образная) функция, показанная на рис. 23. Эта функция математически выражается как F(x) = 1/(1 + е -x) [82]. Таким образом,
.
По аналогии с электронными системами активационную функцию можно считать нелинейной усилительной характеристикой искусственного нейрона. Коэффициент усиления вычисляется как отношение приращения величины OUT к вызвавшему его небольшому приращению величины NET. Он выражается наклоном кривой при определенном уровне возбуждения и изменяется от малых значений при больших отрицательных возбуждениях (кривая почти горизонтальна) до максимального значения при нулевом возбуждении и снова уменьшается, когда возбуждение становится большим положительным. Гроссберг (1973) обнаружил, что подобная нелинейная характеристика решает поставленную им дилемму шумового насыщения [39]. Каким образом одна и та же сеть может обрабатывать как слабые, так и сильные сигналы. Слабые сигналы нуждаются в большом сетевом усилении, чтобы дать пригодный к использованию выходной сигнал. Однако усилительные каскады с большими коэффициентами усиления могут привести к насыщению выхода шумами усилителей (случайными флуктуациями), которые присутствуют в любой физически реализованной сети. Сильные входные сигналы в свою очередь также будут приводить к насыщению усилительных каскадов, исключая возможность полезного использования выхода. Центральная область логистической функции (рис. 3.4), имеющая большой коэффициент усиления, решает проблему обработки слабых сигналов, в то время как области с падающим усилением на положительном и отрицательном концах подходят для больших возбуждений. Таким образом, нейрон функционирует с большим усилением в широком диапазоне уровня входного сигнала [77].