Пакетная атака
Пакетная атака — это вид кибератаки, направленный на нарушение работоспособности, отказ в обслуживании (DoS) или несанкционированный доступ к компьютерной системе, сети или сервису путём отправки большого количества сетевых пакетов, превышающих возможности целевого оборудования или программного обеспечения по их обработке. Пакетные атаки относятся к классу атак на сетевую инфраструктуру и являются одним из наиболее распространённых методов дестабилизации работы веб-сайтов, серверов и целых сегментов интернета.
Классификация пакетных атак
Пакетные атаки классифицируются по нескольким признакам: по типу используемых протоколов, по механизму воздействия, по числу источников атаки и по цели.
По числу источников
- Одиночная атака (DoS — Denial of Service): Атака осуществляется с одного устройства (компьютера, сервера). В современных условиях малоэффективна против крупных систем, так как легко блокируется фильтрацией одного IP-адреса.
- Распределённая атака (DDoS — Distributed Denial of Service): Атака проводится одновременно с множества различных устройств, часто объединённых в ботнет (сеть заражённых компьютеров, IoT-устройств). DDoS-атаки значительно сложнее отражать, так как трафик поступает из тысяч и миллионов разных источников, что затрудняет его идентификацию и блокировку.
По типу используемых протоколов
- Атаки на уровне L3 (сетевой уровень модели OSI): Используют протоколы IP, ICMP (Internet Control Message Protocol). Примеры: ICMP-flood (ping flood), Smurf-атака, Fraggle-атака.
- Атаки на уровне L4 (транспортный уровень): Используют протоколы TCP (Transmission Control Protocol) и UDP (User Datagram Protocol). Примеры: SYN-flood, UDP-flood, ACK-flood.
- Атаки на уровне L7 (прикладной уровень): Имитируют поведение обычных пользователей, отправляя запросы к конкретным приложениям (HTTP, HTTPS, DNS, SMTP). Примеры: HTTP-flood, Slowloris, атаки на DNS-серверы.
По механизму воздействия
- Флуд (Flood): Цель — исчерпать пропускную способность канала связи или ресурсы оборудования (процессор, память) путём отправки огромного количества пакетов. Простейший и наиболее распространённый тип.
- Амплификационные атаки (Amplification): Используют уязвимости в протоколах, позволяющие с минимальными затратами со стороны атакующего вызвать лавинообразный ответ от сервера-жертвы. Пример: DNS-амплификация, NTP-амплификация, SSDP-амплификация. Коэффициент усиления может достигать десятков и сотен раз.
- Фрагментированные атаки (Fragmentation): Отправка фрагментированных IP-пакетов, которые при сборке на стороне жертвы вызывают перегрузку или крах системы (например, Teardrop-атака).
- Атаки на уязвимости протоколов (Protocol Exploits): Используют ошибки в реализации протоколов (например, SYN-flood использует трёхэтапное рукопожатие TCP).
Основные виды пакетных атак
SYN-flood
Одна из самых известных атак на транспортный уровень. Атакующий отправляет множество SYN-пакетов (запросов на установление TCP-соединения) с поддельными IP-адресами. Сервер-жертва, получив SYN-пакет, выделяет ресурсы для полуоткрытого соединения и отправляет SYN-ACK-пакет обратно, ожидая подтверждения (ACK). Поскольку IP-адрес ложный, подтверждение не приходит, и сервер держит соединение открытым до истечения тайм-аута. При большом количестве таких запросов таблица полуоткрытых соединений переполняется, и сервер перестаёт принимать новые легитимные запросы.
UDP-flood
Атака заключается в отправке большого количества UDP-пакетов на случайные или определённые порты целевого сервера. Сервер, получив UDP-пакет на закрытый порт, отправляет ICMP-сообщение «Destination Unreachable» (пункт назначения недоступен). При большом объёме трафика это может исчерпать ресурсы сервера и пропускную способность сети.
ICMP-flood (Ping flood)
Атака, при которой жертве отправляется огромное количество ICMP-пакетов (эхо-запросов, известных как «пинг»). Сервер, отвечая на каждый запрос, тратит ресурсы на обработку и отправку ответов. В современных системах ICMP-флуд редко бывает эффективен сам по себе, но часто используется в комбинации с другими атаками.
HTTP-flood
Атака на прикладном уровне, имитирующая поведение обычных пользователей веб-сайта. Атакующий отправляет множество HTTP-запросов (GET или POST) к веб-серверу. Цель — исчерпать ресурсы сервера (базы данных, процессор, память) или заполнить пул соединений. Различают два основных типа:
- HTTP GET-flood: Запросы на получение статических или динамических страниц.
- HTTP POST-flood: Запросы на отправку данных (например, заполнение форм), что требует больших вычислительных затрат на сервере.
Slowloris
Особая разновидность атаки на прикладном уровне, не требующая большого объёма трафика. Атакующий открывает множество HTTP-соединений с сервером, но отправляет запросы очень медленно, по частям, никогда не завершая их. Сервер, ожидая полного запроса, держит соединение открытым, что приводит к исчерпанию пула соединений и отказу в обслуживании легитимных пользователей.
Амплификационные атаки (DNS, NTP, SSDP)
Эти атаки используют протоколы, которые могут генерировать ответы, значительно превышающие по размеру запрос. Атакующий отправляет запрос с поддельным IP-адресом жертвы на открытый рекурсивный DNS-сервер, NTP-сервер (Network Time Protocol) или SSDP-сервер (Simple Service Discovery Protocol). Сервер отправляет ответ, во много раз превышающий размер запроса, на IP-адрес жертвы. Таким образом, атакующий с минимальными затратами может вызвать огромный поток трафика на цель.
Методы защиты от пакетных атак
Защита от пакетных атак требует комплексного подхода, включающего как сетевые, так и программные меры.
- Фильтрация трафика: Использование межсетевых экранов (firewalls) и систем обнаружения вторжений (IDS/IPS) для блокировки подозрительного трафика.
- Ограничение скорости (Rate Limiting): Настройка ограничений на количество запросов с одного IP-адреса или на определённый порт за единицу времени.
- Использование CDN (Content Delivery Network): Распределение контента через сеть серверов, расположенных в разных точках мира. CDN может поглощать значительную часть DDoS-трафика, не допуская его до основного сервера.
- Специализированные анти-DDoS-сервисы: Облачные сервисы (например, Cloudflare, Qrator Labs, Akamai), которые анализируют трафик, фильтруют вредоносные пакеты и пропускают только легитимные запросы.
- Настройка сетевого оборудования: Отключение ненужных сервисов (например, ICMP-ответов), настройка SYN-куки (SYN cookies) для защиты от SYN-flood, настройка ACL (Access Control Lists).
- Мониторинг и анализ: Постоянный мониторинг сетевого трафика для выявления аномалий и своевременного реагирования на атаки.
Примеры известных пакетных атак
- Атака на Dyn (2016 год): Крупная DDoS-атака с использованием ботнета Mirai, состоящего из заражённых IoT-устройств (камеры, роутеры). Атака привела к недоступности многих крупных сайтов, включая Twitter, Netflix, Reddit и Spotify, на несколько часов.
- Атака на GitHub (2018 год): Одна из крупнейших на тот момент DDoS-атак, достигшая пиковой мощности 1,35 Тбит/с. Атака была амплификационной, с использованием протокола Memcached. GitHub отразил атаку с помощью своего CDN-провайдера Akamai.
- Атака на «Сбербанк» (2020 год): Серия мощных DDoS-атак на сервисы «Сбербанка» (организация, признанная системообразующей в РФ). Атаки достигали мощности 500 Гбит/с и были отражены с использованием собственных систем защиты банка и провайдеров.
Источники
- Сетевые атаки. Принципы, методы, средства защиты. — Крис Касперски.
- DDoS-атаки: методы обнаружения и защиты. — А. В. Лукацкий.
- Отчёты компаний по кибербезопасности (Cloudflare, Akamai, Qrator Labs) за 2016–2023 годы.
- RFC 4732 — Internet Denial-of-Service Considerations.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →