Защита против дистанционного прекращения сервисов


Итак, лучшая защита против многих dDoS-атак состоит в применении патчей в быстрой, но методичной манере. Это особенно верно для dDoS-атак «битыми» пакетами, которые опираются на неряшливо написанные стек TCP/IP и сервисы. Производители часто выпускают патчи к стекам TCP/IP для исправления недочетов.

Кроме того, некоторые из этих атак, такие как Land, полагаются на спуфинг IP-адреса. «Противообманные» фильтры быстро и легко остановят подобные нападения.

К тому же, для защиты от атаки спуфингом ARP допустимо создать статические таблицы ARP в наиболее важных сетях, чтобы быть уверенным, что никто не сможет изменять отображение адресов IP в MAC в ваших ЛВС. Хотя описанный прием затруднит управление сетями, использовать статические таблицы ARP на чувствительных сетях типа DMZ Internet - очень хорошая идея.


Дистанционное истощение ресурсов



Популярнейший прием во всех известных на сегодня dDoS-атаках состоит в дистанционном связывании всех ресурсов мишени, в частности пропускной способности коммуникационных линий. При этом типе атаки хакер старается поглотить всю имеющуюся пропускную способность сети, используя пакетное наводнение. Мы исследуем несколько наиболее популярных приемов проведения пакетного наводнения, включая SYN-наводнения, атаки посредством Smurf и распределенные dDoS-атаки.


SYN-наводнение



Все соединения TCP начинаются с трехэтапного квитирования, когда пакет с набором битов SYN-кода отправляется от клиента в открытый порт сервера. Когда машина адресата получает SYN-пакет, она запоминает начальный порядковый номер источника и генерирует SYN-ACK-ответ.

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

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

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

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

Чтобы заполнить очередь соединений, многие инструментальные средства SYN-наводнения посылают SYN-пакеты, которые применяют обманные исходные адреса, безразличные в Internet. Атакующий выберет некоторый набор ІР-адресов, помеченный как XI, Х2 и ХЗ и не используемый в настоящее время ни одной машиной из связанных непосредственно с Internet.

Такие адреса играют роль обманного источника, потому что SYN-ACK-отклики мишени останутся без ответа. Если инструмент SYN-наводнения обманывает при помощи активного адреса источника, присвоенного в Internet реальной машине, то каждый SYN, посланный атакующим, вызовет отклик SYN- АСК, отправленный машине, чей исходный адрес был подменен. Эта машина получит SYN-ACK-пакет от адресата и пошлет RESET, потому что никакого соединения не открывалось. Пакет RESET сорвет соединение на компьютере-мишени, освобождая ресурсы очереди соединений, которые атакующий пытается израсходовать.

Другой метод, которым наводнения могут истощить ресурсы компьютера, выходит за пределы очереди соединений. Если очередь огромна и может обработать очень большое количество (сотни тысяч или миллионы) просроченных 8ТХ-пакетов, 8ТХ-наводнение просто переполнит линию связи, вытесняя весь законный трафик. Чтобы добиться такой ситуации, у атакующего должна быть большая полная пропускная способность, чем у машина жертвы, и возможность генерировать пакеты для заполнения этой пропускной способности.

Например, если адресат имеет соединение XI, которое работает на 1,544 Мбит/с, то атакующий должен потребить по крайней мере 1,544 Мбит/с (и немного еще - для гарантии), чтобы заполнить всю линию трафиком. В конечном счете, атакующего действительно не заботит, почему наводнение удалось: потому что истощена очередь соединений или потому что превышена пропускная способность линии связи. Пока сервер сети недоступен, атакующий празднует победу.


З
ащита против SYN-наводнений



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

Если происходит атака наводнением, нужно быстро переадресовать особо важный трафик по другому маршруту - именно поэтому необходимы избыточные линии связи. В случае особенно чувствительных систем, которые должны быть постоянно доступны в Internet, следует подумать о двух (или более) разных Internet-провайдерах для обеспечения надежной связи.

Различные поставщики операционных систем предлагают множество методов обработки SYN-наводнений. Некоторые увеличивают размер очереди соединений, в то время как другие сокращают время ожидания системы при полуоткрытом соединении. Список различных способов и исправлений, обеспечивающих эти методы защиты, можно найти на сайте Nationwide точка net.

Прием защиты от SYN-наводнений, реализованный в Linux, состоит в использовании SYN-cookie, которые сосредоточиваются на устранении очереди соединений как узкого места при наводнении SYN-пакетами. SYN-cookie изменяют поведение стека TCP/IP, чтобы устранить потребность в очереди соединений для запоминания всех полуоткрытых соединений. Хотя они изменяют метод, посредством которого машина присваивает порядковые номера, однако не нарушают стандартов TCP/IP, требуя лишь модификации стека TCP/IP адресата. SYN-cookie тщательно выстраивают порядковые номера, включенные в SYN-ACK-naкет, который пришел от машины-цели.

В таком случае при получении машиной пакета к нему применяется функция, основанная на IP-адресах источника и адресата, номерах портов, времени и секретном номере, для вычисления значения, называемого SYN-cookie. Секретный номер - это целочисленное значение, которое хранится на сервере и не известно атакующему.

Вычисленная SYN-cookie грузится в начальный порядковый номер (18МВ) отклика и передается через сеть. Машина не запоминает начальный порядковый номер системы-источника или даже имеющегося значения SYN-cookie. Место в очереди соединений данной машины не выделяется. В сущности, компьютер адресата сохраняет представление соединения в поле порядкового номера ответа, посланного источнику, зная, что эта информация будет возвращена в последующем пакете, если соединение законное. Машина адресата использует свой ответный пакет, посланный машине-источнику, чтобы запомнить информацию, связанную с указанным порядковым номером. Если пакет был частью наводнения, то никакого ответа не будет, но это хорошо: система не связана какой-либо структурой, запомнившей поддельное соединение.

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

Кроме SYN-cookie для особо важных Internet-систем могут понадобиться активные инструменты формирования трафика. Эти инструментальные средства, которые доступны в виде пакетов добавочных функций (за дополнительную цену) для некоторых брандмауэров и балансировщиков нагрузки, устанавливаются на пути, соединяющем чувствительный главный компьютер и Internet, например перед вашей DMZ.

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

Еще советуем:
  • Smurf-атаки и защита от них
  • Защита против локального истощения ресурсов
  • Защита против прекращения локальных сервисов
  • Защита от DDOS атак
  • Спуфинг