Устройство выявления низкоинтенсивных атак "отказ в обслуживании"

Полезная модель относится к информационной безопасности, а более конкретно к обнаружению сетевых атак на прикладные сервисы. Полезная модель предназначена для выявления низкоинтенсивных атак «отказ в обслуживании» на веб-сервисы.
Из уровня техники известна система выявления целевых атак (RU 2601147 С2, 27.10.2016), в которой получают информацию о ресурсе от источника; обнаруживают подозрительный признак в полученной информации для данного ресурса; собирают дополнительную информацию о ресурсе, в отношении которого был обнаружен подозрительный признак, путем осуществления доступа к данному ресурсу с компьютерных систем, обладающих различными характеристиками; устанавливают соответствие между характеристиками компьютерных систем и информацией, получаемой о ресурсе, в отношении которого был обнаружен подозрительный признак; определяют характеристику компьютерных систем, объединяющую группу компьютерных систем, при осуществлении доступа с каждой из которых к ресурсу, в отношении которого был обнаружен подозрительный признак, был повторно обнаружен подозрительный признак в отношении данного ресурса; выявляют целевую атаку в отношении упомянутой группы компьютерных систем, объединенных характеристикой, определенной ранее.
Недостатком рассмотренного технического решения является невозможность выявления низкоинтенсивных атак «отказ в обслуживании» на веб-сервисы.
Из уровня техники известна система обнаружения вторжений, основанная на пошаговой растущей многоуровневой самоорганизующейся карте Кохонена GHSOM (CN 102789593 В, 26.11.2014), в которой сетевые пакеты подаются на вход модуля обнаружения вторжений; вычисляется побеждающий нейрон t, способный обнаруживать текущий вектор х; использование t для обнаружения х, если х - это покрывающий нейрон и он одного типа с t, в противном случае присваивание х метки неизвестного типа атаки и добавление х в набор данных для обучения; если t удовлетворяет расширяющимся условиям, расширение виртуального нейрона t' с нижней части t и расширение новой самоорганизующийся карты Кохонена (SOM) с t', а также использование набора данных для обучения, соответствующего t, для обучения; поиск зрелого родительского нейрона в новой расширяющейся SOM подсети, и, если зрелый родительский нейрон переходит границы для отбрасывания незрелой подсети, то происходит обучение незрелой нейронной сети, повторно динамически расширенной; принятие решения о наличии вторжения на основании результата работы модуля обнаружения вторжений.
Недостатком рассмотренного технического решения является невысокая точность выявления низкоинтенсивных атак «отказ в обслуживании» на веб-сервисы, вследствие высокого уровня ложных срабатываний и большого числа необнаруженных атак.
Технический результат полезной модели заключается в повышении точности обнаружения низкоинтенсивных атак «отказ в обслуживании».
Технический результат достигается за счет того, что устройство выявления низкоинтенсивных атак «отказ в обслуживании» состоит из сенсора сетевых пакетов, выход которого соединен со входом модуля формирования векторов для самоорганизующейся карты Кохонена, выход которого соединен со входом модуля кластеризации сетевых пакетов при помощи самоорганизующейся карты Кохонена, выход которого соединен со входом модуля формирования векторов для многослойного персептрона, выход которого соединен со входом модуля классификации сценариев при помощи многослойного персептрона, при этом сенсор сетевых пакетов формирует наборы сетевых пакетов, число которых определено размером окна, модуль кластеризации сетевых пакетов при помощи самоорганизующейся карты Кохонена осуществляет снижение размерности входных данных и определение принадлежности сетевых пакетов к определенному сценарию, модуль формирования векторов для многослойного персептрона осуществляет формирование векторов на основе наборов кластеризованных сетевых пакетов, сохраняющих информацию о порядке поступления для модуля классификации сценариев при помощи многослойного персептрона, который осуществляет выявление атакующих сценариев.
Устройство выявления низкоинтенсивных атак «отказ в обслуживании» использует гибридную искусственную нейронную сеть (ИНС), которая на первом этапе при помощи самоорганизующейся карты Кохонена (self-organized map, SOM) кластеризует сетевые пакеты, определяя их принадлежность к определенному сценарию, а на втором этапе при помощи многослойного персептрона (multi-layer perceptron, MLP) классифицирует сценарии, определяя, относятся ли они к нормальным либо к аномальным (атакующим) сценариям.
На фиг. 1 показана структурная схема устройства выявления низкоинтенсивных атак «отказ в обслуживании».
В общем случае низкоинтенсивные атаки «отказ в обслуживании» могут быть направлены на различные веб-сервисы, характеризующиеся разными значениями сетевых портов. При этом сценарий атаки не изменяется и необходимо для каждого отдельного веб-сервиса сформировать отдельный набор пакетов. Эту задачу решает сенсор сетевых пакетов (1), который формирует наборы сетевых пакетов, число которых определено размером окна.
Размер окна может быть, например, установлен в соответствии с формулой:
Sbyte
где  - скорость передачи информации в сети в байтах в секунду,
Pmin
- теоретически минимальный размер пакета,
u
- коэффициент, показывающий уровень утилизации канала передачи информации.
Модуль формирования векторов для самоорганизующейся карты Кохонена (2) осуществляет формирование векторов на основе наборов пакетов, полученных от сенсора сетевых пакетов (1) и предназначенных модулю кластеризации сетевых пакетов при помощи самоорганизующейся карты Кохонена (3), который в свою очередь осуществляет снижение размерности входных данных и определение принадлежности сетевых пакетов к определенному сценарию путем кластеризации векторов при помощи SOM. Модуль формирования векторов для многослойного персептрона (4) осуществляет формирование векторов на основе наборов кластеризованных сетевых пакетов, сохраняющих информацию о порядке поступления. Сформированные вектора поступают на вход модуля классификации сценариев при помощи многослойного персептрона (5), который осуществляет разделение сценариев на: атака или норма.
Работа устройства выявления низкоинтенсивных атак «отказ в обслуживании» начинается с фазы обучения ИНС, во время которой производится:
1. Из собранных нормальных и атакующих сетевых пакетов формируется обучающая выборка. Размер обучающей выборки ограничивается размером памяти и временем, необходимым для обучения самоорганизующейся карты Кохонена. При разбиении на окна информация о том, содержится ли в окне атакующий сетевой пакет, сохраняется. Окна помечаются как нормальные или атакующие. Атакующими окна признаются при выполнении следующих условий:
а) Обнаружено наличие в окне набора однотипных пакетов, появляющихся с периодичностью, достаточной для поддержания открытых соединений.
б) "Мощность" такого набора достаточна для того, чтобы отнести ее к аномалии.
2. Формирование векторов для самоорганизующейся карты Кохонена (SOM).
Входной вектор для SOM, например, может содержать следующие компоненты:
1
2
i
3. Снижение размерности обучающих данных Т'=R(T). SOM обучается на отдельных сетевых пакетах, которым ставятся в соответствие номера кластеров. Выходной вектор SOM (кластеризованные сетевые пакеты) имеет вид <N, N, …, N>, где i определяется размером окна, а N указывает на то, к какому кластеру SOM принадлежит исследуемый сетевой пакет.
n
а
4. Формирование обучающего и тестового множества Т'-> [Т1,Т2]. Выходные данные (кластеризованные сетевые пакеты) модуля кластеризации сетевых пакетов при помощи самоорганизующейся карты Кохонена являются входным вектором модуля формирования векторов для многослойного персептрона. Первый компонент входного вектора модуля формирования векторов для MLP - номер кластера, в который распределился первый пакет, второй компонент - номер кластера, в который распределился второй пакет и т.д. Размерность входного вектора для модуля формирования векторов для MLP зависит от числа выходов SOM (т.е. от размера окна). Входной вектор модуля формирования векторов для MLP преобразуется в выходной вектор модуля формирования векторов для MLP, который имеет размерность 2 и вид <y,у>.
5. Обучение нейросетевого классификатора модуля классификации сценариев при помощи многослойного персептрона. Входные вектора модуля классификации сценариев при помощи многослойного персептрона помечаются как «нормальные» или «атакующие» на основании информации:
- если в текущем окне нет атакующего сценария, вектор помечается как «нормальный»;
- если в текущем окне есть атакующий сценарий, вектор помечается как «атакующий».
Нормальные вектора обучаются на выход <1,0>, атакующие - на <0,1>.
6. Валидация нейросетевого классификатора модуля классификации сценариев при помощи многослойного персептрона на тестовой выборке Т2.
7. Если точность нейросетевого классификатора модуля классификации сценариев при помощи многослойного персептрона согласуется с ожидаемой оценкой - переход к следующему этапу, иначе к этапу 3.
8. Сохранение параметров алгоритмов снижения размерности обучающих данных и нейросетевого классификатора.
После обучения ИНС производится:
1. Для каждого отдельного веб-сервиса получение набора пакетов, число которых определено размером окна.
Окно сдвигается на определенную величину на каждой итерации работы устройства, обеспечивая перекрытие с предыдущим окном. Величина сдвига зависит от аппаратной производительности устройства и подбирается на этапе экспериментального исследования (развертывания системы в реальной защищаемой сети на фазе обучения). Это позволяет точно установить факт начала атаки.
2. Каждый сетевой пакет из окна преобразуется в формат входного вектора для SOM.
1
2
i
3. На вход SOM последовательно подаются вектора из текущего окна, которые распределяются по кластерам. В результате каждый компонент выходного вектора SOM соответствует сетевому пакету. Выходной вектор SOM имеет вид <N, N, …, N>, где i определяется размером окна, а N указывает на то, к какому кластеру SOM принадлежит исследуемый сетевой пакет.
4. Происходит формирование векторов для модуля классификации сценариев при помощи многослойного персептрона.
5. После этого сформированные вектора подаются на вход модуля классификации сценариев при помощи многослойного персептрона, обученного распознавать атакующие последовательности пакетов, но уже с учетом информации о событии, т.е. принадлежности пакета тому или иному сценарию.
Ответы могут интерпретироваться следующим образом:
n
а
- если y>0.7 и у<0.3, то набор пакетов нормальный;
n
а
- если y<0.3 и у>0.7, то набор пакетов атакующий;
- иначе - ИНС не может классифицировать пакет.
На этапе классификации MLP анализирует очередное окно пакетов, классифицируя его как нормальный или атакующий сценарий. Результаты анализа выводятся по каждому окну.