Расширенный

Расширенный поиск

Автор

Статьи

Атаки DoS и DDoS

03.03.2015 15:34:35
Развитие информационных технологий и рост популярности Интернета привели к тому, что компьютеры стали важной частью жизни людей. Мы используем их для работы, поиска нужной информации в абсолютно разных областях, взаимодействия с людьми, находящимися в разных точках и многого другого, поэтому зачастую невозможность воспользоваться компьютером в нужный момент иногда приводит к критическим последствиям.

Komix01-0001 (2).jpg Komix01-0002 (2).jpg Komix01-0003.jpgKomix01-0004.jpg

Komix01-0005.jpg Komix01-0006.jpg Komix01-0007.jpg Komix01-0008.jpg

Содержание статьи:

Сегодня компьютеры все чаще становятся жертвами атак. Нападениям подвергаются не только корпоративные устройства и локальные сети крупных компаний, но и компьютеры рядовых пользователей. Атаки могут проводиться как с целью похищения персональных данных, особенно финансовых, так и из простого любопытства и развлечения, например, начинающими хакерами. Также распространенными причинами атак является личная неприязнь к владельцам ресурсов и конкурентная борьба. В последнем случае, они проводятся по заказу и за определенную плату. Способов и видов атак очень много, и с каждым годом они становятся все сложнее и хитроумнее.

Компьютерная атака – это воздействие на систему или получение несанкционированного доступа к ней с использованием программных или программно-аппаратных средств

Ярким примером атак, не ставящих целью похищение данных, являются DoS-атаки. Они приводят к прерыванию обслуживания легитимных пользователей, делают недоступными определенные сервисы или всю систему, что весьма неприятно. Хотя при этом сохраняется конфиденциальность данных, воспользоваться ими становится совершенно невозможно, атаки такого рода мешают полноценной работе с компьютерными ресурсами.

Суть DoS-атаки заключается в том, что злоумышленник пытается сделать временно недоступным конкретный сервер, перегрузить сеть, процессор или переполнить диск. Цель атаки – вывести компьютер из строя, захватить все ресурсы компьютера-жертвы, чтобы другие пользователи не имели к ним доступа. К ресурсам относятся, например, память, процессорное время, дисковое пространство, сетевые ресурсы и т. д.Текст термина

DoS-атака (отказ в обслуживании) – это атака, приводящая к парализации работы сервера или персонального компьютера вследствие огромного количества запросов, с высокой скоростью поступающих на атакуемый ресурс

Dos.png

Основные способы реализации DoS-атак

Существуют два основных способа реализации DoS-атак.

Первый, логический, заключается в использовании уязвимостей в программном обеспечении, установленном на атакуемом компьютере. Уязвимость позволяет вызвать определенную критическую ошибку, которая приводит к нарушению работоспособности системы. Эти атаки направлены на слабые места операционных систем, программного обеспечения, процессоров и программируемых микросхем.

Второй способ заключается в отсылке большого количества пакетов информации на атакуемый компьютер, что вызывает перегрузку сети. Атаки, производимые путем отсылки большого количества пакетов, могут быть выделены в два основных вида.

Атаки, направленные на блокирование каналов связи и маршрутизаторов. Суть атаки заключается в отправлении на атакуемый компьютер огромного потока флуда, то есть запросов неправильного формата или бессмысленных по сути. Флуд полностью забивает всю ширину канала данных или входной маршрутизатор. Поскольку объем данных превышает объем ресурсов для их обработки, становится невозможным получение корректных пакетов данных от других пользователей. В результате, система отказывает им в обслуживании.

Атаки, направленные на переполнение ресурсов операционной системы или приложений. Атаки данного типа нацелены не на канал связи, а на саму систему. Каждая система имеет множество ограничений по разным параметрам (процессорное время, дисковое пространство, память и др.), и смысл атаки заключается в том, чтобы заставить систему эти ограничения нарушить. Для этого на компьютер жертвы посылается огромное количество запросов. В результате перерасхода вычислительных мощностей на сервере система отказывает в обслуживании запросов легитимных пользователей.

Основные типы DoS-атак

Существует несколько типов атак «отказ в обслуживании», основывающихся на особенностях стека протоколов TCP/IP. Перечислим наиболее известные.

Атака Ping-of-Death использует такую уязвимость протокола TCP/IP как фрагментация пакетов данных. В процессе передачи по сети пакеты данных разделяются на фрагменты, которые собираются в единое целое уже по прибытии на компьютер-адресат. Атака происходит следующим образом: на компьютер жертвы посылается сильно фрагментированный ICMP-пакет, размер которого превышает допустимый в протоколе (более 64KB). Когда атакуемое устройство получает фрагменты и пытается восстановить пакет, операционная система полностью повисает, перестает также работать мышь и клавиатура. Атакам такого типа могут подвергнуться операционные системы семейства Windows, Mac и некоторые веpсии Unix.

Атака SYN-flooding («Смертельное рукопожатие») использует такую особенность протокола TCP/IP как механизм «тройного рукопожатия». Чтобы передать данные, клиент посылает пакет с установленным флагом SYN (synchronize). В ответ на него сервер должен ответить комбинацией флагов SYN+ACK (acknowledges). Затем клиент должен ответить пакетом с флагом ACK, после чего соединение считается установленным.

Суть данной атаки заключается в создании большого количества не до конца установленных TCP-соединений. Посылая жертве огромное число пакетов TCP SYN, злоумышленник вынуждает ее открыть соответствующее число TCP-соединений и реагировать на них, а сам затем не завершает процесс установки соединения. Он либо не высылает ответный пакет с флагом ACK, либо подделывает заголовок пакета таким образом, что ответный ACK отправляется на несуществующий адрес. Тем самым, требования механизма «тройного рукопожатия» не выполняются. Подключения продолжают ждать своей очереди, оставаясь в полуоткрытом состоянии. Атакуемый сервер при этом выделяет ресурсы для каждого полученного SYN-пакета, которые вскоре исчерпываются. По истечении определенного промежутка времени полуоткрытые подключения отбрасываются. Злоумышленник старается поддерживать очередь заполненной, чтобы не допустить новых подключений легитимных клиентов. В результате, установка связи либо происходит с большими задержками, либо не происходит вообще.

Атака Land также использует ту особенность протокола TCP/IP, что на запрос соединения нужно обязательно ответить. Суть данной атаки заключается в том, что компьютер-жертва в результате действий злоумышленников пытается установить соединение сам с собой, что приводит к перегрузке процессора и вызывает «зависание» или аварийное завершение системы.

Пакетная фрагментация. Данный тип атак использует упоминавшийся выше механизм передачи данных по протоколу TCP/IP, в соответствии с которым пакеты данных разбиваются на фрагменты. Фрагментация используется при необходимости передачи IP-дейтаграммы, то есть блока информации, передаваемого с помощью протокола IP, через сеть, в которой максимально допустимая единица передачи данных меньше размера этой дейтаграммы. Атаки данного типа вызывают отказ в обслуживании, используя уязвимости некоторых стеков TCP/IP, связанных со сборкой IP-фрагментов.

Примером может служить атака  TearDrop, в результате которой во время передачи фрагментов происходит их смещение, что при сборке пакета вызывает их перекрытие. Попытка атакуемого компьютера восстановить правильную последовательность фрагментов вызывает аварийное завершение системы.

Атака DNS flooding заключается в передаче огромного количества DNS-запросов. Это приводит к перегрузке сервера DNS и делает невозможным обращение к нему других пользователей.

Если атака типа «Отказ в обслуживании» проводится одновременно сразу с большого числа компьютеров, то в этом случае говорят о DDoS-атаке.

DDoS-атака (распределенный отказ в обслуживании) – это разновидность DoS-атаки, которая организуется при помощи очень большого числа компьютеров, благодаря чему атаке могут быть подвержены сервера даже с очень большой пропускной способностью Интернет-каналов.

Для организации DDoS-атак злоумышленники используют ботнет – специальную сеть компьютеров, зараженных особым видом вирусов. Каждым таким компьютером злоумышленник может управлять удаленно, без ведома владельца. При помощи вируса или программы, искусно маскирующейся под легальную, на компьютер-жертву устанавливается вредоносный программный код, который не распознается антивирусом и работает в фоновом режиме. В нужный момент по команде владельца ботнета такая программа активизируется и начинает отправлять запросы на атакуемый сервер, в результате чего заполняется канал связи между сервисом, на который проводится атака, и Интернет-провайдером и сервер перестает работать.

Распределенную атаку можно провести с помощью не только ботнета, но и механизма отражения. Такие атаки называются DrDOS-атаки (атаки непрямого воздействия, Distributed Reflection DoS). Они осуществляются не напрямую, а через посредников. Чаще всего DrDoS-атаки происходят следующим образом: TCP-пакет отправляется не на атакуемый компьютер, а на любой сервер в Интернете, но в качестве обратного адреса указывается именно адрес компьютера-жертвы. Поскольку любой сервер на пакет TCP c SYN-флагом обязательно отвечает пакетом TCP c флагами SYN+ACK, произвольно выбранный компьютер, не подозревая об этом, отвечает на ложные запросы и автоматически забрасывает потоками пакетов компьютер-жертву.

Как защититься от атак «Отказ в обслуживании»?

Существует ряд способов, которые могут помочь предотвратить атаки подобного типа. В их числе:

Фильтрация IP-пакетов
При использовании этого метода входящий трафик фильтруется в соответствии с теми или иными правилами, заданными при установке фильтров. Современные маршрутизаторы, то есть устройства, обеспечивающие передачу данных между разными сетями, имеют встроенный фильтр пакетов. Он позволяет определить, какой трафик должен быть разрешен на основании списков доступа, то есть позволяет проанализировать пакеты, убедиться в их безопасности, а только потом передать их во внутреннюю сеть.
Ограничение скорости передачи на маршрутизаторах
Через маршрутизатор осуществляется связь внутренней сети с внешней. Рекомендуется ограничить частоту ICMP-сообщений средствами маршрутизатора, поскольку это позволит в случае атаки ограничить количество передаваемых бессмысленных пакетов данных.
Устранение уязвимостей и регулярное обновление системного и программного обеспечения
Необходимо постоянно следить за устранением уязвимостей в используемом программном обеспечении. Производители регулярно выпускают новые версии, в которых, как правило, исправляются старые уязвимости. Удобнее всего установить режим автоматического обновления, который позволит проводить все работы в фоновом режиме. Скачивать программы настоятельно рекомендуется только с сайтов производителей.
Ответные меры
Под ответными мерами подразумеваются как правовые, то есть вычисление данных о злоумышленнике, проводящем DoS-атаку, и подачу заявления в соответствующие инстанции, так и технологические, то есть ответная атака методом переотправки пакетов. Суть метода заключается в том, что сервер не пытается обработать полученные запросы, а отправляет их обратно, что приводит к забиванию атакующего компьютера.
Дублирование данных и систем
Рекомендуется создавать копии важной информации на разных серверах, чтобы в случае атаки можно было обратиться за ней к другому ресурсу, а также дублировать системы, чтобы обслуживание пользователей не прекратилось даже в случае недоступности из-за атаки некоторых элементов.
Наращивание ресурсов
Рекомендуется постоянно улучшать программно-аппаратные компоненты, например, увеличивать память, мощность серверов, пропускную способность каналов, чтобы сделать устройство более устойчивым к DoS-атакам.
Уменьшение периода ожидания установки соединения
Это позволит предотвратить такие атаки как SYN flooding.
Увеличение размера очереди на установку соединений
Эта мера может помочь в предотвращении атак типа SYN flooding и DNS flooding.
Установка системы обнаружения вторжений
Установка системы обнаружения вторжений (IDS – Intrusion Detection System), предназначенной для выявления фактов неавторизованного доступа в компьютерную систему либо несанкционированного управления ими, в основном, через Интернет.