Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DDoS Attacks, 2016-2017

DDoS Attacks, 2016-2017

More Decks by Artyom "Töma" Gavrichenkov

Other Decks in Technology

Transcript

  1. The Red Queen's race • На открытом рынке выживает самый

    эффективный • Скорость разработки постоянно растёт
  2. The Red Queen's race • На открытом рынке выживает самый

    эффективный • Скорость разработки постоянно растёт • Страдает качество продукта • Страдает безопасность
  3. The Red Queen's race • Проблема имеет глобальный характер, на

    всех уровнях инфраструктуры Интернета • Хорошо направленная атака на инфраструктуру => косвенный урон всем связанным сервисам
  4. What happens when…? • https://github.com/alex/what-happens-when • DNS lookup • IPv4/IPv6

    selection • Opening of a socket • Deep packet inspection • TLS handshake • CRL/OCSP • HTTP protocol • Load balancer • HTTP Server Request Handle
  5. What happens when…? • https://github.com/alex/what-happens-when • DNS lookup • IPv4/IPv6

    selection • Opening of a socket • Deep packet inspection • TLS handshake • CRL/OCSP • HTTP protocol • Load balancer • HTTP Server Request Handle • CDN
  6. DNS lookup ximaera@nostromo:~$ sudo tcpdump -qni any tcp > /dev/null

    tcpdump: verbose output suppressed, use -v or -vv for full protoc listening on any, link-type LINUX_SLL (Linux cooked), capture siz ^C 792 packets captured 794 packets received by filter 0 packets dropped by kernel ximaera@nostromo:~$ sudo tcpdump -qni any port 53 > /dev/null tcpdump: verbose output suppressed, use -v or -vv for full protoc listening on any, link-type LINUX_SLL (Linux cooked), capture siz ^C 104 packets captured 156 packets received by filter 0 packets dropped by kernel ximaera@nostromo:~$
  7. TCP

  8. DNS

  9. DNS 10:00:34.510826 IP (proto UDP (17), length 56) 192.168.1.5.63097 >

    8.8.8.8.53: 9508+ A? ritfest.ru. (28) 10:00:34.588632 IP (proto UDP (17), length 72) 8.8.8.8.53 > 192.168.1.5.63097: 9508 1/0/0 ritfest.ru. A 62.152.56.18 (44)
  10. What happens when…? • https://github.com/alex/what-happens-when üDNS lookup • IPv4/IPv6 selection

    • Opening of a socket • Deep packet inspection • TLS handshake • CRL/OCSP • HTTP protocol • Load balancer • HTTP Server Request Handle • CDN
  11. IPv6 • 128-битовые адреса • Возможно адресовать каждый атом на

    поверхности Земли • Невозможно хранить таблицы блокировок до уровня адреса! • Возвращаются блокировки подсетями
  12. IPv6 • 128-битовые адреса • Возможно адресовать каждый атом на

    поверхности Земли • Невозможно хранить таблицы блокировок до уровня адреса! • Возвращаются блокировки подсетями • Однако проблема сканирования не решается!
  13. IPv6 vs IPv4 • Два разных протокола в одной глобальной

    сети? Нет, • Две разные глобальные сети!
  14. What happens when…? • https://github.com/alex/what-happens-when üDNS lookup üIPv4/IPv6 selection •

    Opening of a socket • Deep packet inspection • TLS handshake • CRL/OCSP • HTTP protocol • Load balancer • HTTP Server Request Handle • CDN
  15. Opening of a socket • На всём пути до сервера

    и на нём самом должны функционировать: • L2 Amplification • L3 Аномалии маршрутизации • L4 Автомат TCP-соединения
  16. Opening of a socket • На всём пути до сервера

    и на нём самом должны функционировать: • L2 Amplification, • L3 Аномалии маршрутизации • L4 Автомат TCP-соединения
  17. • NTP: 557 • DNS: 54 • SNMP: 6 •

    SSDP: 31 • ICMP: … • NetBIOS: 4 • LDAP: 55 • RIPv1: 131 • PORTMAP: 28 • CHARGEN: 359 • QOTD: 140 • Quake: 64 • Steam: 6 • … Фактор амплификации* * – по данным US-CERT: https://www.us-cert.gov/ncas/alerts/TA14-017A
  18. Opening of a socket • На всём пути до сервера

    и на нём самом должны функционировать: • L2 Amplification, IoT, • L3 Аномалии маршрутизации • L4 Автомат TCP-соединения
  19. 21:30:01.226868 IP 94.251.116.51 > 178.248.233.141: GREv0, length 544: IP 184.224.242.144.65323

    > 167.42.221.164.80: UDP, length 512 21:30:01.226873 IP 46.227.212.111 > 178.248.233.141: GREv0, length 544: IP 90.185.119.106.50021 > 179.57.238.88.80: UDP, length 512 21:30:01.226881 IP 46.39.29.150 > 178.248.233.141: GREv0, length 544: IP 31.173.79.118.42580 > 115.108.7.79.80: UDP, length 512 Mirai
  20. Opening of a socket • На всём пути до сервера

    и на нём самом должны функционировать: • L2 Amplification, IoT, …? • L3 Аномалии маршрутизации • L4 Автомат TCP-соединения • L5-L7 Сложные вычисления
  21. Opening of a socket • На всём пути до сервера

    и на нём самом должны функционировать: • L2 Amplification, IoT, …? • L3 Аномалии маршрутизации • L4 Автомат TCP-соединения • L5-L7 Сложные вычисления
  22. What happens when…? • https://github.com/alex/what-happens-when üDNS lookup üIPv4/IPv6 selection üOpening

    of a socket üDeep packet inspection üTLS handshake • CRL/OCSP üHTTP protocol üLoad balancer üHTTP Server Request Handle • CDN
  23. Разное • CRL/OCSP – пока опциональны • Поэтому бессмысленны •

    Но хотя бы ничего не ломают • Устойчивый к атакам CDN может построить не каждый • Тем более – закрыть от атак клиентов CDN
  24. Joomla RCE: CVE-2016-8870 • 28.10.2016: вышел патч • Первые попытки

    эксплуатации: в течение 24 часов • Через 36 часов: автоматическое сканирование Source: Wallarm honeypots, https://wallarm.com/
  25. Самое главное. • Прошло время, когда можно было использовать •

    Теперь требуется эксплуатировать • Начать лучше прямо сейчас