SlideShare a Scribd company logo
1 of 38
Download to read offline
Тандемные DDoS-атаки
    Артём Гавриченков
   <ag@highloadlab.com>
Проблема марсохода
Создавая Web-приложение,
90% разработчиков* программируют марсоход.


Как это происходит?


* – по данным сайта http://lurkmore.ru
Устройство Интернета
                Прикладной уровень
HTTP, HTTPS, FTP, ...
                Транспортный уровень
TCP, UDP, ...
                  Сетевой уровень
IP, ...
                 Канальный уровень
Ethernet, ...
Протокол TCP
   Придуман DARPA
   Используется для всего
       От задач Минобороны и NASA
       До гражданских приложений
   TCP – основа протокола HTTP
Протокол TCP
   Задачи:
     Целостность данных


       Устранение дубликатов


       Порядок


       Гарантия доставки


     Борьба с перегрузкой сети
Накладные расходы!
Протокол TCP
   TCP – это соединение
   Автомат TCP-соединения
Пример 1: установление соединения

«Без TCP»           TCP

     send();
     recv();
Проблема!
Много SYN-запросов
=> много занятых ресурсов
=> ресурсы заканчиваются

Такая атака называется SYN Flood
Решение
   SYN Cookies, SYN Cache, TCPMaxHalfOpen
       http://www.symantec.com/connect/articles/hardening-tcpip-stack-syn-
        attacks
       http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_9-
        4/syn_flooding_attacks.html
       http://people.redhat.com/sgrubb/files/hardening-rhel5.pdf
       http://support.microsoft.com/kb/324270
Пример 2: закрытие соединения

«Без TCP»           TCP

     nop;
Проблема!
После получения ACK атакующий
может не высылать FIN
=> соединение не закрывается
=> ресурсы не освобождаются

Так называемая «FIN-WAIT-2 атака»
Sockstress


 2008 г.
 Стресс-тестирование сетевого

  приложения
 Обнаружили FIN-WAIT-2 атаку
Решение
   Stateful firewall
       Помним уже установленные соединения
       Ограничиваем количество новых
   Ссылки:
       http://www.microsoft.com/technet/security/Bulletin/MS09-048.mspx
       http://kbase.redhat.com/faq/docs/DOC-18730
       http://www.cisco.com/warp/public/707/cisco-sa-20090908-tcp24.shtml
Следите за руками.
Атакуем!
1. SYN Flood на машину
    Устанавливаем много соединений
    Переполняем stateful firewall
Атакуем!
1. SYN Flood на машину
    Устанавливаем много соединений
    Переполняем stateful firewall
2. Когда отслеживание соединений
   отключается – FIN-WAIT-2
Атакуем!
1. SYN Flood на машину
    Устанавливаем много соединений
    Переполняем stateful firewall
2. Когда отслеживание соединений
   отключается – FIN-WAIT-2
3. PROFIT!
Как же так?



   Как они могут ошибаться?
Как же так?



   Как они могут ошибаться?
   А они и не ошибаются.
Протокол TCP
   Придуман DARPA
   Используется для всего
       От задач Минобороны и NASA
       До гражданских приложений
   TCP – основа протокола HTTP
Протокол TCP
   Придуман DARPA
   Используется для всего
       От задач Минобороны и NASA
       До гражданских приложений
   TCP – основа протокола HTTP
TCP – швейцарский нож

   Делать можно всё
   Но не одновременно
Параметры TCP
   У автомата TCP есть мно-о-о-го
    параметров
       Не путать с TCP options!
       Таймауты
       Размеры временных окон
       Фрагментация
       ...
Параметры TCP
 Вендоры используют стандартные
  значения параметров TCP
 Стандартные значения одинаково [не]

  работают для всех приложений
Один TCP – на всех
                                                             VPN
        Web-сервер
                                          Телеметрия

                           MMS-гейт
                                                      Комплекс ПВО
    BitTorrent
                                                  



             Электронное голосование
                                                 Марсоход
         
                                             
Но у нас не марсоход!
1. ОС с параллельными SYN Cookies
2. Параметры автомата TCP
  Linux: net.ipv4.tcp_fin_timeout=5
  Windows: HKLMSystemCurrentControlSet
           ServicesTcpipParameters
           TcpFinWait2Delay [?]
Now it works!
 «Кончил, не кончил – 3 минуты!»
   – М. С. Горбачев
 Отключаем connection tracking


 Боремся с SYN Flood, как привыкли
Счастье!
...ага, щас.
Sockstress


 2009 г.
 Фундаментальная уязвимость

  в автомате TCP
Sockstress
 Тёмная лошадка
 Можем делать предположения


   Имитация SYN Cookies в ботнете


   Атака на механизмы борьбы с

    перегрузкой сети
Выводы?
 Протокол TCP был создан в 1970-х годах
 Автомат TCP-соединения описан

  недостаточно подробно
 Исследуя автомат TCP, можно находить

  актуальные уязвимости
Прогноз
 Анализ автомата TCP-соединения даст
  информацию о новых атаках
 Чтобы быть готовым к будущему,

  необходимо проводить такой анализ
Сейчас?
 Outpost24 тестирует протокол TCP
   Это даёт результаты


 Highload Lab занимается моделированием

  автомата TCP-соединения по
  спецификации
   Сложно, но перспективнее
Что же делать?
 Мы научились бороться с тандемной
  атакой. Уже хорошо
 Ждём новостей о новых проблемах
Встретимся через год
Спасибо за внимание!
Вопросы?

More Related Content

What's hot

Linkmeup #73
Linkmeup #73Linkmeup #73
Linkmeup #73eucariot
 
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикад
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикадSpblug. Борьба с DDoS в хостинге - по обе стороны баррикад
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикадKonstantin Novakovksy
 
QoS и приоритезация трафика внутри VPN-туннелей
QoS и приоритезация трафика внутри VPN-туннелейQoS и приоритезация трафика внутри VPN-туннелей
QoS и приоритезация трафика внутри VPN-туннелейmikrotik-training
 
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)Vadim Ponomarev
 
Networks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionNetworks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionVadim Ponomarev
 
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotik
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в MikrotikФильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotik
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotikmikrotik-training
 
Тестирование Сетевой Безопасности
Тестирование Сетевой БезопасностиТестирование Сетевой Безопасности
Тестирование Сетевой БезопасностиSQALab
 
Антон Карпов - Обзорная лекция по безопасности
Антон Карпов - Обзорная лекция по безопасностиАнтон Карпов - Обзорная лекция по безопасности
Антон Карпов - Обзорная лекция по безопасностиYandex
 
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...Levon Avakyan
 
iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidiumMobile365
 
SDN и защищенные квантовые коммуникации
SDN и защищенные квантовые коммуникацииSDN и защищенные квантовые коммуникации
SDN и защищенные квантовые коммуникацииARCCN
 
3G/4G модемы и Mikrotik: подключаем беспроводной Интернет
3G/4G модемы и Mikrotik: подключаем беспроводной Интернет3G/4G модемы и Mikrotik: подключаем беспроводной Интернет
3G/4G модемы и Mikrotik: подключаем беспроводной Интернетmikrotik-training
 
ногинов Aoe Stripped
ногинов Aoe Strippedногинов Aoe Stripped
ногинов Aoe StrippedLiudmila Li
 

What's hot (15)

Linkmeup #73
Linkmeup #73Linkmeup #73
Linkmeup #73
 
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикад
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикадSpblug. Борьба с DDoS в хостинге - по обе стороны баррикад
Spblug. Борьба с DDoS в хостинге - по обе стороны баррикад
 
QoS и приоритезация трафика внутри VPN-туннелей
QoS и приоритезация трафика внутри VPN-туннелейQoS и приоритезация трафика внутри VPN-туннелей
QoS и приоритезация трафика внутри VPN-туннелей
 
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)
Networking technology in modern Virtual Private Clouds (RUS, RootConf++ 2018)
 
Networks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solutionNetworks in the cloud on OpenStask: problems we face and their solution
Networks in the cloud on OpenStask: problems we face and their solution
 
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotik
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в MikrotikФильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotik
Фильтрация соцсетей и лишнего трафика: использование L7 возможностей в Mikrotik
 
Тестирование Сетевой Безопасности
Тестирование Сетевой БезопасностиТестирование Сетевой Безопасности
Тестирование Сетевой Безопасности
 
Антон Карпов - Обзорная лекция по безопасности
Антон Карпов - Обзорная лекция по безопасностиАнтон Карпов - Обзорная лекция по безопасности
Антон Карпов - Обзорная лекция по безопасности
 
Lyamin hl2014
Lyamin hl2014Lyamin hl2014
Lyamin hl2014
 
linux and freebsd monitoring
linux and freebsd monitoringlinux and freebsd monitoring
linux and freebsd monitoring
 
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...
 
iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché iRidium для AV & Custom Systems и Global Caché
iRidium для AV & Custom Systems и Global Caché
 
SDN и защищенные квантовые коммуникации
SDN и защищенные квантовые коммуникацииSDN и защищенные квантовые коммуникации
SDN и защищенные квантовые коммуникации
 
3G/4G модемы и Mikrotik: подключаем беспроводной Интернет
3G/4G модемы и Mikrotik: подключаем беспроводной Интернет3G/4G модемы и Mikrotik: подключаем беспроводной Интернет
3G/4G модемы и Mikrotik: подключаем беспроводной Интернет
 
ногинов Aoe Stripped
ногинов Aoe Strippedногинов Aoe Stripped
ногинов Aoe Stripped
 

Similar to Тандемные DDoS-атаки / Проблематика уязвимостей в спецификации TCP/IP (фундаментальные уязвимости)

Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)
Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)
Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)Ontico
 
Истории из жизни. Как взламывают сети крупных организаций.
Истории из жизни. Как взламывают сети крупных организаций.Истории из жизни. Как взламывают сети крупных организаций.
Истории из жизни. Как взламывают сети крупных организаций.Dmitry Evteev
 
Защита корпорации на платформе Palo Alto Networks
Защита корпорации на платформе Palo Alto Networks Защита корпорации на платформе Palo Alto Networks
Защита корпорации на платформе Palo Alto Networks Denis Batrankov, CISSP
 
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязи
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязиОсновные уязвимости и методы защиты оборудования и ПО видеоконференцсвязи
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязиCisco Russia
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализацияYandex
 
Eugene Lisitsky Web Sockets
Eugene Lisitsky Web SocketsEugene Lisitsky Web Sockets
Eugene Lisitsky Web Socketsguest092df8
 
Как взломать телеком и остаться в живых
Как взломать телеком и остаться в живыхКак взломать телеком и остаться в живых
Как взломать телеком и остаться в живыхqqlan
 
Get inside stage2 new
Get inside stage2 newGet inside stage2 new
Get inside stage2 newInfoTeCS
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейEugene Aseev
 
Технология Cisco Instant Access для упрощения структуры кампусных сетей.
Технология Cisco Instant Access для упрощения структуры кампусных сетей. Технология Cisco Instant Access для упрощения структуры кампусных сетей.
Технология Cisco Instant Access для упрощения структуры кампусных сетей. Cisco Russia
 
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Media Gorod
 
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераАвтономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераCisco Russia
 
Защита и контроль приложений
Защита и контроль приложенийЗащита и контроль приложений
Защита и контроль приложенийCisco Russia
 

Similar to Тандемные DDoS-атаки / Проблематика уязвимостей в спецификации TCP/IP (фундаментальные уязвимости) (20)

Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)
Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)
Оптимизации поисковой выдачи Яндекса / Иван Хватов, Сергей Ляджин (Яндекс)
 
Истории из жизни. Как взламывают сети крупных организаций.
Истории из жизни. Как взламывают сети крупных организаций.Истории из жизни. Как взламывают сети крупных организаций.
Истории из жизни. Как взламывают сети крупных организаций.
 
IBM Proventia IPS
IBM Proventia IPSIBM Proventia IPS
IBM Proventia IPS
 
Защита корпорации на платформе Palo Alto Networks
Защита корпорации на платформе Palo Alto Networks Защита корпорации на платформе Palo Alto Networks
Защита корпорации на платформе Palo Alto Networks
 
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязи
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязиОсновные уязвимости и методы защиты оборудования и ПО видеоконференцсвязи
Основные уязвимости и методы защиты оборудования и ПО видеоконференцсвязи
 
Анализ трафика
Анализ трафикаАнализ трафика
Анализ трафика
 
Antonenko LinkMeUp SDN
Antonenko LinkMeUp SDNAntonenko LinkMeUp SDN
Antonenko LinkMeUp SDN
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализация
 
Eugene Lisitsky Web Sockets
Eugene Lisitsky Web SocketsEugene Lisitsky Web Sockets
Eugene Lisitsky Web Sockets
 
Как взломать телеком и остаться в живых
Как взломать телеком и остаться в живыхКак взломать телеком и остаться в живых
Как взломать телеком и остаться в живых
 
Get inside stage2 new
Get inside stage2 newGet inside stage2 new
Get inside stage2 new
 
Net2
Net2Net2
Net2
 
pyFMS
pyFMSpyFMS
pyFMS
 
pyFMS
pyFMSpyFMS
pyFMS
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн Сетей
 
Технология Cisco Instant Access для упрощения структуры кампусных сетей.
Технология Cisco Instant Access для упрощения структуры кампусных сетей. Технология Cisco Instant Access для упрощения структуры кампусных сетей.
Технология Cisco Instant Access для упрощения структуры кампусных сетей.
 
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
Сервер Flash-вещаний (RTMP) на Python или создание высоконагруженных сетевых ...
 
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераАвтономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
 
Periculum est in mora
Periculum est in moraPericulum est in mora
Periculum est in mora
 
Защита и контроль приложений
Защита и контроль приложенийЗащита и контроль приложений
Защита и контроль приложений
 

More from HLL

Beyond the botnet
Beyond the botnetBeyond the botnet
Beyond the botnetHLL
 
Game of BGP
Game of BGPGame of BGP
Game of BGPHLL
 
Dumb Ways To Die: How Not To Write TCP-based Network Applications
Dumb Ways To Die: How Not To Write TCP-based Network ApplicationsDumb Ways To Die: How Not To Write TCP-based Network Applications
Dumb Ways To Die: How Not To Write TCP-based Network ApplicationsHLL
 
DDoS Attacks, Russia, 2011- 2012: Patterns and Trends
DDoS Attacks, Russia, 2011- 2012: Patterns and TrendsDDoS Attacks, Russia, 2011- 2012: Patterns and Trends
DDoS Attacks, Russia, 2011- 2012: Patterns and TrendsHLL
 
BGP Route Stability
BGP Route StabilityBGP Route Stability
BGP Route StabilityHLL
 
DDoS: Practical Survival Guide
DDoS: Practical Survival GuideDDoS: Practical Survival Guide
DDoS: Practical Survival GuideHLL
 
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...Порядок преодоления болота на маршруте: как не надо писать приложения, основа...
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...HLL
 
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)HLL
 
Detecting Autonomous Systems Relationships
Detecting Autonomous Systems RelationshipsDetecting Autonomous Systems Relationships
Detecting Autonomous Systems RelationshipsHLL
 
DDoS-атаки в 2011 году: характер и тенденции
DDoS-атаки в 2011 году: характер и тенденцииDDoS-атаки в 2011 году: характер и тенденции
DDoS-атаки в 2011 году: характер и тенденцииHLL
 
Циклы маршрутизации на междоменном сетевом уровне
Циклы маршрутизации на междоменном сетевом уровнеЦиклы маршрутизации на междоменном сетевом уровне
Циклы маршрутизации на междоменном сетевом уровнеHLL
 
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...HLL
 
Russian Internet Core: политики маршрутизации
Russian Internet Core: политики маршрутизацииRussian Internet Core: политики маршрутизации
Russian Internet Core: политики маршрутизацииHLL
 
Классификация DDoS-атак
Классификация DDoS-атакКлассификация DDoS-атак
Классификация DDoS-атакHLL
 
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...HLL
 
Динамика DDoS-атак в России
Динамика DDoS-атак в РоссииДинамика DDoS-атак в России
Динамика DDoS-атак в РоссииHLL
 
DDoS: Практическое руководство к выживанию
DDoS: Практическое руководство к выживаниюDDoS: Практическое руководство к выживанию
DDoS: Практическое руководство к выживаниюHLL
 
Влияние сетевых аномалий на доступность ресурсов
Влияние сетевых аномалий на доступность ресурсовВлияние сетевых аномалий на доступность ресурсов
Влияние сетевых аномалий на доступность ресурсовHLL
 
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденции
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденцииDDoS-атаки Рунета в 2011-2012 гг.: характер и тенденции
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденцииHLL
 
Инструментарий Anonymous и его поражающие факторы
Инструментарий Anonymous и его поражающие факторыИнструментарий Anonymous и его поражающие факторы
Инструментарий Anonymous и его поражающие факторыHLL
 

More from HLL (20)

Beyond the botnet
Beyond the botnetBeyond the botnet
Beyond the botnet
 
Game of BGP
Game of BGPGame of BGP
Game of BGP
 
Dumb Ways To Die: How Not To Write TCP-based Network Applications
Dumb Ways To Die: How Not To Write TCP-based Network ApplicationsDumb Ways To Die: How Not To Write TCP-based Network Applications
Dumb Ways To Die: How Not To Write TCP-based Network Applications
 
DDoS Attacks, Russia, 2011- 2012: Patterns and Trends
DDoS Attacks, Russia, 2011- 2012: Patterns and TrendsDDoS Attacks, Russia, 2011- 2012: Patterns and Trends
DDoS Attacks, Russia, 2011- 2012: Patterns and Trends
 
BGP Route Stability
BGP Route StabilityBGP Route Stability
BGP Route Stability
 
DDoS: Practical Survival Guide
DDoS: Practical Survival GuideDDoS: Practical Survival Guide
DDoS: Practical Survival Guide
 
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...Порядок преодоления болота на маршруте: как не надо писать приложения, основа...
Порядок преодоления болота на маршруте: как не надо писать приложения, основа...
 
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
 
Detecting Autonomous Systems Relationships
Detecting Autonomous Systems RelationshipsDetecting Autonomous Systems Relationships
Detecting Autonomous Systems Relationships
 
DDoS-атаки в 2011 году: характер и тенденции
DDoS-атаки в 2011 году: характер и тенденцииDDoS-атаки в 2011 году: характер и тенденции
DDoS-атаки в 2011 году: характер и тенденции
 
Циклы маршрутизации на междоменном сетевом уровне
Циклы маршрутизации на междоменном сетевом уровнеЦиклы маршрутизации на междоменном сетевом уровне
Циклы маршрутизации на междоменном сетевом уровне
 
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...
Архитектура центра очистки трафика (ЦОТ): решения уровня оператора связи и ко...
 
Russian Internet Core: политики маршрутизации
Russian Internet Core: политики маршрутизацииRussian Internet Core: политики маршрутизации
Russian Internet Core: политики маршрутизации
 
Классификация DDoS-атак
Классификация DDoS-атакКлассификация DDoS-атак
Классификация DDoS-атак
 
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...
Некоторые аспекты влияния сходимости протокола BGP на доступность сетевых рес...
 
Динамика DDoS-атак в России
Динамика DDoS-атак в РоссииДинамика DDoS-атак в России
Динамика DDoS-атак в России
 
DDoS: Практическое руководство к выживанию
DDoS: Практическое руководство к выживаниюDDoS: Практическое руководство к выживанию
DDoS: Практическое руководство к выживанию
 
Влияние сетевых аномалий на доступность ресурсов
Влияние сетевых аномалий на доступность ресурсовВлияние сетевых аномалий на доступность ресурсов
Влияние сетевых аномалий на доступность ресурсов
 
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденции
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденцииDDoS-атаки Рунета в 2011-2012 гг.: характер и тенденции
DDoS-атаки Рунета в 2011-2012 гг.: характер и тенденции
 
Инструментарий Anonymous и его поражающие факторы
Инструментарий Anonymous и его поражающие факторыИнструментарий Anonymous и его поражающие факторы
Инструментарий Anonymous и его поражающие факторы
 

Тандемные DDoS-атаки / Проблематика уязвимостей в спецификации TCP/IP (фундаментальные уязвимости)

  • 1. Тандемные DDoS-атаки Артём Гавриченков <ag@highloadlab.com>
  • 2. Проблема марсохода Создавая Web-приложение, 90% разработчиков* программируют марсоход. Как это происходит? * – по данным сайта http://lurkmore.ru
  • 3. Устройство Интернета Прикладной уровень HTTP, HTTPS, FTP, ... Транспортный уровень TCP, UDP, ... Сетевой уровень IP, ... Канальный уровень Ethernet, ...
  • 4. Протокол TCP  Придуман DARPA  Используется для всего  От задач Минобороны и NASA  До гражданских приложений  TCP – основа протокола HTTP
  • 5. Протокол TCP  Задачи:  Целостность данных  Устранение дубликатов  Порядок  Гарантия доставки  Борьба с перегрузкой сети
  • 7. Протокол TCP  TCP – это соединение  Автомат TCP-соединения
  • 8. Пример 1: установление соединения «Без TCP» TCP send(); recv();
  • 9. Проблема! Много SYN-запросов => много занятых ресурсов => ресурсы заканчиваются Такая атака называется SYN Flood
  • 10. Решение  SYN Cookies, SYN Cache, TCPMaxHalfOpen  http://www.symantec.com/connect/articles/hardening-tcpip-stack-syn- attacks  http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_9- 4/syn_flooding_attacks.html  http://people.redhat.com/sgrubb/files/hardening-rhel5.pdf  http://support.microsoft.com/kb/324270
  • 11. Пример 2: закрытие соединения «Без TCP» TCP nop;
  • 12. Проблема! После получения ACK атакующий может не высылать FIN => соединение не закрывается => ресурсы не освобождаются Так называемая «FIN-WAIT-2 атака»
  • 13. Sockstress  2008 г.  Стресс-тестирование сетевого приложения  Обнаружили FIN-WAIT-2 атаку
  • 14. Решение  Stateful firewall  Помним уже установленные соединения  Ограничиваем количество новых  Ссылки:  http://www.microsoft.com/technet/security/Bulletin/MS09-048.mspx  http://kbase.redhat.com/faq/docs/DOC-18730  http://www.cisco.com/warp/public/707/cisco-sa-20090908-tcp24.shtml
  • 16. Атакуем! 1. SYN Flood на машину  Устанавливаем много соединений  Переполняем stateful firewall
  • 17. Атакуем! 1. SYN Flood на машину  Устанавливаем много соединений  Переполняем stateful firewall 2. Когда отслеживание соединений отключается – FIN-WAIT-2
  • 18. Атакуем! 1. SYN Flood на машину  Устанавливаем много соединений  Переполняем stateful firewall 2. Когда отслеживание соединений отключается – FIN-WAIT-2 3. PROFIT!
  • 19. Как же так?  Как они могут ошибаться?
  • 20. Как же так?  Как они могут ошибаться?  А они и не ошибаются.
  • 21. Протокол TCP  Придуман DARPA  Используется для всего  От задач Минобороны и NASA  До гражданских приложений  TCP – основа протокола HTTP
  • 22. Протокол TCP  Придуман DARPA  Используется для всего  От задач Минобороны и NASA  До гражданских приложений  TCP – основа протокола HTTP
  • 23. TCP – швейцарский нож  Делать можно всё  Но не одновременно
  • 24. Параметры TCP  У автомата TCP есть мно-о-о-го параметров  Не путать с TCP options!  Таймауты  Размеры временных окон  Фрагментация  ...
  • 25. Параметры TCP  Вендоры используют стандартные значения параметров TCP  Стандартные значения одинаково [не] работают для всех приложений
  • 26. Один TCP – на всех  VPN  Web-сервер  Телеметрия  MMS-гейт Комплекс ПВО BitTorrent   Электронное голосование Марсоход  
  • 27. Но у нас не марсоход! 1. ОС с параллельными SYN Cookies 2. Параметры автомата TCP Linux: net.ipv4.tcp_fin_timeout=5 Windows: HKLMSystemCurrentControlSet ServicesTcpipParameters TcpFinWait2Delay [?]
  • 28. Now it works!  «Кончил, не кончил – 3 минуты!» – М. С. Горбачев  Отключаем connection tracking  Боремся с SYN Flood, как привыкли
  • 31. Sockstress  2009 г.  Фундаментальная уязвимость в автомате TCP
  • 32. Sockstress  Тёмная лошадка  Можем делать предположения  Имитация SYN Cookies в ботнете  Атака на механизмы борьбы с перегрузкой сети
  • 33. Выводы?  Протокол TCP был создан в 1970-х годах  Автомат TCP-соединения описан недостаточно подробно  Исследуя автомат TCP, можно находить актуальные уязвимости
  • 34. Прогноз  Анализ автомата TCP-соединения даст информацию о новых атаках  Чтобы быть готовым к будущему, необходимо проводить такой анализ
  • 35. Сейчас?  Outpost24 тестирует протокол TCP  Это даёт результаты  Highload Lab занимается моделированием автомата TCP-соединения по спецификации  Сложно, но перспективнее
  • 36. Что же делать?  Мы научились бороться с тандемной атакой. Уже хорошо  Ждём новостей о новых проблемах