Your SlideShare is downloading. ×
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаментальные уязвимости), Артём Гавриченков
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

1,342
views

Published on

Published in: Technology, Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,342
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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
  • 6. Накладные расходы!
  • 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
  • 15. Следите за руками.
  • 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 – на всех  Web-сервер  Телеметрия  Марсоход  BitTorrent  MMS-гейт  VPN  Электронное голосование  Комплекс ПВО
  • 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, как привыкли
  • 29. Счастье!
  • 30. ...ага, щас.
  • 31. Sockstress  2009 г.  Фундаментальная уязвимость в автомате TCP
  • 32. Sockstress  Тёмная лошадка  Можем делать предположения  Имитация SYN Cookies в ботнете  Атака на механизмы борьбы с перегрузкой сети
  • 33. Выводы?  Протокол TCP был создан в 1970-х годах  Автомат TCP-соединения описан недостаточно подробно  Исследуя автомат TCP, можно находить актуальные уязвимости
  • 34. Прогноз  Анализ автомата TCP-соединения даст информацию о новых атаках  Чтобы быть готовым к будущему, необходимо проводить такой анализ
  • 35. Сейчас?  Outpost24 тестирует протокол TCP  Это даёт результаты  Highload Lab занимается моделированием автомата TCP-соединения по спецификации  Сложно, но перспективнее
  • 36. Что же делать?  Мы научились бороться с тандемной атакой. Уже хорошо  Ждём новостей о новых проблемах
  • 37. Встретимся через год
  • 38. Спасибо за внимание! Вопросы?

×