Климов А.Г.

Пензенский государственный университет, Россия

Математическая модель нейронной сети для распознавания DDoS атак

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

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

 

Таблица 1

стр. назначения

стр. старта

1

2

3

4

1

0.5

0.8

0.9

0.7

2

0.7

0.5

0.6

0.9

3

0.8

0.8

0.5

0.7

4

0.9

0.7

0.9

0.5

 

Каждый пользователь будет иметь свой «рейтинг», который будет набираться из суммы вероятностей переходов деленных на длину пути:

,

где n – длина пути пользователя, k – вероятность перехода с текущей страницы на следующую, R– текущий рейтинг пользователя.

Первоначально пользователь имеет рейтинг равный 1. Перемещаясь по сайту, он уменьшает свой рейтинг, но при этом матрица должна содержать такие значения, чтобы рейтинг легитимного пользователя не стал меньше 0.5. В случае если рейтинг достиг такого значения – пользователь блокируется. Матрица заполняется в режиме «обучения» в зависимости от частоты переходов пользователя с одной страницы на другую. В данном варианте решения проблемы используется вероятностный подход, но чем дольше пользователь перемещается по сайту, тем менее чувствительна система, так как  и . Это значит, что если атакующая машина будет использовать циклические переходы (3-5 страниц) – она будет проходить данную проверку.

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

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

 

 

Рисунок 1

 

Усложним нейронную сеть, чтобы использовать больше параметров при анализе. В качестве критерия оценки добавим интервал между запросами. Слишком частые запросы не свойственны реальному пользователю, поэтому в качестве сигнала будем использовать. Чем меньше интервал между запросами – тем более вероятно, что данный запрос сгенерирован атакующей машиной.  Тогда нейронная сеть примет вид, представленный на рисунке 2.

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

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

Рисунок 2