DDoS-атаки (от англ. Distributed Denial of Service, или «Распределенный отказ в обслуживании») — это хакерская атака с целью вызвать проблемы с открытием сайта.
Атаки типа «Отказ в обслуживании» в основном используются для выведения из строя публичных сайтов. Обычно это сайты крупных государственных органов, банковских и коммерческих структур.
В России инициаторы и участники DDoS-атак наказываются Уголовным кодексом по 272-й статье, которая предусматривает штраф до 500 тысяч рублей либо реальное лишение свободы сроком до семи лет.
Как узнать что сайт ддосят?
Если атака не является скрытой, ее просто опознать по ряду признаков:
- Недоступность сайта целиком.
- Недоступность сайта частично (определенных страниц).
- Некорректный ответ страницы.
- Слишком долгая загрузка страницы.
- Некорректная работа функций сайта, объектов на странице.
Теневые DDoS-атаки определяются при помощи качественного и количественного анализа входящего трафика, который организуется на сетевой стороне.
Зачем заказывают DDoS-атаки
Существуют самые разнообразные сценарии заказа хакерских атак. Вот самые очевидные случаи:
- Один человек. Преследует исключительно собственные цели. Например, месть какой-либо компании или бренду.
- Группа людей. Преследуют цель сделать сайт недоступным и выкинуть его из поисковой выдачи. Например, атака на конкурента.
- Один или группа заказчиков. Преследуют цель получения денежных средств от жертвы.
- Один заказчик. Цель — полностью избавиться от сайта конкурента и сделать его недоступным на максимально продолжительный период времени.
Также их используют для политических протестов и просто для развлечения.
Как строится типичная DDoS-атака
- Обнаружение незащищенных узлов в сети. Делается это при помощи массовой отправки сценарных запросов.
- Вторжение первоначальное (атака). Выполняется только на незащищенные (максимально уязвимые) узлы. Цель: взять под контроль как можно больше компьютеров и установить на них вирусы-трояны.
- Отправка запросов. Теперь захваченные компьютеры используются для отправки запросов на главный компьютер.
У такого сценария есть множество вариантов. О них и пойдет речь далее.
Какие виды и типы DDoS-атак существуют в 2022 году
HTTP-флуд
Это стандартные запросы в заголовке, но они отлично выводят из строя неподготовленные и незащищенные сайты. Суть атаки состоит в том, что злоумышленник отправляет большое количество пакетов с сильными изменениями заголовков. Вычислительная система «клиент-сервер» приступает к их расшифровке, но количество пакетов не снижается. На расшифровку нужно время, а количество пакетов только растет: в итоге происходит коллапс и сайт становится недоступным.
ICMP-флуд
Также известен как Smurf. Злоумышленник посылает запрос типа ping, параллельно происходит отправка подмененного ICMP (сетевой протокол, принадлежащий к стеку TCP/IP). Далее адрес злоумышленника подменяется на адрес атакуемого компьютера. При этом ping начинают отправлять все соответствующие узлы. Пример: 300 узлов, благодаря ICMP и бустерной сети, будут усилены в 300 раз.
Ping-flood — разновидность ICMP-флуд. Очень похож на предыдущий вид атаки, но разница в том, что ping-flood можно выполнить даже без специального ПО. Злоумышленник отправляет на атакуемый сервер эхо-пакеты, которые идут с IP очень широких диапазонов. Вычислительная способность сервера заметно снижается, так как пропускная способность подвергается серьезному испытанию. Сайт становится недоступным.
APDoS
Или «Расширенная постоянная DoS атака» (от англ. Advanced Persistent DoS ). Кроме уже знакомого нам HTTP-флуда, APDoS задействует и другие методы, например, SYN-спам. APDoS может сочетать эти техники, чтобы отправлять на атакуемый сервер тысячи, сотни тысяч и миллионы запросов. Главное отличие Advanced Persistent DoS от других методик — постоянное изменение и комбинирование нескольких видов атак, чтобы сервер не смог вовремя идентифицировать атаку и решить проблему.
UDP-флуд
Также известен как Fraggle. По своему действию полностью идентичен методике ICMP-флуда. Единственное отличие — в типе пакета. В случае UDP-флуда отправляется одноименный UDP-пакет. Схема такая: на 7-й порт хакер посылает echo-команды. Далее происходит подмена IP хакера на IP атакуемого компьютера. Полоса пропускания перегружается из-за огромного количества ответов. Сайт становится полностью недоступным.
7-й порт — echo-служба. Она устарела из-за echo на ICMP. Смысл 7-о порта: он повторяет все, что ему отправляется. Эту функцию как раз и используют хакеры в атаках Smurf / Fraggle
SYN-флуд
Заключается в установке так называемых полуоткрытых соединений. Методика все та же: отправка очень большого количества SYN (TCP-флаг, или синхронизация номеров последовательности) на атакуемый сервер.
Разница с UDP-флудом состоит в последующем поведении системы. После того как сервер получил SYN, он обязательно отвечает отправкой подтверждающих флагов SYN+ACK. Но злоумышленник игнорирует этот этап, и полуоткрытое соединение так и остается незавершенным, пока не наступит тайм-аут. Естественно, за это время колоссально увеличивается очередь ожидающих и в итоге система оказывается неработоспособной.
Pulse Wave
Этот вид атак можно опознать через анализ график входящего трафика. Pulse Wave отличается характерными скачкообразными нарастаниями, которые визуально напоминают пилу:
Казалось бы, определить такой трафик несложно — даже по формальным признакам, но на практике сделать это не удается.
Флуд в MAC
У каждого сетевого устройства есть собственный, уникальный MAC — уникальный ID, который автоматически соотносится с каждой единицей Ethernet-оборудования. Коммутаторы интерпретируют такие адреса самостоятельно и ресурсы выделяют для каждого из них по отдельности. Цель хакера — перегрузить таблицу MAC-адресов. Отправка большого количества запросов приводит к исчерпанию памяти коммутатора. Ресурсы и производительность системы снижаются до 0.
Атака на NTP
Заключается в использовании так называемых серверов публичного времени по NTP (от англ. Network Time Protocol, или сетевой временный протокол). Сейчас эта уязвимость хорошо известна, но в 13-14-х годах NTP-атаки наделали много шума: через эту уязвимость организовывалось множество атак на сайты крупного бизнеса и государственных структур.
Логика атак на NTP заключается в подмене IP: мошенники отправляют на сервер огромное количество запросов. Сервер, как обычно, должен сделать UDP-ответ на каждый такой запрос. Но так как IP был подменен, суммарное количество таких ответов растет в геометрической прогрессии. В итоге сервер оказывается «обездвижен».
UDP — коммуникационный протокол, используемый для сверхчувствительных данных (видео или поиск DNS). Увеличивает производительность связи, но может создавать уязвимости и терять пакеты в процессе использования
Ping of Death
Старая техника, связанная с обработкой исключений в программном коде. Сейчас Ping of Death уже не используется злоумышленниками, потому что в 2022 году пропускная способность публичных и частных сетей многократно увеличилась. Суть: злоумышленник отправлял большое количество пингов, при этом задействовались сразу несколько видов протоколов. Итог: сервер переставал отвечать и перегружался.
Slowloris
Этот тип атак похож на уже рассмотренный нами SYN-флуд, но в этом случае полуоткрытыми остаются не отдельные соединения, а сразу все подключение к определенному серверу. Затем такое соединение оставляется открытым как можно дольше, после происходит копирование полуоткрытого соединения. В итоге вместо одного появляются тысячи и сотни тысяч подключений — на основе того самого первоначального целевого соединения. Естественно, сервер будет завершать подобные подключения по установленному таймауту, а это займет очень большое количество времени.
Подытожим самые частые сценарии DDoS-атак:
- Корневые серверы DNS + ПО, установленное на таких серверах и нахождение в таких программах дыр.
- Все методики, связанные с переполнением пропускной способности или флудом.
- Эксплойты. Самописные решения злоумышленников, которые позволяют атаковать самые сложные сетевые системы. Эксплойты возможны из-за формальных ошибок в коде. Самые частые сценарии таких ошибок: необрабатываемый сценарий, запрос к некорректному участку адресного пространства, инициализация некорректной инструкции. Например, обращение по null-адресу (адресу, который не существует). Технику эксплойтов используют опытные хакеры, так как нужно писать код.
-
Недостаток производительности и недостаток вычислительных ресурсов. Самые частые сценарии этой категории:
- атака второго рода (злоумышленник заставляет серверную защиту отклонять все валидные обращения, подменяя их статус на вредоносный);
- отправка ненасыщенных пакетов;
- недостаточная проверка пользовательских данных;
- флуд-файлы регистрации (log-файлы);
- доступ к CGI с дальнейшим созданием скрипта.
Другие сценарии атак на основе формальных ошибок в коде: переполнение буфера, обработка исключений.
CGI — «интерфейс общего шлюза» — стандарт интерфейса, используемого внешним веб-приложением для соединения с сервером.
На каком уровне может произойти DDoS-атака
Чтобы понять особенность DDoS-атак, нужно рассмотреть уровни, на которых она может произойти. Для этого нужно углубиться в модель OSI.
Сетевая модель OSI — это действующая модель стека протоколов OSI и ISO. Благодаря ней разнотипные сетевые устройства могут обмениваться данными.
В интернете сегодня используется семиуровневая сетевая модель OSI:
- На первом (физическом) уровне может происходить разрушение физических ресурсов с дальнейшим выходом из строя части сетевой инфраструктуры.
- На втором уровне (канал) может происходить блокировка портов путем отправки большого количества пакетов.
- На третьем уровне (сетевом) может происходить уменьшение пропускной способности сетевой инфраструктуры с последующей вероятной перегрузкой.
- На четвертом уровне (транспортном) может происходить перегрузка канала по числу возможных соединений или по другим показателям.
- На пятом уровне (сеансовый) может теряться функциональность оборудования. Например, сетевой коммутатор может стать неуправляемым, так как происходит атака непосредственно на telnet — сетевой протокол, используемый для виртуального доступа к компьютеру и для обеспечения двустороннего, совместного и текстового канала связи между двумя машинами.
- На шестом уровне (представление) может затрагиваться SSL. Например, все SSL-подключения перестают опознаваться, следует перезагрузка системы, но проблема не решается.
- На седьмом уровне (приложение) сервер может потерять вычислительную мощность, серверные ресурсы станут бесполезными.
Хакерская атака типа «Отказ в обслуживании» может происходить на любом уровне этой модели. Мы дадим несколько сценариев воздействия DDoS-атаки для каждого уровня OSL:
Главные данные: биты. Пример: любые DOS-атаки.
DoS — то же самое, что и DDoS (атака типа отказа в обслуживании). Разница в том, что DoS-атака осуществляется с одного хоста, а DDoS — с нескольких.
Главные данные: кадры. Пример: флуд в MAC.
Главные данные: сетевые пакеты. Пример: атака в ICMP.
Главные данные: сегменты. Пример: SYN и его разновидности.12
Главные данные: сами данные. Пример: каноническая DOS-атака на сервер telnet.
Главные данные: сами данные. Пример: DoS-атака с использованием поддельных SSL-запросов.
Главные данные: сами данные. Пример: GET и POST запросы в HTTP, например — PDF GET.
Как защититься от DDos-атак?
В 2022 году способов защиты предостаточно. Есть инструменты универсального действия, например CloudFlare, есть сложные брандмауэрные защиты на уровне сетевых приложений. Несмотря на такие разработки, 100 % защиты все еще не придумано.
Есть 5 подходов к построению сетевой инфраструктуры, которые позволят защитить ваш сайт от DDoS-атак:
- Масштабируемость вычислительных возможностей сервера. Атака на перегруз производительности сервера и пропускную способность подключения — два самых распространенных сценария DDoS-активностей. Решение: выбирать облачные серверы, чтобы гибко менять производительность системы исходя из текущих потребностей.
- Локализация точек атаки и уменьшение их числа. Чем меньше зон вы оставите открытыми для злоумышленника, тем эффективнее будет защита сайта. Обязательно внедрите Elastic Load Balancing (или другой балансировщик сетевой нагрузки) и ACL (network access control list).
Сетевой ACL используется для фильтрации трафика. Грубо говоря — чтобы был только разрешенный трафик. ACL в сети выполняет ту же функцию, что и ACL файловой системы, поскольку учетные данные устройств проверяются по утвержденному списку. Однако сетевой ACL отличается тем, что защищает сеть, а не каталоги или файлы внутри сети
ACL позволяет автоматически фильтровать вредный трафик, отделяя его от хорошего, и позволяет работать с любыми второстепенными протоколами. Но если хакер решил построить атаку на первостепенных пакетах, ACL становится бесполезным. По мере необходимости внедрите CDN (Content Delivery Network). Преимущества CDN:
- Более быстрое время загрузки сайта.
- Быстрая масштабируемость ресурсов сервера во время интенсивного трафика.
- Сводит к минимуму риск опасных пиков трафика.
- Снижает затраты на инфраструктуру за счет разгрузки трафика (меньше нагрузки на источник).
- В общем — лучшая производительность сайта.
- Специальные брандмауэры. Они помогут локализовать DDoS-атаки, которые происходят на седьмом уровне OSL (приложение). К таким решениям можно отнести WAF-экраны, например, «Брандмауэр для интернет-приложений AWS». Он эффективен даже против сложных сценариев атак — например, подмены запросов или замены SQL. Брандмауэры типа AWS умеют отличать вредоносный трафик от качественного и автоматически его локализовывать.
- Потенциал пропускной способности. Необходимо заранее удостовериться в том, что выбранный хостинг практикует выдачу увеличенной пропускной способности в экстренных ситуациях. Подстроиться под нужды реальных пользователей, расположенных наиболее близко к вашей инфраструктуре, поможет Amazon Route 53 — коммерческий DNS-сервис, сервис сопутствующих сетевых услуг и уже упомянутый выше CDN. Создавая сетевые приложения, помните, что расширенный пропускной потенциал является гарантией от любых DDoS-атак, направленных исключительно на подобную перегрузку.
- Ориентир на максимальное количество трафика, который без перебоев и задержек может отработать ваш хост. В идеале необходимо проработать признаки качественного трафика и в дальнейшем внедрить техническое решение, позволяющее проводить попакетное сравнивание всего трафика с наиболее качественными, эталонными значениями. В случае успешной настройки такой системы при попытке DDoS-атаки подозрительный трафик просто не будет обрабатываться.
Кроме вышеуказанных методов для защиты, можно рекомендовать превентивные и узконаправленные решения:
- Инструменты, ограничивающие флуд в пропускном канале: например, связка Apache + nginx, самостоятельно ngx_http_limit_req_module.
- Предотвращение триггеров, вызывающих негативную реакцию определенных групп людей (публичные заявления компаний касательно политических, гендерных, религиозных тем часто бывают оскорбительными).
- Задействование оборудования, устанавливающегося непосредственно перед сетевой инфраструктурой для фильтрации входящего трафика. Например, устройства по типу DefensePro® или Impletec iCore. Такое фильтрующее оборудование — один из лучших инструментов для борьбы с DDoS-атаками.
- Переговоры с исполнителями или организаторами хакерской атаки. Найти их бывает сложно, но если это вам удалось, начинайте диалог. При этом важно обращаться к правовым и юридическим мерам. Как минимум — мотивировать прекращение атаки на сайт, руководствуясь статьями Уголовного кодекса РФ.
- Программный сервер и другое противохакерское ПО. Помогут остановить самые примитивные сценарии DDoS-атак: AWS Shield Advanced или King Servers Anti DDoS.
- Фильтрация при помощи сетевых экранов — когда нужно заблокировать определенный поток и ACL (выше мы уже разбирали этот инструмент подробно). Межсетевые экраны имеют существенные ограничения: например, не позволяют заранее идентифицировать качественный и вредоносный трафик.
- Распределение систем и их постоянный бэкап. Даже если какой-то один узел выйдет из строя, в ходе той же DDoS-атаки, сайт останется доступным.
- Перенаправление вредоносного трафика на атакующий сервер. Если у вас есть технические и вычислительные возможности для такого маневра, он может быть весьма оправданным. В ряде случаев злоумышленник просто прекратит свою деятельность.
- Локализация дыр в сетевых службах и соответствующих системах с дальнейшим устранением уязвимостей в этих узлах. Эта техника эффективна против многих DDoS-атак - кроме тех, которые используют флудовые методы атаки.
Комментарии