ОБНАРУЖЕНИЕ СЕТЕВЫХ АНОМАЛИЙ НА ОСНОВЕ ОЦЕНКИ ИНТЕНСИВНОСТИ ПОТОКОВ В МОДЕЛИ РАСПАДА С ЦЕЛЬЮ ЗАЩИТЫ ОТ РАСПРЕДЕЛЕННЫХ АТАК
DOI 10.24411/2072-8735-2018-10213
Яковлев Дмитрий Александрович,
Московский технический университет связи и информатики, Москва, Россия, bombermag@gmail.com
Синева Ирина Сергеевна,
Московский технический университет связи и информатики, Москва, Россия, iss@mtuci.ru
Ключевые слова: сетевые аномалии, оценка интенсивности потоков, модель распада, веб-сервер, DDoS-атаки, обнаружение сетевых атак.
Рассматривается задача обнаружения сетевых аномалий в контексте защиты веб-сервера от (D)DoS-атак, направленных на исчерпание ресурсов обслуживающего сервера. Решение поставленной задачи является необходимым для обеспечения корректной работоспособности сетевых приложений. На одном из этапов в многоступенчатом процессе защиты необходимо отслеживать интенсивность входящих запросов и обращать особое внимание на случаи, когда интенсивность превышает заданный порог. Для измерения интенсивности была выбрана модель распада, которая является разновидностью экспоненциальной скользящей средней и описывает явление распада радиоактивного вещества, в связи с чем имеет такое название. Среди критериев для выбора алгоритма важным являлось быстродействие и экономное потреблением оперативной памяти, так как оценка должна быть возможна в режиме реального времени и для большого количества запросов разного типа. Выбранный алгоритм позволяет хранить в оперативной памяти для потока всего лишь одно значение счетчика, а оценка интенсивности производится в нужный момент времени по накопленному значению. При отсутствии событий значение счетчика для потока уменьшается экспоненциально по времени и приближается к нулю, что используется для удаления данных с информацией о потоке из оперативной памяти. Для ускорения вычислений операция обновления счетчика использует таблицу предвычисленных значений функции. В программной реализации процедура обновления счетчика затрачивает ~14 тактов процессора.
Для апробации алгоритма на основе экспертного анализа были выбраны входящие запросы нескольких разных посетителей из журналов доступа действующего веб-ресурса: активных легитимных пользователей, поисковых роботов и атакующих. Для этих сессий была вычислена оценка интенсивности запросов на основе модели распада. Полученный результат позволяет утверждать, что данный алгоритм возможно использовать для поставленной задачи. В целях защиты от атак аномальные сессии могут быть направлены в дополнительный классификатор, предназначенный для определения легитимности пользователя на основе других критериев.
Информация об авторах:
Яковлев Дмитрий Александрович, аспирант, Московский технический университет связи и информатики, Москва, Россия Синева Ирина Сергеевна, доцент, Московский технический университет связи и информатики, Москва, Россия
Для цитирования:
Яковлев Д.А., Синева И.С. Обнаружение сетевых аномалий на основе оценки интенсивности потоков в модели распада с целью защиты от распределенных атак // T-Comm: Телекоммуникации и транспорт. 2019. Том 13. №1. С. 41-44.
For citation:
Yakovlev D.A., Sineva IS. (2019). Network anomaly detection based on flow intensity measuring in the decay model for DDOS protection. T-Comm, vol. 13, no.1, рр. 41-44. (in Russian)
f I л
Введение
Для обеспечения корректной работы сетевых приложений необходимо отслеживать их состояние, проводить постоянный мониторинг и выявлять возникающие аномалии на раннем этапе их появления. В рамках данной статьи рассматривается задача выявления сетевых аномалий в контексте защиты веб-сервера от (D)DoS-атак, направленных на исчерпание ресурсов обслуживающего сервера.
Исчерпание процессорного времени вредоносным запросами является одним из векторов атак, используемого для нарушения доступности веб-ресурса. По данным от третьего квартала 2017 г. количество сетевых атак на веб-приложения увеличилось на 69% по сравнению с полученной статистикой годом ранее [1] и атаки с использованием HTTP-протокола заняли третье по популярности место [2].
В многоступенчатом процессе защиты па одном из этапов необходимо анализировать входящие запросы, отслеживать их интенсивность и обращать внимание на случаи, когда интенсивность превышает заданный порог.
Постановка задачи
На вход поступают запросы к веб-серверу - поток однородных событий:
{С,,}=(£■,,с2,...,с„...,с„), tk_, <tk. {1)
В наиболее простом случае событие (1) определяется только временем его наступления Ск — Í. , в иных моделях может еще учитываться его вес
(2)
Информация о потоке запросов накапливается в счетчике s. По каждому приходу события c¡ происходит операция обновления счетчика
s <r-updateis,c¡) ■ (3)
По значению счетчика можно вычислить оценку интенсивности потока г - г (s) =: г ■
Алгоритм обновления счетчика и оценки интенсивности должен обладать достаточным быстродействием и экономным потреблением оперативной памяти. Оценка должна быть возможна в режиме реального времени, в то время, как наблюдение может производиться за множеством потоков событий разного типа для тысячи веб-сайтов и более.
Описание алгоритма
В данном случае для измерения интенсивности применяется модель распада [3], которая является разновидностью экспоненциальной скользящей средней и имеет такое название в связи с тем, что описывает явление распада радиоактивною вещества: v(r) = ,
Л — параметр модели («постоянная распада»); v0 - «количество вещества» в нулевой момент времени /(] ; v(f) - «количество вещества» в момент времени t.
Для удобства вводятся обозначения г = —, а- ел.
Я
Переменная Г рассматривается как масштаб времени, она характеризует интервал времени, в течение которого
собирается история запросов. Каждому типу события (1) - (2) соответствует величина V («количество вещества»), которая зависит от времени. При наступлении события значение увеличивается на единицу, а в остальное время уменьшается по экспоненциальному закону.
В классическом случае во время работы программы алгоритм хранит в оперативной памяти пару значений (время предыдущего события; накопленная величина). При использовании модели распада хранится только величина 5 (3).
В текущий момент времени 1пст величина V может быть
вычислена следующим образом:
V = а34-.
Операция обновления счетчика:
V' - +1
ир4аге(*>ск) = + 1<Щ0{1 + оГ'1), !к = /„„„, (4)
По накопленному значению счетчика б производится оценка интенсивности потока событий, г~ <г<г+ 1
Г+=Г + (Д*) =
г = г (As) =
1
-log„(1 ~aAí) 0, иначе
, Ду > 0
(5)
Оценки г и г монотонно зависят от значения в. Интенсивность считается в точности равной нижней оценке, если измерение происходит сразу после прихода заявки. Пример графиков (5) приведен на рис. 1.
''(As)
Рис. 1. График функций г и г* для т = 15
Ограничения модели распада, влияющие на корректность измерения значения интенсивности:
- период потока не может быть меньшим единицы и относительное значение счетчика Ах не должно превышать
^ . = т\пт + т(т), 0 < со(т) < |;
- при малых значениях Д.т точность верхней г* и нижней Т~ оценки ухудшается.
При отсутствии событий значения счетчика для потока уменьшается экспоненциально по времени и приближается к
T-Comm Том 13. #1-2019
нулю. Этот факт применяется для сброса счетчика и высвобождения места в памяти, занятой хранящейся о потоке информацией.
Время распада до нуля после единичного события асимптотически оценивается как
Тсброе ~ 0(Т1П Г)-
Для ускорения вычислений во время работы используется таблица R_(T)^ рт(Т), которая хранит в себе предвы-
чнспенные значения функции рД*) = log(/(i Ч-сг1), результаты которой используются в формуле (4).
Таблица /?Д7") строится для значений 7^tljil <Т <0,
= [~-rln(er: - 1)~| и итоговый размер таблицы составляет 7\л log,(гIn2) бит.
Реализация и апробация алгоритма
Экономное потребление оперативной памяти за счег эффективного представления счетчика и использование предвы-численных табличных значений функции позволяют достигать большой производительности при измерении интенсивности потока запросов. Процедура обновления счетчика затрачивает -14 тактов процессора Intel Core i5-4690 (3.5 Ghz).
Для оценки интенсивности запросов, поступающих к вебсерверу, информацию можно собирать разными способами и па разных этапах. Например, на пути следования сетевого трафика к веб-серверу можно производить анализ HTTP-запросов, используя виртуализированную систему обработки трафика [4] или использовать более простой способ -производить разбор журналов доступа, сохраняемых вебсервером. Информация о каждом запросе в журнале чаще всего хранится в подобном формате:
34.16.49.121 [20/Арг/2018:11:20:55,+0300]
"GET /to pie/3 245. р hp HTTP/1.1" 200 1030 "http://example.rn/"
"Mozilia/5.0 (Windows NT 10.0; Win64; x64) Chrome/66.0.3359,181 Safari/537.36".
Каждая запись содержит в себе IP-адрес источника, дату обращения, тип запроса с указанием адреса, код ответа и информацию о браузере. Эти данные можно использовать для оценки интенсивности потоков разного типа. Например, отслеживать интенсивность всех обращений в целом и отдельно отслеживать интенсивность обращений к динамических скриптам, так как их выполнение задействует больше процессорного времени, нежели статичные ресурсы, такие как изображения. Для выявления аномалий первоначально необходимо сформировать представление о нормально поведении пользователей. На основе экспертного анализа или иных метрик выбирается информация о запросах легитимных пользователей, которые активно посещают веб-ресурс. Для отобранных запросов вычисляется оценка интенсивности. Аналогичным образом выбираются запросы, полученные во время атак и запросы от нетипичных посетителей, таких как поисковые роботы.
На рисунках 2 и 3 для примера изображены графики интенсивности запросов с 6 разных адресов, посещавших веб-сайт в течение второй половины дня. В пиковые моменты интенсивности сессии под №1 веб-сайт испытывал проблемы с доступностью в связи с высокой нагрузкой. Осно-
вываясь па информации из журналов доступа, данная сессия была инициирована одним из участников зомби-сети, под атакой которой в эти промежутки времени пребывал вебсайт. Под №2-3 показана интенсивность двух разных поисковых роботов, собирающих информацию для индексации в поисковой системе.
Время, t
Рис, 2. График интенсивности аномальных запросов и поисковых роботов
Время, С
Рис. 3. График интенсивности запросов активных легитимных пользователей
На рисунке 3 изображена интенсивность запросов трех разных легитимных пользователей, которые активно пользуются ресурсом. Поисковые роботы от обычных пользователей отличаются длительными по времени сессиями и в некоторых случаях имеют равномерную частоту запросов. Роботы популярных поисковых систем могут быть заранее исключены из оценки и добавлены в белый список по диапазону [['-адресов.
I lopor для срабатывания детектора устанавливается в зависимости от конечной цели. Можно использовать несколько пороговых значений. Например, в случае превышения первого, отклонять получаемый запрос, а в случае превышения второго более высокого порога - временно блокировать доступ. Так же аномальные сессии могут быть направлены в классификатор, предназначенный для определения легитимности пользователя на основе других критериев [5]. Дополнительный классификатор может быть построен, например, на основе байесовских сетей [б], а подбор наиболее подходящих параметров для модели может быть выполнен на основе генетических алгоритмов поиска [7].
Если злоумышленник обладает зомби-сетью из большого количества зараженных ПК, для создания большой нагрузки интенсивность запросов с одного адреса может не превышать заданного лимита. Для таких случаев интенсивность запросов должна оцениваться и на весь веб-сайг в целом, а в дополнительный классификатор будут направлены все сессии.
Литература
1. Q3 2017 State of the Internet - Security Report // Akamai. 2017, URL: https://www.akamaj.coin/de/de/multimedia/ docu-ments/state-of-tlie-internet/q3-2017-stat e-of-t lie-in ternet-securi tyre port, pdf (Дата обращения: 02.02.2018).
2. Хапимоненко А., Купреев О., Ильганаев К. D DoS-атак и в третьем квартале 2017 года // Лаборатория К at гтерс ко го, 2017, URL: https://sccurelist.ru/ddos-attacks-in-q3-20l7/87Qlg/ (Дата обращения: 02.02.2018).
3. Shvorin A. Rate detection, or incoming event stream intensity measuring in the decay model // Qrator Labs. 2017. URL: https://medium.eom/@qratorlabs/rate-detector-2 Id 12567d(lb5 (Дата обращения: 30,01.2018).
4. Яковлев Д.А., Синева И.С. Построение визуализированной системы фильтрации поддельных сетевых пакетов е использо-
NETWORK ANOMALY DETECTION BASED ON FLOW INTENSITY MEASURING IN THE DECAY MODEL FOR DDOS PROTECTION
Dmitriy A. Yakovlev, MTUCI, Moscow, Russia, bombermag@gmail.com Irina S. Sineva, MTUCI, Moscow, Russia, iss@mtuci.ru
Abstract
This article discusses the problem of detecting network anomalies in the context of protecting a web server against (D)DoS attacks aimed at the exhaustion of the server resources. The solution of the problem is necessary to ensure the correct performance of network applications. At one stage in a multi-step security process, it is necessary to monitor the intensity of incoming requests and pay special attention to cases where the intensity exceeds a specified threshold. To measure the intensity, a decay model was chosen, which is a kind of exponential moving average and describes the phenomenon of decay of a radioactive substance, therefore so named. Among the criteria for the selection of the algorithm, speed and economy of RAM consumption were important, because evaluation should be possible in real time and for a large number of different request types. The selected algorithm allows to store only one counter value in RAM for the flow, and the intensity estimate is made at the required time point by the accumulated value. In the absence of events, the counter value for the flow decreases exponentially in time and approaches zero, which is used to remove data with flow information from memory.
To speed up the calculations, the counter update operation uses a table of the function's pre-calculated values. In the software implementation, the counter updating procedure consumes ~I4 clock cycles of the CPU. To test the algorithm, incoming requests of different visitors were selected on the basis of expert analysis from the web server access logs: active legitimate users, search robots and attackers. For these sessions, an estimate of the intensity of queries based on the decay model was calculated. The result allows us to say that this algorithm can be used for the task in hand. In order to protect against attacks, abnormal sessions can be directed to an additional classifier designed to determine user legitimacy based on other criteria.
Keywords: network anomaly, rate detection, decay model, web server, DDoS attacks, network attacks detection. References
1. 'Q3 2017 State of the Internet - Security Report' (2017) Akamai. Available at: https://www.akamai.com/de/de/multimedia/docu-ments/state-of-the-internet/q3-20I7-state-of-the-internet-security-report.pdf (Accessed: 2 February 2018).
2. Halimenko A., Kupreev O., Ilganaev K. (2017). DDoS attacks in the third quarter of 2017. Kaspersky Lab. Available at: https://securelist.ru/ddos-attacks-in-q3-20I7/879I8/ (Accessed: 2 February 2018).
3. Shvorin A. (20I7). Rate detection, or incoming event stream intensity measuring in the decay model. Qrator Labs. Available at: https://medium.com/@qratorlabs/rate-detector-2IdI2567d0b5 (Accessed: 30 January 20I8).
4. Yakovlev D.A., Sineva I.S. (2016). Building virtualized system using Intel DPDK for filtering spoofed network packets. T-Comm. Vol. I0. No.8, pp. 30-35.
5. Sheluhin O.I., Sakalema D.J., Filinova A.S. (20I3). Intrusion detection into computer networks. Network anomalies. Moscow: Hotline -Telecom. 220 p.
6. Yakovlev D.A., Sineva I.S. (20I5). DoS-attack detection using genetic algorithm and fuzzy logic. Fundamental probles of radioelec-tronics. Proceedings of the International Scientific and Technical Conference "INTERMATIC-2015". Vol. I5. No. 5, pp. 288-29I.
7. Yakovlev D.A., Sineva I.S. (20I7). Web robots detection based on Bayesian network'. Information Society Technologies. Proceedings of the XI-th International Industrial Scientific and Technical Conference "Information Society Technologies. Moscow: Media Publisher, pp. 292-293.
Information about authors:
Dmitriy A. Yakovlev, post graduate student of MTUCI, Moscow, Russia Irina S. Sineva, associate professor of MTUCI, Moscow, Russia
T-Comm ^м 13. #1-2019
ванием Intel DPDK // T-Comm: Телекоммуникации и транспорт. 2016. Т. 10. №8. С. 30-35.
5. Шелухин О.И., Сакалема Д.Ж., Фипинова A.C. Обнаружение вторжений в компьютерные сети. Сетевые аномалии. М.: 1'оря-чая линия - телеком. 2013. 220 с.
6. Яковлев Д.А., Синева И.С. Детектирование DoS-атак с помощью генетического алгоритма и нечеткой логики // Фундаментальные проблемы радиоэлектронного приборостроения. 2015, Т. 15. №5. С. 288-291.
7. Яковлев Д.А., Синева И С. Детектирование веб-роботов с помощью байесовских сетей // Технологии информационного общества / Сборник трудов XI Международной отраслевой научно-технической конференции "Технологии информационного общества". (15-16 марта 2017 г. Москва, МТУСИ). М.: ООО "ИД Медиа Паблишер", 2017, С, 292-293.
7ТТ