Способ защиты информационно-вычислительных сетей от компьютерных атак

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

 

Изобретение относится к электросвязи и может быть использовано в системах защиты от компьютерных атак путем их оперативного выявления и блокирования в информационно-вычислительных сетях (ИВС). Например, в сетях передачи данных (СПД) типа "Internet", основанных на семействе коммуникационных протоколов TCP/IP (Transmission Control Protocol / Internet Protocol) и описанных в книге Кульгин М. Технологии корпоративных сетей. Энциклопедия. - СПб.: Издательство "Питер", 1999. - 704 с.: ил.

Заявленное техническое решение расширяет арсенал средств данного назначения.

Известен способ защиты от компьютерных атак, реализованный в патенте РФ №2179738, "Способ обнаружения удаленных атак (Толкование используемых терминов приведено в Приложении 1) в компьютерной сети", класс G 06 F 12/14, заявл. 24.04.2000. Известный способ включает следующую последовательность действий. Наблюдение за информационным потоком адресованных абоненту ИВС пакетов сообщений, включающее постоянно возобновляемый подсчет числа пакетов, выполняемый в пределах серии пакетов, поступающих из канала связи (КС) подряд друг за другом через промежутки времени не более заданного. При этом проверку поступающих пакетов данных на соответствие заданным правилам выполняют каждый раз, когда размер очередной наблюдаемой серии достигает критического числа пакетов.

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

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

Известен также способ, позволяющий по изменению состояния элемента ИВС обнаруживать компьютерные атаки, по патенту РФ №2134897, класс G 06 F 17/40, "Способ оперативного динамического анализа состояний многопараметрического объекта", заявл. 20.08.1999. В известном способе преобразуют результаты допусковой оценки разнородных динамических параметров в соответствующие информационные сигналы с обобщением по всему множеству параметров в заданном временном интервале и определяют относительную величину и характер изменения интегрального состояния многопараметрического элемента ИВС.

Недостатком данного способа является узкая область применения, обусловленная тем, что несмотря на возможность оперативной диагностики технического и функционального состояний многопараметрического элемента ИВС, в нем применяют ограниченную совокупность признакового пространства, что создает условия для пропуска удаленных компьютерных атак (см. Медведовский И.Д. и др. Атака на Internet. - М.: ДМК, 1999. - 336 с.: ил.) и, как следствие, приводит к снижению устойчивости функционирования ИВС.

Наиболее близким по своей технической сущности к заявленному является способ защиты от компьютерных атак, реализованный в устройстве по патенту РФ №2219577, "Устройство поиска информации", класс G 06 F 17/40, заявл. 24.04.2002. Способ-прототип заключается в том, что принимают из КС i-ый пакет, где i=1, 2, 3,..., и запоминают его. Принимают (i+1)-ый пакет, запоминают его. Выделяют из заголовка i-го и (i+1)-го пакетов идентификационные признаки, анализируют их на предмет совпадения и по результатам анализа принимают решение о факте наличия компьютерной атаки.

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

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

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

Поставленная цель достигается тем, что в способе защиты ИВС от компьютерных атак, заключающемся в том, что принимают i-й, где i=1, 2, 3..., пакет сообщения из КС, запоминают его, принимают (i+1)-й пакет сообщения, запоминают его, выделяют из запомненных пакетов сообщений характеризующие их параметры, сравнивают их и по результатам сравнения принимают решение о факте наличия или отсутствия компьютерной атаки, предварительно задают массив {Р} для запоминания Р≥1 фрагментированных пакетов сообщений и массивы для запоминания параметров, выделенных из запомненных пакетов сообщений: S≥1 значений поля данных "Общая длина", С≥1 значений поля данных "Смещение фрагмента", Е≥1 сумм значений полей данных "Общая длина" и "Смещение фрагмента" запомненных пакетов сообщений соответственно {S}, {С} и {Е}. Кроме того, предварительно задают массив {Рдоп} для запоминания дополнительных Рдоп≥1 фрагментированных пакетов сообщений. Причем после приема из КС i-го пакета сообщения из его заголовка выделяют значение поля данных "Флаг фрагментации" Fi. При его значении, равном нулю, передают i-й пакет сообщения в ИВС, после чего принимают (i+1)-й пакет сообщения из КС. При значении поля даных "Флаг фагментации" i-го пакета сообщения, равном единице, запоминают i-й пакет сообщения, выделяют из его заголовка значение поля данных "Идентификатор" Ni и запоминают его. Выделяют из заголовка значения полей данных "Общая длина" Si и "Смещение фрагмента" Сi. Запоминают их в соответствующих массивах {S} и {С}. Вычисляют сумму Еi запомненного i-го пакета собщения Ei=Sii и запоминают ее в массив {Е}. Кроме того, приняв из КС (i+1)-й пакет сообщения, из его заголовка выделяют значение поля данных "Идентификатор" Ni+1, сравнивают его со значением поля данных "Идентификатор" Ni i-го пакета сообщения. При их несовпадении передают (i+1)-й пакет сообщения в ИВС, после чего принимают из КС очередной пакет сообщения. При совпадении значений полей данных "Идентификатор" i-го и (i+1)-го пакета сообщений запоминают (i+1)-й пакет сообщения, выделяют из его заголовка значения полей данных "Общая длина" Si+1, "Смещение фрагмента" Сi+1 и запоминают их в соответствующих массивах {S} и {С}. Вычисляют сумму Ei+1=Si+1+Ci+1 и запоминают ее в массив {Е}. Считывают из заголовка (i+1)-го пакета сообщения значение поля данных "Флаг фрагментации" Fi+1. При его равенстве единице повторяют действия, начиная с принятия из КС очередного пакета сообщения и сравнения полей данных "Идентификатор", причем эти действия повторяют до приема из КС пакета сообщения, принадлежащего совокупности Ni фрагментированых пакетов сообщений, со значением поля данных "Флаг фрагментации", равном нулю. При значении поля данных "Идентификатор" (i+1)-го пакета сообщения, равном нулю, из массива {Р} фрагментированных пакетов сообщений считывают, из числа ранее запомненных пакетов сообщений, пакет сообщения Рm, где m=1, 2, 3..., с наименьшим значением поля данных "Смещение фрагмента" Сmin. Удаляют этот пакет сообщений из массива {Р} и запоминают его в массив {Рдоп} для дополнительных фрагментированных пакетов сообщений. После чего из числа оставшихся в массиве {Р} фрагментированных пакетов сообщений вновь считывают пакет сообщений Pm+1 с наименьшим значением поля данных "Смещение фрагмента" Сmin. Также удаляют этот пакет сообщений Рm+1 из массива {Р} и запоминают его в массив {Рдоп}. После чего сравнивают сумму Еm из массива {Е}, соответствующую запомненному в массиве {Рдоп} пакету сообщения Рm, со значением поля данных "Смещение фрагмента" Cm+1, принадлежащим пакету сообщения Pm+1, запомненному последним в массив {Рдоп}. При неравенстве значений Em и Сm+1 принимают решение о наличии компьютерной атаки, запрещают передачу в ИВС всех пакетов сообщений, сохраненных в массиве {Р}, и удаляют все значения из массивов {Р}, {Рдоп}, {S}, {С} и {Е}. При равенстве значений Еm и Сm+1 из массива {Рдоп} в ИВС передают пакет сообщения Рm. Затем считывают из заголовка пакета сообщения Pm+1, оставшегося в массиве {Рдоп}, значение его поля данных "Флаг фрагментации" F. При F, равном нулю, из массива {Рдоп} передают пакет сообщения в ИВС, а при F, равном единице, из массива {Р} фрагментированных пакетов сообщений считывают очередной пакет сообщений с наименьшим значением поля данных "Смещение фрагмента" Сmin. После чего повторяют действия начиная с запоминания очередного пакета сообщения в массив {Рдоп}, причем эти действия повторяют со всеми пакетами из множества {Р}.

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

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

Заявленный способ поясняется чертежами, на которых показаны:

фиг.1 - Значения MTU для различных технологий построения ИВС;

фиг.2 - Заголовок IP-дейтаграммы;

фиг.3 - Блок-схема алгоритма, реализующего заявленный способ защиты ИВС от компьютерных атак;

фиг.4 - Процесс выявления фраментированных пакетов сообщений, принадлежащих одной последовательности;

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

фиг.6 - Схема ИВС, используемой в эксперименте;

фиг.7 - Интерфейс пользователя программного макета системы защиты ИВС от компьютерных атак с результатами эксперимента.

Известно, что фрагментация используется при необходимости передачи IP-дейтаграммы6 через сегмент ИВС, в которой максимально допустимая единица передачи данных (maximum transmission unit - MTU7) меньше размера этой дейтаграммы. Если размер дейтаграммы превышает это значение, то на маршрутизаторе, который передает данную дейтаграмму, должна быть выполнена ее фрагментация.

Фрагменты передаются по адресу назначения, где хост8-получатель должен выполнить их повторную сборку. На пути доставки фрагментированных пакетов они могут подвергаться дальнейшей фрагментации, если необходима их передача через сегмент сети с еще меньшим MTU. Значения MTU для различных технологий построения ИВС представлены в таблице 1 (фиг.1). Практически во всех стеках протоколов есть протоколы, отвечающие за фрагментацию сообщений прикладного уровня на такие части, которые укладывались бы в кадры канального уровня. В стеке ТСР/IP эту задачу решает протокол TCP, который разбивает поток байтов, передаваемый ему с прикладного уровня, на сегменты нужного размера. Протокол IP на хосте-отправителе, как правило, не использует свои возможности по фрагментации пакетов. А вот на маршрутизаторе, когда пакет необходимо передать из сети с большим значением MTU в сеть с меньшим значением MTU, способности протокола IP выполнять фрагментацию становятся востребованными.

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

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

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

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

Флаг фрагментации F показывает появление последнего фрагмента. Во всех фрагментированных пакетах одной совокупности флаг фрагментации равен единице, за исключением последнего (флаг фрагментации равен нулю).

Описание процесса фрагментации пакетов сообщений достаточно хорошо описаны в литературе (см., например, Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы: учебник для вузов. - СПб.: Питер, 2003. - 864 с.: ил.), и сама по себе фрагментация является абсолютно нормальным явлением, но существует возможность создания фрагментов пакетов, которые при их сборке на хосте-получателе позволят провести атакующие действия (например, атака Teardrop, описанная в книге Норткан С, Новак Д. Обнаружение нарушений безопасности в сетях, 3-е издание.: Пер. с англ. - М.: Издательский дом "Вильяме", 2003. - 448 с.: ил., стр.71, атаки evelPing и Boink, описанные в Норткан С., Купер М, Фирноу М., Фредерик К. Анализ типовых нарушений безопасности в сетях.: Пер. с англ. - М.: Издательский дом "Вильяме", 2001. - 464 с.: ил., с.336-348). Нарушители также используют фрагментацию на разных этапах своих атак с целью сокрытия своих действий и зондирования сетей, а также для запуска вредоносных программ. Атаки отказа в обслуживании основаны на использовании большого количества фрагментированных пакетов, что приводит к чрезмерной трате ресурсов атакованной ИВС.

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

- Каждый фрагмент единого пакета сообщений связан с другим фрагментом с помощью общего для всех фрагментов идентификационного номера. Этот номер копируется из поля "Идентификатор" заголовка IP-дейтаграммы, и, если пакет фрагментирован, его называют идентификатором фрагмента (fragment ID);

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

- Каждый фрагмент уведомляет о наличии следующих за ним фрагментов. Для этой цели служит флаг фрагментации F (More Fragments - следующий фрагмент).

Заявленный способ реализуют следующим образом. Структура пакетов сообщений известна (см. например, Кульгин М. Технологии корпоративных сетей. Энциклопедия. - СПб.: Издательство "Питер", 1999. - 704 с.: ил.), как известен и принцип передачи пакетов в ИВС, что дает возможность анализа идентификационных признаков. Например, на фиг.2 представлена структура заголовка IP-дейтаграммы. Полужирным шрифтом выделены поля данных заголовка пакета сообщения, по которым определяют правильность сборки фрагментированных пакетов.

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

В блок-схеме приняты следующие обозначения:

{Р} - массив для запоминания фрагменированных пакетов сообщений;

{S} - массив для запоминания значений полей данных "Общая длина", выделенных и запомненных фрагментированых пакетов сообщений;

{С} - массив для запоминания значений полей данных "Смещение фрагмента", выделенных и запомненных фрагментированых пакетов сообщений;

{Е} - массив для запоминания суммы значений полей данных "Общая длина" и "Смещение фрагмента", выделенных и запомненных фрагментированых пакетов сообщений;

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

F- значение поля данных "Флаг фрагментации";

N - значение поля данных "Идентификатор".

Предварительно задают (см. блок 1 на фиг.3) массив {Р} для запоминания Р≥1 фрагментированных пакетов сообщений. Максимальная размерность данного массива будет зависить от отношений MTU передаваемого сегмента ИВС и принимаемого, т.е.

Например, при передачи пакета сообщения из сегмента, построенного по технологии Token Ring (IBM, 16 Мбит/с) (MTU=17914 байта), в сегмент сети, построенный по технологии DIX Ethernet (MTU=1500 байта), максимальная размерность массива равна двенадцати разрядам.

Также предварительно задают массивы для запоминания параметров, выделенных из запомненных пакетов сообщений, S≥1 значений поля данных "Общая длина", C≥1 значений поля данных "Смещение фрагмента", Е≥1 сумм значений полей данных "Общая длина" и "Смещение фрагмента" запомненных пакетов сообщений {S}, {С}, {Е} соответственно. Разрядность данных массивов будет равна разрядности массива, хранящего фрагментированные пакеты сообщений одной последовательности. А также задают массив {Рдоп} для запоминания дополнительных Рдоп≥1 фрагментированных пакетов сообщений. Разрядность данного массива будет равна двум разрядам. Кроме того, первоначально данные множества будут пустые.

Из КС принимают (см. блок 2 на фиг.3) i-ый пакет сообщения, где i=1, 2, 3..., и выделяют (см. блок 3 на фиг.3) из заголовка принятого пакета значение поля данных "Флаг фрагментации" Fi. Затем выясняют (см. блок 4 на фиг.3), равно ли значение поля данных "Флаг фрагментации" нулю. Равенство при этой проверке означает, что принятый пакет сообщений не является фрагментированным. В этом случае принятый из КС пакет сообщений передается в ИВС (см. блок 5 на фиг.3), а из КС принимается очередной (i+1)-й пакет сообщения, при этом в последующем осуществляется выделение и анализ значения поля данных "Флаг фрагментации" Fi+1. Данная проверка осуществляется с целью выявления факта поступления из КС фрагментированных пакетов в ИВС.

При получении из КС фрагментированного пакета сообщения (значение поля данных "Флаг фрагментации" равно единице) принятый пакет сообщения запоминают в массив {Р} (см. блок 7 на фиг.3). При этом независимо, каким из принятых из КС и проанализированных пакетов сообщений он был первым, вторым или i-м, он сохраняется в первую ячейку массива {Р} (см. фиг.4). Из заголовка сохраненного пакета сообщения выделяют (см. блок 8 на фиг.3) и запоминают значение поля данных "Идентификатор", а значения полей данных "Смещение фрагмента" и "Общая длина" сохраняют в массивы {С} и {S} соответственно (см. блок 9 на фиг.3). Причем значения сохраняются в первые ячейки массивов, т.к. пакет сообщений сохранен в первую ячейку. Затем находят сумму значений полей данных "Смещение фрагмента" и "Общая длина" запомненного пакета сообщений Е. Данная сумма показывает, на сколько должен быть смещен следующий принятый фрагментированный пакет, принадлежащий данной совокупности пакетов. Полученное значение сохраняется в первую ячейку массива {Е} (см. блок 10 на фиг.3).

Далее принимают из КС следующий пакет сообщений (см. блок 11 на фиг.3). Установив наличие поступающих в ИВС фрагментированных пакетов сообщений, осуществляем выделение и запоминание пакетов сообщений из поступающей последовательности из КС пакетов, принадлежащих данной совокупности фрагментированных пакетов. Для этого из принятого пакета сообщений выделяем значение поля данных "Идентификатор" Ni+1 (см. блок 12 на фиг.3). Сравниваем его значение зо значением поля данных "Идентификатор" Ni пакета сообщения, запомненного ранее (см. блок 13 на фиг.3). В случае отсутствия совпадения значений полей данных "Идентификатор" принятого пакета сообщения и пакета сообщения, запомненного ранее, первый передается в ИВС (см. блок 14 на фиг.3), а из КС принимается следующий пакет сообщения с целью установления принадлежности к анализируемой совокупности фрагментированных пакетов.

В случае выявления принадлежности принятого пакета сообщения к совокупности анализируемой последовательности фрагментированных пакетов (значения полей данных "Идентификатор" принятого и запомненного ранее пакетов сообщений равны), независимо, каким был принят и проанализирован данный пакет сообщения из КС (например, (i+k)-й пакет собщений), запоминают принятый пакет сообщения в следующую (вторую, третью и т.д.) ячейку массива {Р} (см. блок 16 на фиг.3). Выделяют из заголовка принятого пакета сообщения значения полей данных "Общая длина" и "Смещение фрагмента" (см. блок 17 на фиг.3) и запоминают их значения соответственно в массивы {S} и {С} в ячейки с номерами, соответствующими номеру ячейки, в которую был сохранен анализируемый пакет сообщений (см. блок 18 на фиг.3). Затем вычисляют и запоминают сумму значений полей данных "Смещение фрагмента" и "Общая длина" запомненного пакета сообщений (см. блок 19 на фиг.3) и сохраняют в соответствующую ячейку массива {Е}. Например, если был выявлен второй пакет сообщений, принадлежащий данной совокупности фрагментированных пакетов сообщений ((i+k)-й пакет собщений), он помещается во вторую ячейку массива {Р}, а значения его полей данных и сумма этих значений также помещаются во вторые ячейки соотвествующих массивов. Такая же процедура размещения осуществляется и с третьим (например, с (i+k+t)-м), и с четвертым (например, с (i+k+t+q)-м) пакетом сообщений. Процесс выявления фраментированного пакета сообщения, состоящего из четырех фрагментов, принадлежащих одной последовательности, представлен на фиг.4.

Для определения, является ли принятый пакет сообщения последним из совокупности анализируемых фрагментированных пакетов, из заголовка принятого пакета сообщения выделяют значение поля данных "Флаг фрагментации" (см. блок 17 на фиг.3), запоминают его (см. блок 18 на фиг.3) и выясняют (см. блок 20 на фиг.3), равно ли значение поля данных "Флаг фрагментации" F нулю. Неравенство при этой проверке означает, что принятый пакет сообщений не является последним пакетом сообщений, принадлежащим анализируемой совокупности фрагментированных пакетов сообщений. В этом случае повторяют действия, начиная с принятия из КС очередного пакета сообщения (см. блок 11 на фиг.3) и сравнения полей данных "Идентификатор" (см. блок 13 на фиг.3), причем эти действия повторяют до приема из КС пакета сообщения, принадлежащего совокупности Ni фрагментированых пакетов сообщений, со значением поля данных "Флаг фрагментации", равном нулю (см. блок 20 на фиг.3). В этом случае приступают к анализу запомненных пакетов сообщений в массив {Р} с целью определения правильности сборки всей совокупности выявленных фрагментированных пакетов сообщений.

Для анализа запомненных пакетов сообщений в массив {Р} с целью определения правильности сборки всей совокупности фрагментированных пакетов сообщений из совокупности запомненных пакетов сообщений считывают из числа ранее запомненных пакетов сообщений пакет сообщения Рm, где m=1, 2, 3..., которому соответствует наименьшее значение поля данных "Смещение фрагмента" Сmin. Выделенный пакет сообщения удаляют из массива {Р} и запоминают его в массив {Рдоп} для фрагментированных пакетов сообщений выделенных дополнительно (см. блок 22 на фиг.3). После чего из числа оставшихся в массиве {Р} фрагментированных пакетов сообщений вновь считывают пакет сообщений Рm+1 с наименьшим значением поля данных "Смещение фрагмента" Сmin, и также удаляют этот пакет сообщений из массива {Р} и запоминают его в массив {Рдоп} (см. блок 23 на фиг.3).

После сравнения суммы параметров Еm из массива сумм параметров {Е}, соответствующей ранее запомненному пакету сообщений Рm, в массиве дополнительно запомненных пакетов сообщений {Рдоп} со значением поля данных "Смещение фрагмента" Сm+1 из массива значений полей данных "Смещение фрагмента" {С}, соответствующего позднее запомненному пакету сообщений Рm+1 в массиве дополнительно запомненных пакетов сообщений {Рдоп} (см. блок 24 на фиг.3), если значения не равны, то после принятия решения о наличии компьютерной атаки запрещают передачу пакетов сообщений в ИВС (см. блок 30 на фиг.3) и производят удаление всех фрагментированных пакетов сообщений пренадлежащих данной совокупности фрагментированных пакетов сообщений, а также удаляют из массивов содержащих значения параметров запомненных пакетов сообщений все данные (см. блок 31 на фиг.3).

В случае равенства значений Еm и Сm+1 из массива {Рдоп} в ИВС передают пакет сообщения Рm (см. блок 25 на фиг.3), затем считывают из заголовка пакета сообщения Pm+1, оставшегося в массиве {Рдоп}, значение его поля данных "Флаг фрагментации" F (см. блок 26 на фиг.3), и при F, равном нулю, из массива {Рдоп} передают пакет сообщения в ИВС (см. блок 28 на фиг.3), а при F, равном единице, из массива {Р} фрагментированных пакетов сообщений считывают очередной пакет сообщений с наименьшим значением поля данных "Смещение фрагмента" (см. блок 23 на фиг.3), после чего повторяют действия начиная с запоминания этого очередного пакета сообщения в массив {Рдоп}, причем эти действия повторяют со всеми пакетами из множества {Р}. Процесс определения правильности сборки пакета сообщения, состоящего из четырех фрагментов, представлен на фиг.5.

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

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

Эксперимент производился следующим образом: с помощью програмно-аппаратных средств объединены три сегмента ИВС, построенных по технологиям Token Ring (IBM, 16 Мбит/с) (MTU=17914 байта) (один сегмент), и построенный по технологии DIX Ethernet (MTU=1500 байта) (два сегмента). Причем объединение произвели таким образом, чтобы на атакуемый хост поступали не только фрагментированные пакеты сообщений, но и пакеты сообщений, не подверженные фрагментации (см. фиг.6).

В ходе эксперимента был смоделирован поток сообщений, поступающий на вход атакуемого хоста ИВС, включающий совокупности фрагментированных пакетов сообщений, подверженые компьютерным атакам типа Teardrop и Teardrop 2, описанные в книге Норткан С., Новак Д. Обнаружение нарушений безопасности в сетях, 3-е издание.: Пер. с англ. - М.: Издательский дом "Вильяме", 2003. - 448 с.: ил.

В ходе эксперимента были выявлены следующие типы пакетов сообщений, поступающие на атакуемый хост:

- Нефрагментированые пакеты сообщений - пакеты сообщений, поступившие на атакуемый хост, построенный по технологии DIX Ethernet из сегмента, построенного по такой же технологии через сегмент, построенный по технологии Token Ring;

- Фрагментированные пакеты сообщений, не подверженные несанкционированным воздействиям, поступившие из сегмента, построенного по технологии Token Ring;

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

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

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

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

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

Дополнительными положительными свойствами заявленного способа являются: возможность обнаружения распределеных компьютерных атак не только на этапе реализации атаки, но и, что очень важно (см. например, Лукацкий А. В. Обнаружение атак. - СПб.: БХВ - Петербург, 2001. - 624 с.: ил.), на этапе сбора нарушителем информации о ИВС.

Способ защиты информационно-вычислительных сетей от компьютерных атак, заключающийся в том, что принимают i-й, где i=1, 2, 3..., пакет сообщения из канала связи, запоминают его, принимают (i+1)-й пакет сообщения, запоминают его, выделяют из запомненных пакетов сообщений характеризующие их параметры, сравнивают их и по результатам сравнения принимают решение о факте наличия или отсутствия компьютерной атаки, отличающийся тем, что предварительно задают массив {Р} для запоминания Р≥1 фрагментированных пакетов сообщений и массивы для запоминания параметров, выделенных из запомненных пакетов сообщений: S≥1 значений поля данных «Общая длина», S≥1 значений поля данных «Смещение фрагмента», Е≥1 сумм значений полей данных «Общая длина» и «Смещение фрагмента» запомненных пакетов сообщений {S}, {С}, {Е} соответственно, а также массив {Рдоп} для запоминания дополнительных Рдоп≥1 фрагментированных пакетов сообщений, причем после приема из канала связи i-го пакета сообщения из его заголовка выделяют значение поля данных «Флаг фрагментации» Fi и при его значении, равном нулю, передают i-й пакет сообщения в информационно-вычислительную сеть, после чего принимают (i+1)-й пакет сообщения, а при значении поля данных «Флаг фрагментации» i-го пакета сообщения равном единице, запоминают i-й пакет сообщения, выделяют из его заголовка значение поля данных «Идентификатор» Ni и запоминают его, выделяют из заголовка значения полей данных «Общая длина» Si и «Смещение фрагмента» Ci и запоминают их в соответствующих массивах {S} и {С}, вычисляют сумму Еi запомненного i-го пакета собщения Ei=Si+Ci и запоминают ее в массив {Е}, кроме того, приняв из канала связи (i+1)-й пакет сообщения, из его заголовка выделяют значение поля данных «Идентификатор» Ni+1, сравнивают его со значением поля данных «Идентификатор» Ni i-го пакета сообщения и при их несовпадении передают (i+1)-й пакет сообщения в информационно-вычислительную сеть, после чего принимают из канала связи очередной пакет сообщения, а при совпадении значений полей данных «Идентификатор» i-го и (i+1)-го пакетов сообщений запоминают (i+1)-й пакет сообщения, выделяют из его заголовка значения полей данных «Общая длина» Si+1, «Смещение фрагмента» Ci+1 и запоминают их в соответствующих массивах {S} и {С} значений полей данных, вычисляют сумму Ei+1=Si+1+Ci+1 и запоминают ее в массив {Е}, считывают из заголовка (i+1)-го пакета сообщения значение поля данных «Флаг фрагментации» Fi+1 и при его равенстве единице повторяют действия, начиная с принятия из канала связи очередного пакета сообщения и сравнения полей данных «Идентификатор», причем эти действия повторяют до приема из канала связи пакета сообщения, принадлежащего совокупности Ni, фрагментированых пакетов сообщений со значением поля данных «Флаг фрагментации», равном нулю, а при значении поля данных «Идентификатор» (i+1)-го пакета сообщения, равном нулю, из массива {Р} фрагментированных пакетов сообщений считывают из числа ранее запомненных пакетов сообщений пакет сообщения Рm, где m=1, 2, 3..., с наименьшим значением поля данных «Смещение фрагмента» Cmin удаляют этот пакет сообщений из массива {Р} и запоминают его в массив {Рдоп} для дополнительных фрагментированных пакетов сообщений, после чего из числа оставшихся в массиве {Р} фрагментированных пакетов сообщений вновь считывают пакет сообщений Рm+1 с наименьшим значением поля данных «Смещение фрагмента» Сmin и также удаляют этот пакет сообщений из массива {Р} и запоминают его в массив {Рдоп}, после чего сравнивают сумму Еm из массива {Е}, соответствующую запомненному в массиве {Рдоп} пакету сообщения Рm, со значением поля данных «Смещение фрагмента» Сm+1, принадлежащим последнему пакету сообщения Pm+1, запомненному в массив {Рдоп}, и при неравенстве значений Еm и Сm+1 принимают решение о наличии компьютерной атаки и запрещают передачу в информационно-вычислительную сеть всех сохраненных пакетов сообщений, удаляют все значения из массивов {Р}, {Рдоп}, {S}, {С} и {Е}, а при равенстве значений Em и Cm+1 из массива {Рдоп} в информационно-вычислительную сеть передают пакет сообщения Рm, затем считывают из заголовка пакета сообщения Рm+1, оставшегося в массиве {Рдоп}, значение его поля данных «Флаг фрагментации» F и при F, равном нулю, из массива {Рдоп} передают пакет сообщения в информационно-вычислительную сеть, а при F, равном единице, из массива {Р} фрагментированных пакетов сообщений считывают очередной пакет сообщений с наименьшим значением поля данных «Смещение фрагмента», после чего повторяют действия, начиная с запоминания очередного пакета сообщения в массив {Рдоп}, причем эти действия повторяют со всеми пакетами из множества {Р}.



 

Похожие патенты:

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

Изобретение относится к средствам распространения имеющих авторские права контентов по сетям. .

Изобретение относится к устройству для оказания услуг, например, телефонной связи, передачи данных, содержащему терминальный блок и блок доступа, при этом терминальный блок содержит средства (ПИНt) идентификации терминального блока, который хранится в терминальном блоке, а блок доступа содержит средства (ММИА) идентификации доступа в форме кода или его аналога, причем терминальный блок и блок доступа блокируемы.

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

Изобретение относится к радиосвязи. .

Изобретение относится к технике связи, может быть использовано при построении приемников систем радиосвязи. .

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

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

Изобретение относится к электросвязи и может быть использовано в системах защиты от несанкционированных воздействий с целью их оперативного выявления и блокирования в вычислительных сетях, в частности в сетях передачи данных типа "Internet", основанных на семействе коммуникационных протоколов TCP/IP.

Изобретение относится к области вычислительной техники, а именно к вычислительным устройствам обработки данных. .

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

Изобретение относится к способу входа в систему по меньшей мере в двух элементах сети в пределах коммуникационной сети и устройству для входа в такую систему. .

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

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

Изобретение относится к компьютерам

Изобретение относится к системе обработки информации, которая защищена от разрушения вирусной программой или хакером
Наверх