Литература
1. Штеренберг С.И., Полтавцева М.А. Распределенная система обнаружения вторжений с защитой от внутреннего нарушителя // Проблемы информационной безопасности. Компьютерные системы, 2018. - № 2. - С. 59-68.
2. J. Albahari, B. Albahari - C# 7.0 in a nutshell: 2018;
3. TIOBE [Электронный ресурс]. - URL: https://www.tiobe.com/tiobe-index/
4. Wikipedia [Электронный ресурс]. - URL: https://ru.wikipedia.org/
5. Cyberforum [Электронный ресурс]. - URL: https://cyberforum.ru/
6. StackOverflow [Электронный ресурс]. - URL: https://stackoverflow.com/
7. Habr [Электронный ресурс]. - URL: https://habr.com/ru/
8. М. Лутц - Программирование на Python. 4-е издание: 2011;
9. Г. Шилдт - Java. Полное руководство. 10-е издание: 2018;
10. Б. Страуструп - Язык программирования С++. Специальное издание: 2011;
11. I. Zhirkov - Low-Level Programming. C, Assembly, and Program Execution on Intel 64 Architecture: 2017;
12. A. W. West, S. Prettyman - Practical PHP 7, MySQL 8, and MariaDB Website Databases, 2nd edition: 2018;
13. Qaru Site [Электронный ресурс]. - URL: http://qaru.site/
14. Мир Кода [Электронный ресурс]. - URL: http://www.mir-koda.ru/
15. Практическое руководство Microsoft [Электронный ресурс]. - URL: https://docs.microsoft.com/
СПОСОБЫ ПРОТИВОДЕЙСТВИЯ И СРЕДСТВА РАННЕГО ВЫЯВЛЕНИЯ DDoS - АТАК
А.Н. Баскаков, Московский технический университет связи и информатики, hogjam@mail.ru.
УДК 004.7_
Аннотация. Изучены разновидности DDoS - атак, их влияние на работоспособность информационной системы. Представлен анализ существующих методов противодействия и раннего обнаружения DDoS - атак.
Ключевые слова: сети; DDoS; угрозы; атаки; методы противодействия; раннее обнаружение; атаки на сеть.
METHODS OF COUNTERACTION AND MEANS OF EARLY DETECTION OF DDoS - ATTACKS
Alexey Baskanov, Moscow technical university of communications and informatics.
Annotation. The varieties of DDoS attacks, their impact on the performance of the information system are studied. The analysis of existing methods of counteraction and early detection of DDoS attacks is presented.
Keywords: networks; DDoS; threats; attacks; methods of counteraction; early detection; attacks on the network.
Введение
Суть сетевой атаки заключается в нанесении злоумышленниками или программным обеспечением вреда попавшему под удар устройству. В роли наносящих вред программ
используются инструменты DoS-атак, сетевые черви, зловредные приложения, ряд троянских вирусов.
Образцовым вариантом идентификации начала атаки и обнаружения вредоносного трафика считается технология, базирующаяся на исследовании аномалий, когда сравнивается текущее состояние системы с ее нормальной конъюнктурой. Сопоставление картин параметров системы в свете DDoS-атак рекомендуется осуществлять с помощью сравнения различных характеристик активности сети. К ним можно привязать: число, вид и скорость поступления запросов, TP-адрес источника, прочее.
Публикация Миркович, Мартина, Райера [ 1 ] дает наиболее подробную группировку видов DDoS-атак. Здесь авторы разделили вредоносные вторжения не только по типу атаки, но и по величине автоматизации, частоте, способу воздействия и прочим параметрам. Аналогичный подход предлагается в статье Ковалева [2].
Виды вредоносных технологий и методы противодействия им
Самым распространенным вариантом вторжения на сегодняшний день выступают атаки вида HTTP или HTTP-flood. Их содержание выражается в отправке множества HTTP-пакетов к атакуемому серверу. Нападения такого типа может быть рассчитано как на сбой функционирования сервера, так и на переполнение пропускающей полосы канала связи. К примеру, злоумышленники атакуют потенциально уязвимые страницы сайта, т.е. скрипты, расходующие большое количество ресурсов и предоставляемые большие по размеру ответы. Или же пытаются имитировать действия легитимного пользователя.
Следующими по популярности считаются атаки вида SYN-flood (рис. 1.). Они основываются на нюансах «тройственного рукопожатия» в результате установки соединения. Зомби-компьютеры отправляют SYN-запросы на подключения, не обращая внимания на ответные требования, формируя на сервере очередь из «полуоткрытых соединений». Широкая распространенность методики объясняется отсутствием действенных технологий, способных выявлять вредоносные запросы. Методы, основанные на фильтрации трафика, тормозят работу сети в штатном режиме. Вдобавок они способны вызвать блокировку шлюза или прокси-сервера, посылающих запросы [3].
о •
СП
я ц
ш >
<
сч О
Рисунок 1
Атаки вида UDP и TCP-flood выражаются в переброске к атакуемому серверу множества UDP и ГСР-пакетов. После обнаружения атаки, сервер приступает к ее отражению [4]. Основными мерами противодействия служат фильтрация трафика и концентрация ресурсов, которой предшествует тщательный анализ загруженности сервера и участка сети с обеспечением узких мест. К примеру, когда сервер в штатном режиме использует значительную часть канала связи, то вероятно, в случае угрозы, преступник попытается полностью загрузить его разрушительными запросами. Поэтому имеет смысл у данного канала связи заранее увеличить его пропускную способность.
Если продолжить рассмотрение в качестве атакуемой единицы web-сервер, то, кроме баз данных, повышенную нагрузку может создавать сам веб ресурс, или скрипты, расположенные на нем. В этом случае необходимо увеличить ресурсы самого сервера: увеличить мощность процессора, установить дополнительную память и прочее. Или же посредством специальных инструментов выделить веб-сервера в отдельный кластер. К примеру, это можно сделать посредством использования связки web-серверов Apache и Nginx.
Данная методика, заключающаяся в наращивании ресурсов, не станет идеальным лекарством от сетевых атак, и вдобавок обладает рядом недостатков:
• концентрация мощностей не может мгновенно выполняться, ведь она взаимосвязана с трансформацией аппаратного комплекса;
• предельное количество ресурсов невыгодно поддерживать долгое время, тем более, когда не известна точная дата нападения.
Хорошо зарекомендовавшим вариантом преодоления данных слабых мест выступает применение облачных технологий, позволяющих концентрировать мощности по мере необходимости. Сейчас многие хостинг-провайдеры включают их в перечень предоставляемых услуг [5]. Клиенты по мере надобности получают нужное им в определенный момент времени количество ресурсов. Например, когда резко возрастает число законных пользователей, или растет количество вредоносных запросов, провайдер предоставляет резервные мощности, дающие возможность обработки каждого требования. В итоге работа сервера не нарушается. Существенным недостатком данного подхода является его дороговизна. Клиенту приходится из своего кармана оплачивать дополнительные ресурсы.
Следующей группой методов, преследующих цель предотвращения атак, являются те, которые сопряжены с фильтрацией трафика. Блокировка вредоносных запросов наряду с обработкой ненадежных и подозрительных, дает возможность сэкономить на увеличении ресурсной базы.
В целях фильтрации используются некоторые программно-аппаратные средства, основанные на двух видах анализа трафика: количественном и качественном. В основу анализа этих средств заложены кластерный, поведенческий метод, метод математической статистики и теории вероятности, прочие методы.
Для повышения продуктивности противодействия и фильтрации трафика требуется решение пары сопряженных задач. Одна из них связана с поиском факта начала атаки, другая с идентификацией источника вредоносного трафика. От точности решения названых задач во многом зависит продуктивность мер противодействия. Выделяется пара подходов, связанных с определением начала атаки: базирующийся на анализе фактов злоупотреблений, а также тот, что основывается на исследовании аномалий. Первый подход предполагает обнаружение через сопоставление информации, описывающей текущее состояние системы, с информацией, характерной для типовых атак. Второй же предполагает обнаружение атаки через оценку текущего состояния и сравнение с нормальными показателями. Каждый из названых подходов характеризуется некоторыми изъянами. Первый, к примеру, неэффективен для обнаружения новых видов атак. Особенную остроту проблема неэффективности обретает в рамках контекста DDoS-атак, потому как злоумышленники пытаются симулировать действия реальных пользователей. Что касается второго, то для его эффективной эксплуатации требуется накопление данных статистики, позволяющих говорить о нормальных показателях функционирования системы. Так, в целях построения продуктивной системы обнаружения рекомендуется совокупное использование обоих подходов.
В итоге функционирования подобной системы осуществляется непрерывный сбор данных, описывающих ее состояние, далее - обработка и анализ данных на предмет отличия от заданных модельных параметров. При условии атаки активируются механизмы обнаружения источника вредоносного трафика. Сравнение данных с модельными можно осуществить разными методами.
Среди особенно простых стоит выделить те, что реализованы на принципах правил. Суть таких простых методов кроется в задании некоторых правил, описывающих нормальные и аномальные состояния системы. Эти правила могут описывать поведение и состояние системы в общем, либо поведение и состояние отдельных элементов (частоты запросов, набора полей запроса и т.п.). При явной простоте применения, эти методы все же являются довольно эффективными.
В совокупности особенно распространенных методов стоит отметить те, что базируются на количественном анализе. Данная условная группа преследует цель определения факта атаки по признаку увеличения нагрузки:
1. MULTOPS [6].
Призван анализировать соотношение полученных и отправленных пакетов данных.
2. MIB variables [6].
Призван вести учет числа пакетов, их типа и количества запросов.
3. ACC [7, 8].
Ведет учет числа пакетов из разных подсетей.
4. Network-Aware Clustering [9, 10].
Группирует поступающие запросы по подсетям и осуществляет их сравнение.
5. Hop-Count Filtering [11].
Учитывает расстояния в скачках до подсетей в целях фильтрации пакетов с некорректными и неправильными адресами.
6. Gateway Based [12].
Делит данные на потоки, основываясь на величине так называемого «поражающего действия».
7. D-Ward[13, 14].
Осуществляет проверку легитимности трафика по протоколам:
• TCP (количество пакетов TCP-ACK);
• ICMP (количество пакетов ICMP);
• UDP (количество соединений и пакетов в каждом из них).
Среди перспективных методов можно выделить те, что основаны на обнаружении отклонений по переменам в вероятностных параметрах данных. Суть таких методов заключается в том, что берется некоторый временной ряд параметра состояний охраняемой системы, затем значения параметра анализируются в виде случайных величин, полученных по некоторому распределительному закону. После этого выдвигается предположение, что по факту атаки представление распределения претерпевает изменения (вместе с этим меняются и вероятностные параметры набора). Отметим, что есть несколько методов обнаружения так
называемых «точек перехода» (change-point detection) [13, 15, 16], соответствующих описанной ситуации.
Принцип реализован в:
• Active Distributed Defense System [17].
• Improved D- Ward [13].
• Source IP address monitoring [16].
• SYNflooding CUSUMdetection [18].
Так, первый исследует количественные перемены IP входящих соединений. Остальные базируются на методе CUSUM [13, 16], что дает возможность итеративного отслеживания перемен задаваемого параметра с последующим выявлением «точек перехода». Суть состоит в том, что при условии увеличения значения какого-то параметра в течение некоторых интервалов времени будут задействованы защитные меры. Так, для Improved D-Ward в качестве такого параметра выступает поток TCP-пакетов от источника к потоку подтверждений получателя, для Source IP address monitoring число новых IP, для SYN flooding CUSUM detection соотношение пакетов TCP SYN-FIN (RST).
Чуть меньше распространены методы, которые работают на принципах извлечения данных (Data Mining). К ним относятся такие методы, которые применяют иерархичные системы самообучающихся классификаторов [19].
Что касается российских наработок, стоит отметить метод, рассмотренный статьей «Разработка системы обнаружения распределенных сетевых атак типа «Отказ в обслуживании»» [20]. Суть его состоит в вероятностной оценке утрат заявок в сети.
Другая статья под названием «Обнаружение распределенных атак на информационную систему предприятия» [21] рассматривает метод, который базируется на многоагентном моделировании.
Еще одна статья «Активные методы обнаружения SYN-flood атак» рассматривает модификации методики активного зондирования DARB, что призвана оценивать полуоткрытые соединения на основании единой нагрузки сети [22].
Множество из описанных систем, применяющих модельную информацию, обладают парой функциональных режимов: обучения и обнаружения. Сегодня существуют некоторые варианты практического внедрения и применения названых методов. К примеру, учет и исследование информации можно осуществлять посредством программных модулей, установленных на защищаемый сервер. Эту роль могут играть и физические средства анализа и сбора информации, которые при этом находятся за пределами сервера. Так, Cisco Guard является программно-аппаратным комплексом, сопряженным с анализаторами трафика, расположенных в отдельных сетевых сегментах.
Что касается дислокации средств противодействия, их стоит условно разделить на группы:
• в сети источника вредоносного трафика;
• между источником и сетью назначения;
• в сети назначения.
Продуктивность средств защиты возрастает при условии их сближения, то есть при условии нахождения в непосредственной близости к сети источника. В этом аспекте особенно эффективными методами противодействия атакам можно считать те, что блокируют трафик в сети источника. Стоит отметить, что эти методы являются мало развитыми по причине сложности организационных задач, связанных с интеграцией. Размещение средств защиты в сети при этом менее распространено, что обусловлено рядом издержек, сопряженных с организацией полноценной защиты:
• необходимостью подключения к некоторому числу провайдеров первого уровня;
• необходимостью наличия сотрудников, готовых отражать атаки круглосуточно;
• необходимостью использования особого оборудования для защиты.
Затрагивая тему оборудования для предотвращения атак и фильтрации, стоит отметить систему Proventia Network IPS, созданную IBM [23]. Этот комплекс аппаратных и программных средств обладает возможностями:
• обработки от 200 протоколов вне зависимости от типа и уровня;
• контроля утечек данных;
• применения множества методов реагирования;
• использования 3 тысяч аналитических алгоритмов;
• обеспечения защиты взаимодействующих в рамках корпоративной сети систем
посредством агента IBM Proventia Desktop;
• поддержки сигнатур пользователей;
• использования различных методов реагирования;
• помещения подозрительных данных в зону карантина.
Дополнительно стоит отметить преимущества: производительность IPS для скоростей до 40 Гбит/сек, возможность подключения IPS для Crossbeam, наличие 10 Гбит интерфейсов в рамках и посредством функций Network Security Controller (NSC) и Crossbeam (CB).
Cisco создала особое средство для защиты от сетевых атак на основе среды Cisco Guard [24]. Названный комплекс аппаратных и программных средств, осуществляя взаимодействие с детекторами аномалий, функционирующими в режиме реального времени, способен перенаправлять трафик, анализировать его и фильтровать.
Зачастую подобные решения защищают целую сеть и являются непродуктивными для защиты единичного ресурса. По данной причине огромную популярность получают средства защиты и противодействия, встраиваемые в промежуточные сети. Продуктивность их во многом зависит от числа узлов, которые выстраивают конкретное средство. Эффективные распределенные системы не требуют больших расходов. Владение и пользование ими доступно любым компаниям или сервисам, деятельность которых сопряжена с противодействием сетевым атакам.
Для примера стоит отметить, что ярким примером подобных сервисов является «Лаборатория Касперского». Речь об услуге Kaspersky DDoS Prevention [25]. В распределенной сети доставки контента Cloud Flare тоже предусмотрен похожий функционал [26]. Стоит подчеркнуть, что применение сервисов по противодействию характеризуется высокой эффективностью, экономической выгодой (если проводить сравнение с личным внедрением). Вместе с тем важно понимать, что для этого необходимо подключение промежуточного звена между клиентом и сервисом, то есть непосредственно сервиса противодействия.
Что касается защиты внутри атакуемой сети, стоит отметить условную подгруппу методов и средств, дислоцирующихся не на границе сети, а в рамках атакуемой системы (они, кстати, не так дорогостоящи, как рассмотренные выше). По причине и с учетом тонкостей и нюансов дислокации эти средства не могут считаться высокоэффективными для отражения массированных атак. К примеру, они не смогут продуктивно отражать крупные атаки и те из них, что имеют цель перегрузки полосы пропускания канала связи. По данной причине подобные средства слабо развиты. Вместе с тем, что обусловлено трендом на учащение фактов слабых и средних атак, они, эти средства, могут быть признаны относительно продуктивными и выгодными с экономической точки зрения.
В данном контексте выделим пару групп программных средств:
• действующих на уровне операционных систем атакуемых серверов;
• действующих на уровне приложений.
К первым относятся firewalls (файерволлы) и подобные средства:
1. Contimit [27].
Создан для iptables, в ^ix-системах дает возможность ограничивать подключения. К примеру, задать условие: не более одного одномоментного подключения с одного адреса.
2. DDoS deflate [28].
Буквально аналог Conlimit, что при условии нарушения лимитов заблокирует доступ на определенное время.
Ко второй группе можно отнести работающие на уровне приложений средства. Ярким примером могут послужить плагины, модули (для web-серверов, баз данных):
1. mod evasive [29].
Создан для web-сервера Apache. Дает возможность осуществлять блокировку по ряду заданных правил: по принципу адресов, числа запросов. Можно задавать продолжительность блокирования и прочие параметры.
2. ngx http limit zone module [30].
Аналог первому, но для web-сервера Nginx.
Суть работы названых средств кроется в блокировке по принципу соответствия определенному набору правил. Анализ трафика при этом не проводится. Иными словами, эти средства относительно примитивны и неэффективны для противодействия распределенным атакам. Зачастую базовым критерием для блокировки является превышение числа запросов с конкретного адреса, но такой подход достаточно груб. Дело в том, что под блок могут попадать частные ситуации превышения лимитов и запросы из сетей за пределами прокси или NAT.
Заключение
Были исследованы принципы распределенных сетевых атак, направленных на отказ в обслуживании. Также осуществлен мониторинг некоторых DDoS-атак, проводимых в последнее время. Исследована отчетность разных компаний, деятельность которых связана с информационной безопасностью, в том числе в части противодействия сетевым атакам.
Литература
1. Mirkovic J. A Taxonomy of DDoS Attacks and DDoS Defense Mechanisms: Technical report #020018 I J. Mirkovic, J. Martin, P. Reiher. - Computer Science Department. University of California, 2002. - 16 p.
2. Ковалев Д.А. Классификация методов проведения DDoS-атак // Мир транспорт, 2013. № 1 (45). - С. 130-134.
3. Dan Pelleg Accelerating Exact k-means Algorithms with Geometric Reasoning / Dan Pelleg, Andrew Moore // Carnegie Mellon University, Pittsburgh. - 2010.
4. Предотвращение атак с распределенным отказом в обслуживании (DDoS): [Электронный ресурс] / Официальный сайт компании Cisco / URL:
http://www.cisco.com/web/RU/products/ps5887/products_white_paper0900aecd8011e927_.html
5. Amazon Elastic Compute Cloud [Электронный ресурс] / URL: http://aws.amazon.com/ec2/
6. Cabrera, J.B.D. Proactive detection of distributed denial of service attacks using mib traffic variables - a feasibility study I J.B.D. Cabrera, L. Lewis, X. Qin et al. II Proc.of International Symposium on Integrated Network Management. Seattle, 14-18 May. 2001. - Piscataway: IEEE, 2001. - P. 609-622.
7. Ioannidis, J. Implementing Pushback: Router-Based Defense Against DDoS Attacks I J. loannidis, S.M. Bellovin II Proc. of Symposium of Network and Distributed Systems Security (NDSS). San Diego, 6-8 February 2002. - [S. 1.: s. п.], 2002. - P. 57-71.
8. Manajan, R. Controlling High Bandwidth Aggregates in the Network: ICSI Technical Report I R. Manajan, S.M. Bellovin, S. Floyd et al. - ICSI, 2001. - 16.
9. CoIIins, M. An Empirical Analysis of Target-Resident DoS Filters I M. Collins, M.K. Reiter If Proc. of 2004 IEEE Symposium on Security and Privacy (S&P'04). Oakland, May 9. - 12, 2004. -Piscataway: IEEE, 2004. - P. 103-114.
10. Krishnamurthy, B. On network-aware clustering of Web clients I B. Krishnamurthy, J. Wang II Proc. of ACM SIGCOMM 2000. Stockholm 28 August - 1 September, 2000. - [USA]: ACM publishing, 2000. - P. 97-110.
11. Jin, C. Hop-count filtering: An effective defense against spoofed DDoS traffic I C. Jin, H. Wang, K.G. Shin II Proc. of 10th ACM Conference on Computer and Communications Security. Washington, October 27-30, 2003. - [USA]: ACM publishing, 2003. - P. 30-41.
12. Xuan, D. A Gateway-Based Defense System for Distributed DoS Attacks in High Speed Networks I D. Xuan, R. Bettati, W. Zhao II Proc. of 2nd IEEE SMC Information Assurance Workshop. West Point, NY, June, 2001. - Piscataway: IEEE, 2001. - P. 212-219.
13. Kang, J. Protect E-Commerce against DDoS Attacks with Improved D-WARD Detection System I J. Kang, Z. Zhang, J. Ju II Proc. of 2005 IEEE International Conference on e-Technology, eCommerce and e-Service. Hong-Kong, 29 March - 1 April, 2005. - Piscataway: IEEE, 2005. - P. 100105.
14. Mirkovic, J. A Taxonomy of DDoS Attacks and Defense Mechanisms // ACM SIGCOMM Computer Communications Review, 2004. - Vol. 34; no. 2. - P. 643-666.
15. Li, M. Decision Analysis of Statistically Detecting Distributed Denial-of-Service Flooding Attacks I M. Li, С Chi, W. Jia et al. II International Journal of Information Technology and Decision Making, 2003. - Vol. 2; no. 3. - P. 397- 405.
16. Peng, T. Proactively Detecting DDoS Attack Using Source IP Address Monitoring I T. Peng, C. Leckie, R. Kotagiri II Networking 2004. Athens, Greece, May 9-14, 2004. - Berlin: Springer, 2004. -Vol. 3042. - P. 771-782.
17. Xiang, Y. An Active Distributed Defense System to Protect Web Applications from DDOS Attacks I Y. Xiang, W. Zhou // Proc. of Sixth International Conference on Information Integration and Web Based Application & Services (HWAS2004). Jakarta, Indonesia, 27-29 September, 2004. -[S. 1.: s. п.], 2004. - P. 559-568.
18. Wang, H. Detecting SYN flooding attacks I H. Wang, D. Zhang, K.G. Shin, 2004. - P. 101-112.
19. Gorodetsky, V. Asynchronous alert correlation in multi-agent intrusion detection systems I V. Gorodetsky, O. Karsaev, V. Samoilov, A. Ulanov II Proc. of Autonomous Intelligent Systems: Agents and Data Mining International Workshop, AIS-ADM 2005. St.Petersburg, June 6-8, 2005. - Berlin : Springer, 2005. - Vol. 3685. - P. 366-379.
20. Щерба Е.В. Разработка системы обнаружения распределенных сетевых атак типа «Отказ в обслуживании» // «Прикладная дискретная математика. Приложение». - 2013. №6 - С.68-70.
21. Никишова А.В. Обнаружение распределенных атак на информационную систему предприятия // «Известия Южного федерального университета. Технические науки», 2013. № 12 (149) - С.135-143.
22. Корнев Д.А. Активные методы обнаружения SYN-flood атак // «Информационная безопасность», 2012. - Т. 15. - № 2. - С. 189-196.
23. IBM Proventia Network Intrusion Prevention System (IPS) [Электронный ресурс] /URL: http://www.ibm.com/ru/services/iss/proventia_network_intrusion_prevention.html.
24. Cisco Guard DDoS Mitigation Appliances [Электронный ресурс] / URL: http://www.cisco.com/web/RU/products/ps5888/index.html.
25. Kaspersky DDoS Prevention [Электронный ресурс] / URL: http://www.kaspersky.ru/ddos-prevention.
26. CloudFlare [Электронный ресурс] / URL: https://www.cloudflare.com/.
27. Iptables Tutorial 1.2.2 [Электронный ресурс] / URL: https://www.frozentux.net/iptables-tutorial/iptables-tutorial.html.
28. DDOS Deflate [Электронный ресурс] / URL: http://deflate.medialayer.com/
29. mod_evasive - защита от DOS и DDoS-атак [Электронный ресурс] / URL: http://muff.kiev.ua/content/modevasive-zashchita-ot-dos-i-ddos-atak.
30. Модуль ngx_http_limit_zone_module [Электронный ресурс] / URL: http://nginx.org/ru/docs/http/ngx_http_limit_zone_module.html.