Современные DoS-атаки и защита от них с помощью...

Post on 15-Jun-2015

479 views 3 download

description

Доклад Александра Власова на HighLoad++ 2014.

Transcript of Современные DoS-атаки и защита от них с помощью...

Современные DoS-атаки и защита от них с помощью инфраструктурных решений

Александр Власов Александр Павлов

Intro •  DDoS это общая проблема и решать ее нужно разработчикам, сетевым

инженерам и сотрудникам ИБ.

•  Не нужно надеяться на одно решение.

•  Необходимо установить baseline нагрузки, состояния инфраструктуры, пользователей.

Демо-стенд

Классификация атак

•  Сетевые (3-4 уровень OSI) – истощение каналов связи и ресурсов сетевых устройств (SYN Flood, ICMP Flood, UDP Flood)

•  Протокольные – атаки на сетевые сервисы и протоколы верхнего уровня (DNS Flood, Amplification, SSL Renegotiation, SSL Exhaustion)

•  Атаки на приложения – истощение ресурсов конечного сервиса, в том числе за счет эксплуатации уязвимостей приложений (HTTP Get Flood, Slowloris, Slowpost, XML Bomb)

TCP SYN Flood

•  Firewall – не средство защиты, а цель атаки.

•  Отправка SYN-сегментов, вынуждение сервера отвечать SYN-ACK.

•  Небольшая атака – rate limit, репутационные базы, услуги ISP.

•  Серьезный ботнет – уводить трафик от вашей сети любыми средствами.

•  Не вступать в битву ресурсов – вы проиграете.

•  Out-of-band management – не теряется контроль за вашей инфраструктурой.

DNS DDoS •  DNS важнейший сервис для надежности приложения.

•  8-core перестают справляться при ~150k QPS

Защита от DNS DDoS

•  Ограничение список разрешенных пользователей, нагрузочное тестирование DNS.

•  Правильное проектирование – создание распределенной архитектуры DNS.

•  DNSSEC защитит от cache-poisoning, но усугубит DDoS атаку.

HTTP Get Flood •  Поток GET запросов – от простого index, до целенаправленной атаки

тяжелых линков.

•  Локальный метод защиты – проверка клиента с помощью cookie/CAPTCHA/flash challenge, rate limit обнаруженных ботов.

•  Если ботнет реализует cookie/JS– специализированные Anti-DDoS решения, облачные сервисы.

•  Headless browser очень сложно обнаружить типичными средствами ИТ.

Slowloris •  Поток HTTP Request которые не заканчиваются корректным полем 2*CRLF.

•  TCP-Delayed binding на балансере – позволяет достаточно надежно защитить сервисы.

•  Настройка тайм-аутов возможна в плагинах для веб-сервера, так и с помощью балансировщика.

SSL Exhaustion •  Атака на истощение вычислительных ресурсов.

•  Отправка псевдо - ClientKeyExchange без криптографии.

•  Временная защита – rate limit на балансировщике, сигнатурный анализ.

•  В качестве постоянного решения –

Client Puzzles http://tools.ietf.org/html/draft-nir-tls-puzzles-00

SSL Exhaustion - flow

XML Bomb (Quadratic) •  Атака на индивидуальную уязвимость XML-парсера.

•  Обращение к entity длиной в 70к символов 70к раз – истощение памяти.

•  Очень сложно предугадать появление нового вектора, уязвимости всплывают даже в самых массовых решениях (HB, Shellshock, POODLE).

•  WAF с поддержкой скриптов позволяет прикрыть уязвимость до развертывания заплаток.

•  DRUPAL - CVE-2014-3704 •  Automated attacks began compromising Drupal 7 websites that were not patched or updated to Drupal 7.32 within hours

of the announcement of SA-CORE-2014-005 - Drupal core - SQL injection. You should proceed under the assumption that every Drupal 7 website was compromised unless updated or patched before Oct 15th, 11pm UTC, that is 7 hours after the announcement.

Не нужно ждать патчей •  “While running the SQLI exploit on an ASM protected application the attacker

will be blocked by generic SQL injection signatures. Those signatures are part of the generic signature set that is assigned to any security policy by default.”

•  Даже в базовой конфигурации WAF решение позволило бы перекрыть вектор до его реализации.

Что делать ИТ-отделу. •  Нагрузочное тестирование не только для приложений, но и для

инфраструктуры – is a must.

•  Нет отдельной коробки для защиты от DDoS – есть устойчивая к DDoS архитектура.

•  Проактивный подход всегда лучше любых оперативных действий.

•  Соблюдать BCP не на словах, deny any any подход.

Спасибо за внимание!

Власов Александр – av@treatface.ru Павлов Александр – alp@treatface.ru