Знаете ли вы, что согласно исследованиям, проведенным Arbor Networks, Verisign Inc. и некоторыми другими компаниями:
- Ежедневно наблюдается около 2000 DDoS-атак;
- атака, способная остановить небольшую компанию на неделю, стоит всего 150 долларов;
- около 2/3 участников исследования (63%) хотя бы раз в течение года пострадали от DDoS-атак;
- помимо прямых потерь и потери лояльности пользователей, атаки также влияют на производительность персонала;
- 11% респондентов подверглись нападению шесть и более раз в году;
- Среди тех, кто подвергся нападению за последние 12 месяцев, 46% лежали более 5 часов, а 23% - более 12 часов;
- примерно треть всех случаев простоев среди респондентов вызваны DDoS-атаками.
Ты что, DDoS?
Все DDoS-атаки можно разделить на три большие группы:- объемный;
- атаки на уровне протокола;
- Атаки на уровне приложений.
Атаки на основе объема
Данная категория атак направлена на насыщение пропускной способности, и соответственно сила атаки измеряется в битах в секунду.В эту категорию входят различные типы флудов: UDP, ICMP и другие потоки фальсифицированных пакетов.
Мощность атаки растет с каждым годом, и если еще в 2002 году 400 Мбит/с казались чем-то из ряда вон выходящим, то сейчас отдельные атаки превышают 100 Гбит/с и способны снести с лица земли некоторые «карманные» дата-центры.
Пожалуй, единственный способ борьбы с такими атаками — фильтрация на уровне дата-центра (если он предоставляет такую услугу) или специализированных сервисов защиты.
Они обладают достаточной пропускной способностью канала и вычислительными ресурсами, чтобы поглотить объем и передать уже отфильтрованный трафик на сервер пользователя.
Чтобы «выдернуть» остатки паразитного трафика, можно также использовать аппаратную защиту.
Атаки на уровне протокола
В этой категории основное внимание уделяется аппаратным ограничениям или уязвимостям различных протоколов.Такие атаки засоряют ресурсы сервера или промежуточного оборудования (межсетевые экраны, балансировщики нагрузки и т. д.) паразитными пакетами, в результате чего системы не могут обрабатывать полезные.
Сила атаки измеряется в пакетах в секунду.
В эту категорию входят SYN-флуд, «пинг смерти», атаки с использованием фрагментированных пакетов и другие.
На этом уровне аппаратная защита становится заметно эффективнее.
Сортировать и фильтровать трафик помогают специально разработанные производителями таких устройств алгоритмы.
Естественно, любые алгоритмы несовершенны, и часть паразитного трафика все равно до вас доберется, а часть полезного трафика может быть потеряна.
Сторонние службы фильтрации также могут быть весьма эффективными.
Атаки на уровне приложения
Как следует из названия, атаки направлены на уязвимости в приложениях и операционных системах (Apache, Windows, OpenBSD и т. д.).Они приводят к неработоспособности любого приложения или ОС в целом.
Среди таких атак: Slowloris, атаки нулевого дня и другие.
Как правило, состоящие из вполне невинных на вид запросов, такие атаки «выводят из строя» веб-сервер.
Интенсивность измеряется в запросах в секунду.
Этот тип атаки является самым «убийственным».
Они чрезвычайно узконаправлены, благодаря чему могут создать очень серьезные проблемы злоумышленнику при небольших затратах ресурсов злоумышленника.
За последние 3-4 года этот тип атак стал распространённым, а простой флуд HTTP-запросов GET — один из наиболее распространённых типов.
Помимо упомянутых выше внешних сервисов и аппаратной защиты, вы также можете добавить встроенные программные алгоритмы, которые анализируют запросы и создают правила межсетевого экрана по результатам такого анализа.
Немного подробнее
Существует множество типов DDoS-атак, каждая из которых имеет свой стиль и методы преодоления.Не все атаки можно ослабить или преодолеть.
Иногда нет смысла даже пытаться, и проще переждать, с грустью подсчитывая свои потери.
Невозможно подробно описать механизмы противодействия каждому типу; Об этом можно писать книги и защищать диссертации.
Однако я постараюсь дать описание сути наиболее распространенных видов атак и основных принципов противодействия им.
UDP-флуд
Этот тип атаки использует простейший протокол UDP. Его характерными особенностями является отсутствие необходимости устанавливать сеанс и отправлять какой-либо ответ. Бесчисленное количество пакетов поступает на случайные порты хост-машины, заставляя вас постоянно проверять, не прослушивает ли какое-либо приложение этот порт, и в случае возникновения ошибки возвращать пакет «ICMP Destination Unreachable».Естественно, такая деятельность потребляет ресурсы хост-машины, что приводит к ее недоступности.
Один из самых простых способов хотя бы частично обезопасить себя от этой проблемы — заблокировать UDP-трафик (если, конечно, ваше приложение этого не требует).
Для борьбы с более крупными атаками подходят аппаратные сети безопасности и фильтрации.
ICMP-флуд
Аналогично UDP-флуду.Запросы Ping отправляются на хост-компьютер с максимальной частотой, заставляя его отвечать эхом.
Невинный инструмент проверки доступности узла сети становится злым пожирателем системных ресурсов.
Вот почему некоторые системные администраторы полностью блокируют ICMP-запросы на уровне межсетевого экрана.
Сервер или любое другое сетевое оборудование будет вполне доступно, но вы не сможете его пропинговать.
Син-флуд
Этот тип атаки использует один из основных принципов, присущих протоколу TCP – принцип «тройного рукопожатия».Машина, инициирующая соединение, отправляет пакет SYN на хост-машину.
Хост отвечает пакетом SYN-ACK, на который инициирующая машина должна ответить пакетом ACK. В случае SYN-флуда пакет ACK не отправляется, в результате чего соединение некоторое время висит открытым и закрывается по таймауту.
Поскольку количество соединений, которые хост-машина может одновременно держать открытыми, ограничено, рано или поздно наступает насыщение, приводящее к отказу в обработке полезных пакетов.
MAC-флуд
Весьма экзотический тип атаки, направленный преимущественно на сетевое оборудование.Злоумышленник отправляет пустые пакеты Ethernet с разными MAC-адресами.
Коммутатор считает такие пакеты отдельными и резервирует для каждого из них определенное количество ресурсов.
Перенасыщение ресурсов может привести к тому, что коммутатор перестанет отвечать на запросы, а в некоторых случаях и к полному сбою таблицы маршрутизации.
Пинг смерти
Этот вид имеет разные названия: Пинг Смерти, Слезинка и некоторые другие.Сегодня он уже не представляет такой серьезной угрозы, но в былые времена все было несколько иначе.
Максимальный размер IP-пакета составляет 65535 байт. Однако при передаче по сети пакет разбивается на части, соответствующие размеру окна.
В результате манипуляций с получившимися субпакетами можно добиться того, что при обратной «сборке» будет получен пакет, превышающий максимальный размер.
Это может привести к переполнению выделенного буфера памяти и отказу в обслуживании других пакетов.
Слоулорис
Особо сложный и узкоспециализированный тип атаки, позволяющий при относительно небольших ресурсах (достаточно одного сервера) уничтожить веб-сервер, не затрагивая другие протоколы.Атакующий сервер пытается открыть как можно больше HTTP-соединений и удерживать их как можно дольше, постепенно отправляя частичные запросы.
Лимит одновременных подключений на атакуемом сервере быстро заканчивается, и он перестает принимать полезные запросы.
Лечится ловлей и блокировкой таких затянутых соединений.
Отраженные атаки
В этом типе пакеты с фальсифицированными IP-адресами отправителя отправляются на максимально возможное количество машин.Ответы машины передаются на IP-адрес жертвы, перегружая ее сервер.
Одним из распространенных примеров является использование неправильно настроенных DNS-серверов.
На DNS-серверы отправляются небольшие запросы, предположительно с IP жертвы.
Размер ответа сервера в среднем в 10 раз превышает размер запроса.
Таким образом, атакующий сервер, рассылающий ложные запросы со скоростью 100 Мбит/с, может обрушить на атакуемом около гигабита паразитного трафика.
Деградация сервиса
Основная суть этого типа – многократное моделирование действий реальной аудитории.Самый примитивный вариант — частые запросы одной и той же страницы сайта.
Лечится временной блокировкой страницы с сообщением об ошибке.
Более сложные системы атак будут случайным образом проходить по вашему сайту, запрашивая не только html-документ, но и все сопутствующие изображения, скрипты и файлы стилей.
В результате компьютеры-зомби будут истощать ресурсы сервера и приводить к деградации (или, в просторечии, «тормозам»).
Общий принцип борьбы — поведенческий анализ и отсеивание подозрительных IP на уровне межсетевого экрана.
Например, повышенная частота запросов, повторение маршрутов продвижения сайта с разными IP или запросы исключительно HTML-документов выглядят подозрительно и указывают на необходимость блокировки таких IP. Однако чем сложнее алгоритм, включенный в программу атаки, тем сложнее выявить ложный трафик и тем больше ложных срабатываний, блокирующих доступ к ресурсу для реальных пользователей.
Не каждый захочет с этим мириться.
Непреднамеренный DDoS
На самом деле это нельзя назвать нападением.Этот тип DDoS возникает, когда ссылка на сайт попадает, например, в топовый новостной ресурс или популярный блог, вызывая резкий рост трафика, к которому сайт не готов.
Широко известный в узких кругах пример — хабраэффект. Нет необходимости бороться с этим; скорее, вам нужно радоваться тому, что ваш сайт растет. Что ж, пришло время задуматься об апгрейде.
Атака нулевого дня
К этому типу относятся атаки, которые фиксируются впервые.Как и в случае с новыми вирусами, новыми бактериями и новыми паразитами, потребуется время, чтобы проанализировать атаку и найти эффективное лекарство.
Многовекторные атаки
Самый сложный тип атаки.Нападающая сторона использует несколько различных видов и средств нападения, что существенно усложняет или даже делает невозможным выявление компонентов и выбор средств борьбы.
Насколько это доступно?
Безмерно доступен.Сегодня в Интернете в свободном доступе имеется множество приложений для проведения DDoS-атак.
Некоторые из них используют механизмы атак, которым сложно противостоять, другие позволяют всем пользователям объединиться в добровольный ботнет, что дает возможность использовать чужие ресурсы для проведения атак и взамен раздавать свои.
В то же время таким, казалось бы, дилетантским атакам бывает сложно противостоять даже хорошо подготовленным коммерческим системам.
Другой способ — аренда ресурсов ботнета.
В Интернете полно ресурсов, предоставляющих подобные услуги по весьма символическим ценам: от 5 долларов в час, от 40 долларов в день.
За такие, можно сказать, смешные деньги вы легко сможете «заказать» своих конкурентов в электронной коммерции и принести им куда более существенные убытки.
Почему это необходимо?
Я думаю, что каждый знает ответ. Самая распространенная причина – недобросовестная конкуренция.Спектр атакуемых сайтов и ресурсов чрезвычайно широк.
Сегодня это не только финансовые учреждения, игровые сайты и интернет-магазины; случаи атак зафиксированы даже на правительственных сайтах и службах доставки пиццы.
Широкая доступность инструментов атаки постепенно переводит их из разряда чисто оружия экономической борьбы в более широкое использование, вплоть до идеологической борьбы, народного протеста, мести обиженного клиента неугодному сервису и банального интернет-вандализма.
Лично мне до сих пор трудно в это поверить, но в некоторых сообщениях утверждается, что в последние годы именно идеологический хактивизм и интернет-вандализм возглавляют список, оттесняя конкуренцию на более низкие позиции.
Как с этим жить?
Мы вместе с нашими клиентами неоднократно сталкивались с DDoS-проблемами различного типа и масштаба.Некоторые атаки можно было предотвратить путем правильной настройки брандмауэра на сервере, тогда как для других требовалась аппаратная или внешняя фильтрация.
Бывало, что дата-центр просто обнулял IP, потому что.
входящий объем трафика внезапно превышал входящий канал не только сервера, но и всего кабинета в целом.
Как поставщик услуг аренды серверов, мы выступаем за политику, согласно которой пользователь и только он является основной стороной, заинтересованной в сохранности и доступности данных.
Таким образом, резервное копирование, своевременное устранение брешей в безопасности программного обеспечения и договоренность со службой защиты от DDoS — это священные обязанности любого человека, заботящегося о своем проекте.
Однако мы будем рады поделиться некоторыми рекомендациями, которые считаем полезными.
Если ваш проект относится к тем категориям ресурсов, которые чаще всего подвергаются атакам, вам следует оперативно подумать о нескольких простых и очевидных, но часто игнорируемых шагах, которые помогут если не защититься от атак, то хотя бы снизить их негативное воздействие.
Исследуйте свою сеть.
Любой сервис имеет некоторые характерные особенности использования сети: виды и объемы трафика, суточную кривую и т. д. Например, для сайтов для взрослых характерен плавный рост трафика в вечернее время с постепенным спадом после полуночи плюс небольшой пик в обеденный перерыв.
Уделите время изучению стандартных характеристик и регулярно отслеживайте текущую картину.
Атаки редко происходят как щелчок выключателя, чаще они приходят как волна.
Все начинается с небольшого повышения активности, которая вскоре начинает активно возрастать.
Если вы сможете поймать начало волны, у вас будет шанс принять меры заранее.
Знайте, к кому обращаться.
Вы должны четко знать, к кому обращаться, если вы уже подверглись нападению или чувствуете его приближение.
Это может быть отдел внутренней безопасности, удаленный сотрудник, инженер дата-центра, служба поддержки безопасности и т. д. Поиск по результатам поиска, спешное чтение отзывов, звонки или общение с представителями различных служб – последнее, что вам нужно, когда возникла беда.
уже прибыл.
К моменту выбора исполнителя атака уже может разрешиться сама по себе, и вопрос о гарантированном обращении за помощью снова будет отложен до следующей критической ситуации.
И так до бесконечности .
Разработайте план действий.
Несмотря на всю спонтанность, свойственную славянской душе, важнейшие бизнес-процессы необходимо по возможности стандартизировать и документировать.
Наличие контакта «спасательной службы» важно, но ваши сотрудники должны знать, как правильно и оптимально с ним взаимодействовать.
Если в проекте участвуют два-три человека, можно просто озвучить последовательность действий.
Но если у вас достаточно большой штат сотрудников, круглосуточно дежурят сетевики, лучше всего, если краткие пошаговые инструкции будут записаны на бумаге и повешены рядом с планом пожарной эвакуации.
В момент атаки на смене может находиться сотрудник с небольшой квалификацией или без практического опыта решения такой задачи, и важно, чтобы у него не было необходимости много думать и искать решение.
Проведите «тренировочные учения».
Этот пункт особенно актуален, если у вас достаточно большое и критичное приложение.
На заводах (и не только) периодически проводятся проверочные эвакуации в случае пожара или другого стихийного бедствия.
DDoS — это тоже своего рода стихийное бедствие.
Почему бы не устраивать периодические проверки своих навыков быстрого реагирования в критических ситуациях? Это позволит укрепить навыки и выявить слабые места в процедурах.
С поправкой на наш менталитет, необходимо также правильно преподнести эти тренинги сотрудникам, чтобы это не воспринималось как «очередная корпоративная глупость».
Знайте, что блокировать.
Любой сервис имеет определенный набор основных портов, необходимых для его работы.
Заранее заблокируйте все ненужное на брандмауэре.
Это сузит поле атаки.
Если у вас есть определенный список ключевых клиентов, позаботьтесь о добавлении их адресов в предопределенный белый список, чтобы в случае атаки их запросы не были отсечены.
Знайте, где заблокировать.
Блокировать трафик на брандмауэре или на роутере? Подключить аппаратный DDoS или внешний сервис фильтрации трафика? Если вы предпочитаете не отдавать защиту целиком сторонним сервисам, а провести базовую диагностику и решить хотя бы часть проблем самостоятельно, не забудьте включить в свой план ликвидации процедуры диагностики и правила действий в определенных ситуациях.
Это позволит вам избавиться от метода проб и ошибок, когда на это совершенно нет времени.
Как я уже сказал, эти шаги не будут панацеей, но помогут минимизировать простои и потери.
Буду благодарен за любые дополнения и рекомендации из личной практики.
Чистого вам канала.
Теги: #ddos #ddos атака #ddos защита
-
Итоги 2008 Года В Uanet
19 Oct, 24 -
Креативный Подход К 8 Марта — Идеи Для Гиков
19 Oct, 24 -
Url В Печатных Изданиях
19 Oct, 24 -
Списки И Другие Структуры Данных В Ocaml
19 Oct, 24