СПОСОБ ФИЛЬТРАЦИИ АТАКУЮЩИХ ПОТОКОВ, НАЦЕЛЕННЫХ НА МОДУЛЬ СВЯЗИ
METHOD FOR FILTERING ATTACKING STREAMS AIMED AT THE COMMUNICATION MODULE

Область техники, к которой относится изобретение
Настоящее изобретение, в общем, относится к защите модулей связи от атак типа отказ в обслуживании.
Более конкретно, настоящее изобретение относится к способу фильтрации атакующих потоков, нацеленных на модуль связи, принимающий множество входящих потоков данных.
Изобретение относится также к устройству для фильтрации таких атакующих потоков.
Уровень техники
Атаки типа отказ в обслуживании (denial-of-service attack (DoS attack)) и распределенные атаки типа отказ в обслуживании (distributed denial-of-service attack (DDoS attack)) представляет собой кибернетические атаки, целью которых является сделать недоступными услуги, предоставляемые атакованным сайтом. В контексте этих атак речь не идет о повреждении данных атакованного сайта.
Такие атаки могут быть направлены на любой связанный с сервером модуль связи, и в частности, на модуль связи, связанный с сервером в Интернет.
Модуль связи автомобиля обычно связан с частной сетью изготовителя. Однако для усовершенствования конкретных систем содействия водителю или в целях предоставления более широкого выбора предлагаемых услуг мультимедиа предполагается соединить модуль связи автомобиля с сетью Интернет общего пользования. В таком случае этот модуль связи окажется открыт для воздействия разнообразных атак и, в частности, для распределенных атак типа отказ в обслуживании.
Известен способ машинного обучения, используемый для обнаружении потенциальных атак, нацеленных на модуль связи, т.е. на элемент сетевого оборудования, такой как, например, сервер или маршрутизатор. Этот известный способ был разработан для защиты важных компонентов сетевого оборудования, которые принимают неограниченное число входящих и исходящих соединений. Этот способ нацелен на классификацию входящих Интернет-потоков (или IP-потоков, здесь IP является аббревиатурой слов Интернет-протокол (Internet protocol)) для разбиения их на легитимные потоки и атакующие потоки.
Для такой классификации способ основан на графическом распределении параметров, характеризующих входящие потоки данных по нескольким подпространствам. Подпространство определено как графическая зона, очерченная двумя параметрами, характеризующими входящий поток. Это может быть вопрос графика, показывающего среднее время жизни запроса (остальных IP-пакетов) в функции числа источников входящих потоков данных.
В номинальных условиях параметры входного потока собираются графически в кластер вокруг одной рабочей точки, тогда как в случае атаки параметры атакующих потоков имеют отклоняющиеся, аномальные величины и собираются графически вокруг изолированных точек или выпадающих значений.
Согласно известному способу множество входящих потоков данных агрегируют, в течение некоторого периода времени, группируя по адресам источников. Различные агрегированные потоки затем анализируют и, если обнаружена атака (по присутствию по меньшей мере одной отклоняющейся величины), входящий поток, идентифицированный как недопустимый (нелегитимный), незамедлительно отфильтровывают, благодаря большим вычислительным возможностям участвующих процессоров.
Этот способ эффективен в случае сетевого оборудования, соединенного с сетью Интернет общего пользования, (обычно это серверы), поскольку совокупность входящих потоков данных или исходящих потоков данных содержит потоки, приходящие и уходящие по очень большому числу соединений, что позволяет набрать надежную статистику, и поскольку используемые процессоры обладают большой вычислительной мощностью. Поскольку результатом атаки обычно является появление сравнительно небольшого числа входящих потоков данных по сравнению с общим числом входящих потоков данных, различение между кластерами и аномальными величинами оказывается возможным и работает хорошо.
В отличие от этого, модуль связи автомобиля годится для приема лишь ограниченного числа входящих соединений (обычно около десяти соединений). В ходе анализа входящих потоков данных легитимные потоки окажутся перекрыты атакующими потоками, «затеряются» среди них, так что атакующие потоки появятся в виде кластера (и, следовательно, в виде номинальных условий) и более не будут казаться аномальными величинами. Поэтому техническое решение, описанное выше, не может быть применено к защите модуля связи автомобиля.
Раскрытие сущности изобретения
Настоящее изобретение предлагает способ обнаружения атак, нацеленных на модули связи, и в частности, на модуль связи в автомобиле.
Более конкретно, предложен способ фильтрации таких атакующих потоков, как это определено в разделе уровень техники, способ содержит этапы:
- определение множества агрегатов, где каждый агрегат является результатом комбинирования множества входящих потоков данных, принятых в течение заданного периода времени, причем период времени, учитываемый для определения каждого агрегата, отличается от периодов времени, учитываемых для определения других агрегатов, и периоды времени, учитываемые для определения совокупности указанного множества агрегатов, все укладываются в первое обсервационное временное окно,
- определение множества первых векторов измерений, каждый из которых ассоциирован с одним из указанных агрегатов и содержит величины первых характеристических параметров агрегата, с каким ассоциирован этот вектор,
- проецирование указанного множества первых векторов измерений по меньшей мере в одно подпространство, определяемое указанными первыми характеристическими параметрами,
- определение другого агрегата, являющегося результатом комбинирования множества входящих потоков данных, принятых в течение другого периода времени, где этот другой период времени следует за первым обсервационным временным окном,
- определение другого первого вектора измерений, ассоциированного с указанным другим агрегатом и содержащего величины первых характеристических параметров этого другого агрегата,
- проецирование указанного другого первого вектора измерений по меньшей мере в одно подпространство, определяемое первыми характеристическими параметрами,
- определение оценки отклонения от нормы в зависимости от результатов проецирования указанного другого первого вектора измерений и проецирования совокупности указанного множества первых векторов измерений,
затем, если оценка отклонения от нормы попадает в зону сомнений относительно присутствия атакующих потоков:
- определение множества вторых векторов измерений, каждый из которых ассоциирован с одним из указанных агрегатов и содержит величины других характеристических параметров агрегата, с которым он ассоциирован, эти другие характеристические параметры отличаются от указанных первых характеристических параметров,
- определение другого второго вектора измерений, ассоциированного с другим агрегатом и содержащего величины других характеристических параметров указанного другого агрегата, и
- обнаружение присутствия или отсутствия атаки посредством анализа другого второго вектора измерений.
Таким образом, согласно настоящему изобретению, обнаружение атакующих потоков осуществляется в нескольких дискретных фазах реализации, что позволяет ограничить вычислительные мощности, требуемые для выполнения этих фаз. Такая реализация может быть, поэтому, осуществлена посредством процессоров и процедур, не обладающих очень большими вычислительными мощностями, такими как процессоры и процедуры, интегрированные в модуль связи автомобиля.
В дополнение к этому, использование второго вектора измерений, определяемого в зависимости от других характеристических параметров, отличных от и независимых от характеристических параметров, используемых обычно, позволяет подтвердить заключение, полученное относительно присутствия или отсутствия атаки, нацеленной на модуль связи автомобиля.
В последующем представлены другие неисчерпывающие и предпочтительные признаки способа фильтрации атакующих потоков согласно настоящему изобретению, которые могут быть реализованы индивидуально или в каких-либо технически возможных сочетаниях:
- для определения, находится ли оценка отклонения от нормы в зоне сомнений относительно присутствия или отсутствия атакующих потоков, предусмотрены средства для сравнения оценки отклонения от нормы с первой пороговой величиной и со второй пороговой величиной;
- предусмотрены средства для сравнения оценки отклонения от нормы со второй пороговой величиной, и если оценка отклонения от нормы выше второй пороговой величины, обнаружение присутствия атаки проводят в другом периоде времени;
- предусмотрены средства для сравнения оценки отклонения от нормы с первой пороговой величиной, и если оценка отклонения от нормы ниже первой пороговой величины, обнаружение присутствия атаки проводят в другом периоде времени;
- предусмотрены также средства для следующих этапов:
- определение второго обсервационного временного окна, это второе обсервационное временное окно соответствует первому обсервационному временному окну, сдвинутому на величину указанного другого периода времени,
- определение нового агрегата, где этот новый агрегат получают в результате комбинирования множества входящих потоков данных, принятых в течение нового периода времени, так что этот новый период времени следует за вторым обсервационным временным окном,
- определение нового первого вектора измерений, который ассоциирован с новым агрегатом и содержит величины первых характеристических параметров этого нового агрегата,
- удаление проекции первого вектора измерений, ассоциированного с агрегатом, являющимся результатом комбинирования множества входящих потоков данных, принятых в течение периода времени, расположенного в первом обсервационном временном окне, но вне второго обсервационного временного окна,
- проецирование нового первого вектора по меньшей мере в указанное подпространство, определяемое указанными первыми характеристическими параметрами, и
- определение новой оценки отклонения от нормы в зависимости от результата этого проецирования;
- предусмотрены средства, на этапе проецирования, для осуществления проецирования множества первых векторов измерений в множество подпространств и для определения оценки отклонения от нормы на основе суммы функций отклонения от нормы, где по одной такой функции отклонения от нормы определяют для каждого подпространства на основе результата проецирования указанного множества первых векторов измерений и проецирования указанного другого первого вектора измерений и на основе средней величины отклонения от нормы, эту среднюю величину отклонения от нормы также определяют на основе указанного проецирования множества первых векторов измерений и проецирования другого первого вектора измерений;
- предусмотрены также средства для выполнения, в случае обнаружения присутствия атаки, следующих этапов:
- сравнение функций отклонения от нормы, найденных для всех подпространств,
- выбор по меньшей мере одного подпространства, имеющего наивысшую величину функции отклонения от нормы,
- разбиение указанного другого агрегата на множество раздельных поступающих потоков,
- определение множества идентификационных векторов для полученного множества раздельных поступающих потоков, эти идентификационные векторы содержат те же самые первые характеристические параметры, как и первые векторы измерений,
- проецирование указанного множества идентификационных векторов по меньшей мере в одно выбранное подпространство,
- идентификация по меньшей мере одного нелегитимного поступающего потока, этот нелегитимный поступающий поток соответствует поступающему потоку, ассоциированному с отклоняющейся от нормы проекцией идентификационного вектора, и
- фильтрация нелегитимного поступающего потока;
- подпространство определено посредством первой оси и второй оси, первая ось соответствует первому характеристическому параметру и вторая ось соответствует второму характеристическому параметру, выбранным из совокупности первых характеристических параметров;
- по меньшей мере один из совокупности первых характеристических параметров содержит одни из следующих данных:
- число источников поступающих потоков,
- среднее число источников поступающих потоков в расчете на одну подсеть,
- пропорция запросов передачи,
- пропорция принятых запросов относительно ошибок,
- средний размер принятых запросов,
- среднее время жизни принятых запросов; и
- по меньшей мере один из совокупности других характеристических параметров содержит следующие данные:
- коэффициент попаданий, ассоциированный с доступом к кэш-памяти первого уровня,
- коэффициент попаданий, ассоциированный с доступом к кэш-памяти второго уровня,
- коэффициент «непопаданий», ассоциированный с доступом к кэш-памяти другого уровня, и
- пропорция используемого объема памяти.
Настоящее изобретение также предлагает устройство фильтрации атакующих потоков, нацеленных на модуль связи, из совокупности множества входящих потоков данных, при этом устройство содержит:
- модуль для определения множества агрегатов, где каждый агрегат является результатом комбинирования множества входящих потоков данных, принимаемых в течение заданного периода времени, причем период времени, учитываемый для определения каждого агрегата, отличается от периодов времени, учитываемых для определения других агрегатов, и периоды времени, учитываемые для определения совокупности указанного множества агрегатов, все укладываются в первое обсервационное временное окно,
- модуль для определения множества первых векторов измерений, каждый из которых ассоциирован с одним из указанных агрегатов и содержит величины первых характеристических параметров агрегата, с каким ассоциирован этот вектор,
- модуль для проецирования указанного множества первых векторов измерений по меньшей мере в одно подпространство, определяемое указанными первыми характеристическими параметрами,
- модуль для определения другого агрегата, являющегося результатом комбинирования множества входящих потоков данных, принимаемых в течение другого периода времени, где этот другой период времени следует за первым обсервационным временным окном,
- модуль для определения другого первого вектора измерений, ассоциированного с указанным другим агрегатом и содержащего величины первых характеристических параметров этого другого агрегата,
- модуль для проецирования указанного другого первого вектора измерений по меньшей мере в одно подпространство, определяемое первыми характеристическими параметрами,
- модуль для определения оценки отклонения от нормы в зависимости от результатов проецирования указанного другого первого вектора измерений и проецирования совокупности указанного множества первых векторов измерений,
- решающий модуль, подходящий для определения, если оценка отклонения от нормы попадает в зону сомнений относительно присутствия атакующих потоков, множества вторых векторов измерений, каждый из которых ассоциирован с одним из указанных агрегатов и содержит величины других характеристических параметров агрегата, с которым он ассоциирован, эти другие характеристические параметры отличаются от указанных первых характеристических параметров,
- модуль для определения другого второго вектора измерений, ассоциированного с другим агрегатом и содержащего величины других характеристических параметров указанного другого агрегата, и
- модуль для обнаружения присутствия или отсутствия атаки посредством анализа другого второго вектора измерений.
Краткое описание чертежей
Последующее описание при рассмотрении его со ссылками на прилагаемые чертежи, которые приведены здесь в качестве неисчерпывающего примера, позволит четко понять, что содержит настоящее изобретение и как его можно осуществить.
На прилагаемых чертежах:
- Фиг. 1 показывает упрощенное представление пассажирского салона автомобиля, оборудованного устройством для фильтрации атакующих потоков согласно настоящему изобретению;
- Фиг. 2 показывает, в форме логической схемы, способ фильтрации атакующих потоков согласно настоящему изобретению;
- Фиг. 3 – 10 показывают восемь примеров подпространств, используемых для реализации способа фильтрации атакующих потоков, показанного на Фиг. 2.
Осуществление изобретения
Фиг. 1 упрощенно показывает пассажирский салон автомобиля 1, оборудованного модулем 5 связи, подходящим для приема множества поступающий потоков данных, и устройством 2 для фильтрации атакующих потоков.
Поступающие потоки могут, например, приходить от серверов, позволяющих, например, осуществлять доступ в Интернет. Модуль 5 связи соединен, например, с процессором 10 мультимедиа, установленным в автомобиле 1, таким образом, позволяя человеку, находящемуся внутри автомобиля 1, получать доступ к расширенному предложению услуг мультимедиа.
Устройство 2 для фильтрации атакующих потоков подходит для анализа поступающих потоков, принимаемых модулем 5 связи, с целью идентификации потенциальных атак. Устройство 2 для фильтрации атакующих потоков также подходит для фильтрации обнаруженных атак.
Как показано на Фиг. 1, устройство для фильтрации атакующих потоков входит, например, в модуль 5 связи. В качестве альтернативы, устройство может быть установлено в объекте, независимом от модуля 5 связи, но в прямой связи с этим модулем.
Устройство 2 для фильтрации атакующих потоков содержит группу модулей (не показаны). Эти модули могут быть практически реализованы путем сочетания аппаратных элементов и программных элементов. Каждый из этих модулей обладает одной из функциональных возможностей, рассматриваемых применительно к способу согласно настоящему изобретению и описываемых ниже.
Фиг. 2 показывает, в форме логической схемы, пример способа, реализуемого в устройстве 2 для фильтрации атакующих потоков согласно настоящему изобретению.
Выполнение способа начинается на этапе E2, с приема модулем 5 связи множества входящих потоков данных. Эти разнообразные входящие потоков данных могут приходить от единого объекта-источника (например, от одного сервера) или от множества дискретных объектов-источников.
Для остальной части способа определено первое обсервационное временное окно , в котором должны быть реализованы этапы способа. Это первое обсервационное временное окно составляет, например, около 5 с.
Это первое обсервационное временное окно разделено на последовательные периоды времени. В контексте настоящего изобретения все эти периоды времени являются идентичными. Используемый период времени составляет, например, около 100 мс (первое обсервационное временное окно поэтому состоит из 50 дискретных периодов времени). Такой период времени соответствует периоду времени, в течение которого осуществляется анализ всех входящих потоков данных с целью определения ситуации, когда присутствует распределенная атака типа отказ в обслуживании.
На этапе E4, все входящие потоки данных, принятые в течение одного периода времени, комбинируют с целью получения единого потока, называемого здесь «агрегат». На этапе E4, поэтому получают по одному агрегату для каждого периода времени (поэтому в течение всего первого обсервационного временного окна получают около пятидесяти агрегатов).
На практике, каждый поступающий поток содержит последовательность данных, в частности, сюда входят данные, позволяющие осуществлять доступ в сеть связи. Процедура комбинирования всех входящих потоков данных тогда содержит группирование всех данных, заключенных во всех поступающих потоках, в одном потоке данных (называемом «агрегат» в настоящем описании).
Агрегат определяют посредством первого вектора измерений, содержащего множество измеренных величин. Например, в течение периода времени, ассоциированный первый вектор измерений записывают как , где обозначает переменную, соответствующую n-ому измерению в течение периода времени. Каждую переменную вычисляют по-разному в зависимости от типа исследуемых данных.
Например, переменная может быть оценена путем вычисления средней величины рассматриваемых данных за период времени. Это представляет собой, например, случай, когда средний размер принятых запросов (также обычно называемых принятыми IP-пакетами) получают путем вычисления среднего размера всех принятых запросов по всем соединениям в течение периода времени.
В примере, когда имеются множество источников потоков, переменную определяют на основе числа адресов различных источников потоков данных, принимаемых в течение периода времени.
В примере со средним числом источников потоков данных для одной подсети, переменную определяют на основе числа адресов различных источников потоков данных, принимаемых в течение периода времени, и на основе числа подсетей (обозначено как ниже) из совокупности запросов, принимаемых в течение этого периода времени. На практике учитывают только 24 первых бита адреса источника потока данных (этот адрес источника потока данных обозначают как IP/24). Затем для каждого адреса IP/24 источника потока данных, определяют число различных источников потоков данных и число принятых запросов (или принятых IP-пакетов). Наконец, среднее число источников потоков данных для одной подсети (обозначено в формуле ниже) получают путем взвешивания числа различных источников потоков данных для одного адреса IP/24 источника (обозначено в следующей формуле) с числом принятых запросов для одного адреса IP/24 источника (обозначено в следующей формуле):
В отношении пропорции принятых запросов передачи (которые также называются запросами соединений TCP, где TCP представляет собой аббревиатуру от «transmission control protocol» (протокол управления передачей)), переменная определена как отношение между числом запросов передачи, принятых в течение периода времени и общим числом принятых запросов.
В примере пропорции принятых запросов относительно ошибок (которая также называется пропорцией пакетов согласно протоколу ICMP, где ICMP представляет собой аббревиатуру от «Internet control message protocol» (протокол управления сообщениями в сети Интернет)), переменная определена как отношение между числом запросов относительно ошибок, принятых в течение периода времени и общим числом принятых запросов.
Как можно видеть на Фиг. 2, выполнение способа продолжается на этапе E6. На этом этапе, для каждого полученного агрегата (для каждого периода времени в пределах первого обсервационного временного окна), определяют первый вектор измерений. Этот первый вектор измерений характеризует агрегат, с которым этот вектор ассоциирован, посредством характеристических параметров.
Эти характеристические параметры позволяют охарактеризовать принятые потоки данных Интернет связи (или IP-потоки, здесь IP – общепринятая аббревиатура для «Internet protocol» (Интернет-протокол)). Эти принятые поступающие потоки в частности зависят от типа действующих соединений или от типа данных, передаваемых посредством поступающих потоков. Среди этих характеристических параметров в последующем различают, например, между: числом источников поступающих потоков данных (параметр, обозначенный ниже), средним числом источников потоков данных на одну подсеть (параметр, обозначенный ), пропорцией запросов передачи данных (обычно определяемое через число TCP-пакетов, какой параметр обозначен ), пропорцией запросов контроля ошибок (обычно называются ICMP-пакетами, какой параметр обозначен ), средним размером передаваемых запросов (обычно определяют на основе принятых IP-пакетов, какой параметр обозначен ), среднего времени жизни запросов (или принятых IP-пакетов) во время передачи данных (или TTL для времени жизни) или числа подсетей.
Эти характеристические параметры являются критерием распознаванием, чтобы позволить идентифицировать распределенную атаку типа отказ в обслуживании на модуль связи.
Здесь первый вектор измерений содержит пять параметров, обозначенных как , , , , .
В конце этапа E6, первый вектор измерений определяют для каждого периода времени и поэтому в первом обсервационном временном окне получают множество первых векторов измерений. Таким образом, например, для периода времени 100 мс и первого обсервационного временного окна в 5 с получают 50 первых векторов измерений.
Эти первые векторы измерений используются затем на этапе E8. Такие характеристические параметры позволяют определить проекционные подпространства. Подпространство определяют в виде сетки ячеек. Для этой сетки первая ось, например ось абсцисс, соответствует первому характеристическому параметру, и вторая ось, например ось ординат, соответствует второму характеристическому параметру. На практике, попарно выбираемые характеристические параметры позволяют определять двумерные подпространства. В качестве варианта можно также рассматривать подпространства, имеющие больше измерений.
На Фиг. 3 – 10 показаны подпространства, получаемые с использованием характеристических параметров, перечисленных выше. Здесь каждое подпространство определено в виде сетки размером 10 ячеек на 10 ячеек. На Фиг. 3 и 7 показаны, например, подпространства, соответствующие пропорции запросов передачи данных () в функции пропорции запросов контроля ошибок (). На Фиг. 4 и 8 показаны подпространства, соответствующие пропорции запросов передачи данных () в функции среднего числа передаваемых запросов (или принятых IP-пакетов) (). На Фиг. 5 и 9 показаны подпространства, соответствующие пропорции запросов передачи данных () в функции числа источников поступающих потоков данных (). На Фиг. 6 и 10 показаны подпространства, соответствующие пропорции запросов контроля ошибок () в функции числа источников поступающих потоков данных ().
На этапе E8, первый вектор измерений проецируют в подпространства, определяемые характеристическими параметрами. Все первые векторы измерений, получаемые в пределах первого обсервационного временного окна проецируют в эти подпространства. Под проецированием понимают идентификацию ячейки в сетке, которой принадлежит величина проецируемого первого вектора измерений. Другими словами, для подпространства, определяемого двумя данными n и m, проекция соответствует идентификации ячейки сетки, которой принадлежит точка (;) первого вектора измерений .
На практике, прежде проецирования первые векторы измерений нормируют с целью обеспечения релевантного сравнения характеристических параметров. Здесь каждый из характеристических параметров первого вектора измерений нормируют по заданной величине соответствующего параметра. Эти используемые заданные величины соответствуют, например, разумно максимальным величинам характеристических параметров. Термин «максимальный» определен относительно ограничивающего поступающего потока, который модуль связи, находящийся в автомобиле, может принять. Например, для среднего размера передаваемых запросов (или принимаемых IP-пакетов), какой параметр обозначен , величина 1500 будет использована в качестве нормирующей величины для IPv4-версии IP-протокола. Величина 8000 будет использована в качестве нормирующей величины для IPv6-версии IP-протокола.
На Фиг. 3 – 10 показаны примеры проецирования первых векторов измерений в различные подпространства для первого обсервационного временного окна . В конце проецирования первых векторов измерений ячейки остаются пустыми, если в рассматриваемую ячейку не был спроецирован ни один из первых векторов измерений.
Плотность ячеек определяют в соответствии с пропорцией первых векторов измерений, проецируемых в эти ячейки. Ячейка называется плотной, если пропорция первых векторов измерений, проецируемых в эту ячейку, выше заданной пропорции. Эта заданная пропорция равна, например, 5%.
Множество соседних плотных ячеек могут образовать кластер. Под «соседними ячейками» здесь понимают ячейки, имеющие общую границу. На Фиг. 3 – 10, кластеры, как определено выше, обозначены ячейками, содержащими наклонную штриховку. Например, на Фиг 3, все проекции первых векторов измерений в это подпространство сконцентрированы в одной ячейке.
Горизонтальная штриховка, какая, например, присутствует на Фиг. 4, 8, 9 и 10, обозначает ячейки, которые не являются пустыми, но имеют плотность ниже заданной пропорции (здесь ниже 5%). Чем больше число горизонтальных линий, тем выше плотность соответствующей ячейки (оставаясь при этом ниже заданной пропорции).
Крестики, представленные на Фиг. 7 – 10, обозначают присутствие атаки (обнаружение атаки будет подробно рассмотрено ниже).
Как можно видеть на Фиг. 2, осуществление способа затем продолжается этапом E10. На этом этапе определяют оценку отклонения от нормы для каждого из подпространств, в которые были спроецированы первые векторы измерений.
В подпространстве (обозначенном ниже как подпространство k), отклонение некоторой точки от нормы определяют как расстояние между ячейкой j, которой принадлежит эта точка, и ближайшим кластером. Другими словами, отклонение от нормы соответствует расстоянию между этой ячейкой j и ближайшей (или несколькими ближайшими) к ней плотной ячейкой (ами) (т.е. ячейкой (ами), для которой пропорция спроецированных в нее первых векторов измерений больше 5%). Вычисленное расстояние представляет собой либо евклидово расстояние, либо расстояние Махалонобиса.
Если какая-либо точка находится в кластере, отклонение от нормы для этой точки равно нулю. Если в рассматриваемом подпространстве нет ни одного кластера (т.е. ни одна ячейка, например, не содержит более 5% спроецированных первых векторов измерений), величина отклонения от нормы соответствует расстоянию между ячейкой j и ячейкой, имеющей наивысшую плотность (которая, однако, все равно будет ниже 5%) в рассматриваемом подпространстве k.
На основе величины отклонения от нормы, определяемой для каждой ячейки j в подпространстве k, можно определить среднюю величину отклонения от нормы для всех ячеек j в рассматриваемом подпространстве k. Эта средняя величина отклонения от нормы имеет вид:
где соответствует отклонению от нормы (как определено выше) для ячейки j в подпространстве k, соответствует плотности ячейки j в подпространстве k и обозначает число ячеек в подпространстве k.
В соответствии с этим определением, чем ближе средняя величина отклонения от нормы подходит к 0, тем больше точек (соответствующих проекциям первых векторов измерений) в пределах первого обсервационного временного окна распределены в концентрических кластерах. В качестве примера, средняя величина отклонения от нормы, оцениваемая для подпространства, показанного на Фиг. 3, равна нулю, поскольку все точки распределены в одном кластере. То же самое относится к подпространству, показанному на Фиг. 5, и к подпространству, показанному на Фиг. 6.
В отличие от этого, чем выше средняя величина отклонения от нормы, том больше точек равномерно распределены в рассматриваемом подпространстве.
Для определения оценки отклонения от нормы, введена функция отклонения от нормы для первого вектора измерений в подпространстве k:
где обозначает величину отклонения от нормы для проекции первого вектора измерений в подпространство k. Средняя величина отклонения от нормы здесь позволяет нормировать величину отклонения от нормы для проекции рассматриваемого первого вектора в подпространстве k (с целью позволить одинаково рассматривать и обрабатывать все подпространства).
На основе этих функций отклонения от нормы можно определить оценку отклонения от нормы для первого вектора измерений путем суммирования по всем подпространствам всех функций отклонения от нормы, определяемых для каждого подпространства k:
Такая оценка отклонения от нормы поэтому соответствует сумме функций отклонения от нормы, полученных для проекций первого вектора измерений в различные подпространства.
Затем способ переходит к этапу E12, на котором определяют новый период времени. Этот новый период времени представляет собой период времени, следующий сразу же после первого обсервационного временного окна .
Все входящие потоки данных, принятые в течение указанного нового периода времени, комбинируют с целью получения нового агрегата (с применением способа, аналогичного тому, который был использован на этапе E4, описанном выше).
Новый первый вектор измерений содержит характеристические параметры указанного нового агрегата.
Оценка отклонения от нормы, определяемая для нового первого вектора с использованием способа, описанного выше, представляет собой величину, которая позволит определить, присутствуют ли или отсутствуют атакующие потоки среди входящих потоков данных, принятых модулем 5 связи в течение временного окна . Эта оценка отклонения от нормы измеряет степень отклонения от нормы для всех поступающих потоков, принятых в течение периода времени, (и характеризуемых новым агрегатом) относительно первого обсервационного временного окна (которое предшествует периоду времени).
С графической точки зрения, если эта оценка отклонения от нормы высока, это означает, что проекции нового первого вектора измерений в различные подпространства значительно отличаются от кластеров, образованных в течение первого обсервационного периода и идентифицированных в различных подпространствах на этапе E8. Группа поступающих потоков, соответствующих новому агрегату, кажется в этом случае подозрительной, так что необходимо провести более глубокий анализ, чтобы подтвердить или отвергнуть присутствие атаки.
Для этого, на этапе E14, оценку отклонения от нормы сравнивают с первой пороговой величиной и со второй пороговой величиной . Первая пороговая величина меньше второй пороговой величины . Описаны три разных случая.
Первый случай соответствует ситуации, когда оценка отклонения от нормы ниже первой пороговой величины .В этом случае определяют, что в новом временном окне отсутствует атака, и способ переходит к этапу E20. Это случай примеров, показанных на Фиг. 3 – 6, на которых все проекции сконцентрированы в соседних ячейках, являющихся плотными или очень плотными (Фиг. 4). На этих чертежах вычисления оценок отклонений от нормы не выявили изолированной величины.
На этапе E20, определяют второе обсервационное временное окно . Это второе обсервационное временное окно соответствует первому обсервационному временному окну , сдвинутому на один период времени. Другими словами, первое обсервационное временное окно представляет собой подвижное окно, увеличиваемое на один период времени для определения второго обсервационного временного окна . Это второе обсервационное временное окно присоединяет новый первый вектор измерений. Наконец, эти два обсервационных временных окна имеют в общем множество периодов времени. Первый период времени в первом обсервационном временном окне (ниже называется старым периодом времени) не входит во второе обсервационное временное окно . Кроме того, последний период времени второго обсервационного временного окна (выше называется новым периодом времени) не входит в первое обсервационное временное окно .
В подпространствах, рассматриваемых на этапе E8, проекция первого вектора измерений, соответствующего старому периоду времени, удалена на этапе E22.
На этапе E24, новый первый вектор измерений проецируют в эти подпространства. Кластеры, присутствующие в этих подпространствах, снова идентифицируют с использованием способа, рассмотренного со ссылками на этап E8. Этапы E22 и E24, на основе результатов, полученных ранее с использованием этого способа, позволяют ограничить время выполнения способа. Они позволяют также ограничить вычислительные мощности (в частности, мощность процессора, входящего в устройство 2 для фильтрации атакующих потоков), требуемые для осуществления этого способа.
Как показано на Фиг. 2 способ переходит к этапу E26, где определяют средние величины отклонений от нормы после того, как новый первый вектор измерений был спроецирован во все рассматриваемые подпространства, и после того, как первый вектор измерений, ассоциированный со старым периодом времени, был удален.
После этого осуществление этого способы производится итеративно снова и снова, начиная с этапа E12.
Второй случай сравнения соответствует ситуации, когда оценка отклонения от нормы выше второй пороговой величины . В этом случае присутствие атаки определяют в новом периоде времени и способ переходит к этапу E60.
Этот второй случай соответствует примерам, показанным на Фиг. 7 – 10. Оценки отклонений от нормы, вычисленные для этих примеров, становятся высокими.
Этот этап E60 позволяет сравнивать функции отклонения от нормы, найденные на этапе E10 для нового первого вектора измерений.
Из всей совокупности рассматриваемых подпространств на этапе E62 выбирают по меньшей мере два подпространства. На практике выбирают одно или два подпространства. Здесь рассматривают подпространства с наибольшими величинами функций отклонения от нормы . На основе исследования, выполненного в этих выбранных подпространствах, затем идентифицируют один (или больше одного) атакующий поток (и), в частности, с использованием кластеров, присутствующих в выбранных подпространствах (и характеризующих номинальные рабочие условии), для первого обсервационного временного окна (предшествующего новому периоду времени). В качестве примера, на Фиг. 7 – 10, кластеры идентифицированы наклонной штриховкой (как описано выше).
Для того, чтобы позволить идентифицировать атакующие потоки, новый агрегат, представляющий собой комбинацию нескольких входящих потоков данных, принятых в течение нового периода времени, каковые входящие потоки данных были скомбинированы для формирования такой комбинации на этапе E12, разлагают на множество потоков, называемых отдельными поступающими потоками, на этапе E64. Все входящие потоки данных, принятые в течение нового периода времени модулем 5 связи, принимают во внимание для комбинирования на этапе E12 с целью формирования нового агрегата. Этот новый агрегат разделяют посредством комбинирования с адресами источников поступающих потоков, принятых в течение нового периода времени. Поэтому можно определить множество раздельных агрегатов, которые считаются подозрительными. На практике, здесь присутствуют столько отдельных агрегатов, сколько имеется адресов источников.
На этапе E66, каждый из отдельных агрегатов характеризуют вектором, который называется идентификационным векторов. Эти идентификационные векторы построены из параметров, идентифицированных на этапе E62 посредством выбора подпространств. Поэтому идентификационные векторы содержат небольшое число параметров по сравнению, например, с новым первым вектором измерений, определенным выше. Например, если на этапе E62 выбрано только подпространство, определяемое параметрами и , идентификационные векторы будут содержать только эти два параметра (эти два параметра определяют для каждого отдельного агрегата в течение нового периода времени).
Эти идентификационные векторы затем проецируют в одно или множество выбранных подпространств на этапе E68. Когда эти идентификационные векторы оказываются спроецированы в ячейки подпространств, образующие кластер, ассоциированный отдельный поступающий поток не считается атакующим потоком. В отличие от этого, если идентификационный вектор оказывается спроецирован вне какого-либо кластера, этот отдельный агрегат считается атакой.
В конце этого этапа идентифицируют атаку в рассматриваемых подпространствах. На Фиг. 7 – 10, это символически обозначено ячейками, содержащими крестик.
По самому построению, отдельный агрегат, соответствующий атаке, ассоциирован с группой отдельных поступающих потоков, приходящих от одного и того же адреса источника. Обнаружение отдельного агрегата, соответствующего атаке, тогда позволяет идентифицировать адрес источника, генерирующего так называемые нелегитимные поступающие потоки, на этапе E70.
Эти нелегитимные поступающие потоки затем фильтруют на этапе E72 способа. Такая фильтрация осуществляется, например, посредством блокирования нелегитимных поступающих потоков на входе модуля 5 связи. На практике, например, эти потоки блокируют путем добавления адреса источника, ассоциированного с указанными нелегитимными поступающими потоками, в список блокируемых адресов источников. Любой запрос, исходящий от указанного адреса источника, после этого отбрасывается.
На этапе E74, после того, как нелегитимные поступающие потоки были отфильтрованы, отдельные поступающие потоки рекомбинируют для формирования объекта, называемого фильтрованным агрегатом. И определяют ассоциированный с ним фильтрованный первый вектор измерений. Этот фильтрованный первый вектор измерений проецируют во все рассматриваемые подпространства. Более того, поскольку атакующие потоки уже были отфильтрованы (поэтому атакующие потоки не обнаруживаются в новом периоде времени), способ переходит к этапу E20, который был описан выше (и которой соответствует остальной части способа для случая, когда никакие атаки не были обнаружены).
Третий случай сравнения оценки отклонения от нормы с первой пороговой величиной и со второй пороговой величиной соответствует ситуации, когда оценка отклонения от нормы попадает в зону сомнений. Эта зона сомнений определена для величины оценки отклонения от нормы, находящейся между первой пороговой величиной и второй пороговой величиной . В этом случае невозможно непосредственно прийти к какому-либо заключению относительно присутствия или отсутствия атаки в течение нового периода времени. Тогда способ переходит к этапу E40.
На этом этапе E40, для каждого агрегата, полученного на этапе E4 (для каждого периода времени в пределах первого обсервационного временного окна ), определяют второй вектор измерений. Этот второй вектор измерений характеризует агрегат, с которым он ассоциирован, посредством других характеристических параметров. Эти другие характеристические параметры отличаются от характеристических параметров, ассоциированных с первым вектором измерений.
Эти другие характеристические параметры в этот раз позволяют охарактеризовать не поступающие IP-потоки, а выполнение программного обеспечения, встроенного в устройство 2 для фильтрации атакующих потоков. Эти другие характеристические параметры позволяют, в частности, описать распределение команд и данных относительно различных уровней памяти, имеющихся в устройстве 2 для фильтрации атакующих потоков. Среди этих других характеристических параметров обычно различают, например, следующие: коэффициент попаданий, ассоциированный с доступом в кэш-память первого уровня (обычно измеряется коэффициентом попаданий в кэш-память «данных» и «команд» уровня-1), коэффициент попаданий, ассоциированный с доступом в кэш-память второго уровня (обычно измеряется коэффициентом попаданий в объединенную кэш-память уровня-2), коэффициент «непопаданий», ассоциированный с кэш-памятью третьего уровня, или даже пропорцию используемого объема памяти.
Известно использование этих характеристических параметров для того, чтобы охарактеризовать выполнение программного обеспечения на каком-либо конкретном процессоре.
В конце этапа E40, определяют по одному второму вектору измерений для каждого периода времени, вследствие чего получают множество вторых векторов измерений в первом обсервационном временном окне . Таким образом, например, для периода времени в 100 мс и первого обсервационного временного окна в 5 с, получают 50 вторых векторов измерений.
Эти вторые векторы измерений после этого используют при осуществлении способа на этапе E42, на котором анализируют векторы, что позволить устранить сомнения при обнаружении присутствия или отсутствия атаки.
Целью анализа таких вторых векторов измерений является обнаружение аномальных операций при выполнении программного обеспечения.
Таким же образом, как первый вектор измерений на этапе E6, вторые векторы измерений проецируют в двумерные подпространства. Можно также идентифицировать и определить по одной другой средней величине отклонения от нормы для каждого подпространства (по такому же принципу, как определение средней величины отклонения от нормы).
Когда предшествующие этапы способа идентифицируют сомнение относительно присутствия или отсутствия атаки в течение нового периода времени на основе анализа нового первого вектора , вычисляют другую оценку отклонения от нормы для нового второго вектора измерений, ассоциированного с новым периодом времени, с использованием способа, рассмотренного выше.
Эту другую оценку отклонения от нормы затем сравнивают с третьей пороговой величиной . Если другая оценка отклонения от нормы выше третьей пороговой величины , подтверждают присутствие атаки в течение нового периода времени.
Как показано на Фиг. 2, после этого этапа E42, если обнаружено отсутствие атаки, способ переходит к этапу E20, рассмотренному выше. Если в конце анализа вторых векторов измерений было обнаружено присутствие атаки, способ переходит к этапу E60, рассмотренному выше.