DDoS — оружие в войне бизнесов: защищаться нельзя смириться? -1


Привет!

Это расшифровка подкаста «Релиз в пятницу» от команды Timeweb для всех читателей «Хабра».

В новом выпуске ребята обсуждали не только громкие кейсы, но и в деталях объясняли, как технически устроены атаки.



Что еще для меня стало открытием:
  • DDoS-атаки могут быть и в реальной жизни.
  • Они могут поступать с любого устройства. Твой роутер или умный чайник может служить источником атаки.
  • Существует целая индустрия — организации, которые проводят атаки за деньги.
  • Узнала про нечаянный DDoS, Habr-эффект и эффект Reddit.

Слушать аудио
Смотреть на YouTube

У микрофонов: Кирилл Асадчий — аккаунт-менеджер Timeweb Cloud, Рома Ткач — руководитель команды кибербезопасности Timeweb и Олег Филимошин — архитектор публичного облака Timeweb.

Что такое DDoS и чем он опасен?


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

Рома: Если кратко, DDoS — это атака, которая предполагает нарушение доступности какого-то информационного актива. Такие нарушения доступности могут быть очень разными: от привычных DDoS-атак, о которых мы слышим в новостях, до “атак” в реальном мире, например, искусственно созданная очередь в супермаркете, организованная для того, чтобы его владелец не получил ту прибыль, которую хотел бы.

Кирилл: А в чем опасность DDoS-атаки?

Рома: Самое очевидное — это, конечно, недополученная прибыль.

Что такое ботнеты?

Кирилл: Я еще слышал про ботнеты. Возможно, не все слушатели знают, что это, поэтому, ребят, расскажите поподробнее.

Олег: Ботнет — это сеть, созданная из зараженных или уязвимых устройств, с которых производится атака. Эти устройства в том числе используются, чтобы забить канал жертвы и создать больше трафика, чем у тебя есть на самом деле. Чаще всего, это заражённые компьютеры.

Кирилл: То есть атаки могут поступать не только с компьютеров?

Олег: Да, они могут поступать с любого устройства! Сейчас очень популярен IoT, всевозможные умные дома. А в устройствах этих умных домов — не самые последние протоколы, которые никто не обновляет. Если в подобном устройстве злоумышленники обнаруживают уязвимость и начинают ее эксплуатировать, то твой умный чайник может “задедосить” кого-нибудь.

Кирилл: Проверяйте свои покупки в IKEA!

Олег: Да, совсем недавно была найдена уязвимость в маршрутизаторах, роутерах Mikrotik в прошивке. То есть твой домашний роутер мог превратиться в источник атаки.

Кирилл: Значит, вне зависимости от того, что и как ты покупаешь, это устройство может послужить на пользу “дедосерам”?

Олег: Да, плюс мобильные устройства! Тот же самый телефон на Android, учитывая, что в России и за рубежом везде 4G, то есть канал очень мощный. Раньше мобильные устройства не рассматривались в качестве источников для атак. А сейчас мобильный интернет даже быстрее, чем дома.

Кто и зачем устраивает атаки?


Кирилл: А кому может быть интересен DDoS?

Олег: Обычно это борьба бизнеса, устранение конкурентов, репутационные риски. Могут, например, написать, что тебя “дедосили”, а ты не смог отбиться. Это, конечно, бьет по репутации компании. Кроме того, в этот момент ты был недоступен.

Самый банальный пример — 8 марта: многие сервисы по продаже цветов начинают друг друга “дедосить”. Покупатель открывает поисковую выдачу, видит первый магазин, открывает, а он недоступен, идет в следующий, потом следующий и так далее. А ты просто всех стоящих выше в списке заказал, их атакуют и доходят до твоего сервиса, у тебя и заказывают.

Кирилл: Если я правильно понимаю, то основная цель в таких атаках — нанести вред конкуренту?

Олег: Сделать недоступным его ресурс! Если это интернет-магазин, то в этот момент у него не будет заказов.

Рома: Да, это один из распространенных кейсов. Еще можно выделить DDoS-атаки в связи с политическими событиями. Недавно же было голосование, всю систему активно “дедосили”, и это регулярно происходит. Могут быть и личные мотивы. Если кто-то обидел, хакеры могут просто пойти и “подедосить”, чтобы отомстить.

Кирилл: Хорошо. Месть хакеров, конкуренция в бизнесе, а ради чего еще могут проводиться DDoS-атаки?

Рома: Существует вообще целая индустрия! Хакеры выбирают компанию-жертву, организуют демонстрационную атаку на 5-10 минут. Отдел безопасности это замечает, параллельно получает письмо с требованием заплатить некоторое количество биткойнов или сатоши, чтобы атака не повторилась. Конечно же, такие хакеры врут и вымогают деньги, они будут продолжать “дедосить”.

Кирилл: А бывали такие случаи, когда “дедосеры” доводили компании до банкротства?

Рома: На ум не приходит, но я думаю, что бывали.

Олег: Игровые серверы можно довести до банкротства, если их “дедосят” очень часто. Онлайн-игра живет за счет того, что люди приносят туда деньги, а игровой сервер оказывается недоступен 2, 3 или 4 дня, и люди, скорее всего, с сервера уйдут. А когда сервер поднимется, онлайн будет далеко не такой, как был.

Кирилл: Насколько я знаю, есть различные компании, которые занимаются защитой, могут ли они использовать DDoS-атаку как саморекламу?

Рома: Мы не можем сказать точно, я лично не помню официальных заявлений. Вполне возможно! Логично, когда компания, которая может защитишь от DDoS-атаки, ее же и устраивает.

Защита веб-сервера vs. защита игрового сервера


Кирилл: Олег, ты сказал про игровые серверы. А чем отличается защита веб-сервера от игрового сервера?

Олег: Во-первых, там может быть специфичный трафик. Обычно для каждой игры тратят время на то, чтобы проанализировать трафик, понять, какой именно идет. Я имею в виду серверные игры, такие как GTA или Minecraft, там специфичный трафик. Необходимо отличать легитимного пользователя, легитимный трафик от вредоносного трафика. Под каждую игру проводится отдельный анализ, и защита строится на основе него.

Как технически устроены атаки?


Кирилл: Значит, панацеи не существует?

Олег: Нет! Если углубиться, то можно выделить несколько уровней, на что проводят атаку. Обычно у поставщиков защиты это уровни L3/L4 и L7. L7 обычно называется Web Application Firewall. L3 и L4 — это защита от всевозможных видов атак на каналы и протоколы. Например, амплификация трафика, когда используются уязвимости, которые позволяют создать очень много трафика. Из банальных примеров — DNS-амплификация. Там используется UDP-протокол, он несессионный, и злоумышленник находит сторонние DNS-серверы, на которые посылается запрос, и туда, куда нужно отправить ответ, указывают IP-адрес жертвы. На вход подается небольшой трафик, а на выходе DNS-ответ гораздо больше, чем запрос. То есть тебе нужен у’же канал, а на выходе эти DNS-серверы генерируют бо’льший трафик. Это один из самых распространенных типов атак — по амплификации. Ты спокойно находишь DNS-серверы, передаешь их своим ботнетам, передаешь IP-адрес жертвы, все устройства начинают генерировать этот трафик, на каждый DNS-сервер стучаться, и все DNS-серверы, которые в этой цепочке участвуют, начинают генерировать паразитный трафик на жертву. А жертва не понимает, скорее всего, что происходит, откуда столько трафика, почему из разных источников. В этом случае ты не можешь найти источник атаки. Атака происходит через посредника.

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

Про нечаянный DDoS


Кирилл: А может получиться так, что наплыв на твой сайт произошел за счет взрывного роста рекламной кампании, а ты подумал, что это DDoS?

Рома: Конечно, это нередкая история, самая популярная — Habr-эффект или эффект Pikabu в Рунете, за рубежом — эффект Reddit. У меня есть интересный кейс к теме легитимного трафика. В 2006 году компания по изготовлению труб подала в суд на YouTube. Как вы думаете почему?

Олег: Все искали там трубы?

Рома: У этой компании по изготовлению труб уже долгое время было доменное имя, созвучное YouTube. Появился YouTube, резко вырос, в итоге этой компании пришлось в 5 раз увеличивать мощность своих серверов, она долго судилась, но в конце концов сменила доменное имя, потому что невозможно было так жить дальше. Это пример непроизвольной DDoS-атаки от обычных клиентов.

Кирилл: Я пришел смотреть смешные видосики, а мне показывают какие-то трубы! У Facebook, кажется, что-то подобное тоже было.

Олег: Да, это есть в отчете Cloudflare, на “Хабре” была статья на русском. Cloudflare писали отчет ночью, сразу после того, как Facebook был недоступен: оказалось, что в 30 раз возросла нагрузка на DNS-серверы Cloudflare, то есть все приложения и сайты, которые использовали их DNS-серверы для резолва Facebook, многократно увеличили количество запросов. Как раз потому, что приложение не может достучаться до Facebook, разрезолвить хост, получить IP-адрес, эти запросы повторялись очень-очень много раз со всех устройств, со всех сайтов. Всё, что пыталось добраться до Facebook и не могло достучаться, закешировать ответ, все вот эти запросы начали генерироваться.

Кирилл: А можно как-то отличить легитимный трафик от вредоносного?

Олег: По идее это был как раз легитимный трафик, с точки зрения структуры запросов и всего остального. Реальные пользователи хотели получить IP-адрес Facebook по доменному имени. C этой точки зрения, трафик был легитимен. Наверное, единственное, что оставалось сделать, — это просто (скорее всего, Cloudflare так и сделали) какое-то время отсекать ответы автоматически.

Кирилл: То есть они часть из них просто отфильтровывали вначале?

Олег: Я думаю, они могли бы сделать так: пока Facebook не восстановится, все равно отвечать нечем. А таким образом можно снизить нагрузку. Судя по всему, Cloudflare к этому были готовы, у них всё смасштабировалось.

Как распознать атаку и защититься?


Кирилл: Какие внутренние инструменты может использовать компания для того, чтобы совершить подобное, то есть отфильтровать, понять, какой трафик легитимен?

Олег: Смотри, я еще недорассказал, что, помимо L3 и L4, есть еще уровень L7 — это как раз web applications, вообще web traffic. На L3 и L4 всё достаточно стандартно, то есть существуют какие-то виды атак, есть определенные инструменты. Для L7 всё намного сложнее и индивидуальнее. У вендоров по защите от DDoS-атак L7-уровень сильно различается между собой, именно по алгоритмам, по тому, как они это делают. Под каждый сайт это определяется индивидуально. Например, злоумышленник может найти у тебя какой-нибудь endpoint, который вызывает долгий сбор отчета и сильно нагружает базу данных. Тогда хакеры могут начать эксплуатировать эту уязвимость путем очень частых запросов: могут направить много запросов, дергать endpoint, а у тебя просто ресурсы на сервере закончатся. И в принципе они достигнут того, что твой сервер тоже станет недоступен. Вот эту штуку искать в автоматическом режиме сложновато. Нет универсального решения, что какие-то endpoint на всех можно раскатать.

Кирилл: То есть приходится постоянно костылить решение и искать новые выходы?

Олег: Да, анализируют трафик, смотрят по определенным критериям время ответа, время запроса, как часто. На все, что начинает выбиваться из обычного, нормального трафика, уже начинают обращать внимание в полуавтоматическом режиме или в автоматическом. Банальный пример приведу, это, кстати, самая простая и
эффективная защита, но не самая удачная с точки зрения конверсии и продукта. Вот ты заходишь на сайт, и Cloudflare говорит, что он сейчас тебя проверит, просит ввести captcha. Это по сути защита от ботов.

Кирилл: Вот почему приходится постоянно искать автобусы!

Олег: Да, в том числе. Если ты заходишь на сайт, а он сразу спрашивает, человек ли ты, это как раз защита от L7-атак, от того, чтобы в автоматическом режиме боты не дергали какие-то endpoint’ы.

Кирилл: А могут ли использовать такую защиту для обучения нейросети?

Олег: Подбор капч уже как сервис сливают людям, которые сидят и вводят эти капчи за деньги. Короче говоря, надо понимать, что все упирается в деньги, а именно в борьбу финансов. Если у того, кого атакуют, больше денег и он их тратит на защиту, то он выиграет, DDoS-атака закончится. Если тот, кто решил атаковать, туда влил больше денег, то жертву “задедосят”.

Кирилл: То есть побеждает всегда тот, у кого больше денег в кармане.

Олег: Да, на самом деле. Можно очень мощные атаки заказывать, лишь бы были деньги и желание.

Можно ли защититься от DDoS-атаки своими силами?


Кирилл: А может ли все-таки выстоять особо крепкая команда ИБ, которая поднимет щиты и встанет на защиту?

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

Кирилл: Если говорить о роли информационной безопасности внутри компании, Ром, подскажи, как защититься внутри компании, не прибегая к аутсорсу? Можно ли это сделать только своими силами?

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

А с точки зрения того, что делать нужно самим, это вопрос, скорее всего, к архитектуре инфраструктуры и приложения: стараться делать кластеризацию, искать узкие места и всё такое. То есть упор здесь не в сторону какого-то средства защиты, а в сторону более устойчивого приложения и инфраструктуры. Без поставщиков будет трудно своими силами все организовать.

Как организовать передачу трафика и ничего не нарушить?


Кирилл: Получается, чтобы защититься от DDoS, нужно передавать трафик постороннему поставщику?

Рома: Есть разные варианты. Если мы говорим про L7-уровень, то да, как правило, идет передача трафика третьей стороне. Если мы говорим про сетевой уровень L3/L4, то там это может быть на уровне провайдера, он проходит и так через поставщика.

Кирилл: Если мы передаем трафик, то насколько вообще это легально? Сама передача трафика? Как можно организовать этот процесс?

Олег: Тут два важных момента. Если ты передаешь L3/L4, то проблем ни технических, ни юридических никаких нет. Разбираемся с L7. Тебе же нужно заглянуть в endpoint URL, который идет с SSL-сертификатами, с SSL-соединением. Поэтому на стороне защиты от DDoS, на стороне этого сервиса, есть два варианта: либо с помощью DPI смотреть на косвенные параметры идущего трафика, либо передавать им свой SSL-сертификат, чтобы они на своей стороне раскрывали трафик, уже могли его видеть. Гипотетически здесь могут быть уязвимости и проблемы. Получается, что ты доверяешь свой шифрованный трафик расшифровывать посреднику.

Кирилл: То есть компания не всегда способна сама справиться с защитой, но при этом, передавая свои данные поставщику услуги, точно так же рискует?

Олег: Гипотетически, если есть какая-то уязвимость на стороне поставщика услуги, то да, ты можешь не по своей вине быть атакованным, либо потерять какие-то данные, либо скомпрометировать.

Кирилл: А сколько вообще стоит такая защита?

Олег: По деньгам в среднем за 5 или 10 Мбит очищенного трафика от 5-6 тысяч рублей до 10,000 рублей, это небольшие объемы для небольших сайтов. Дальше сумма сильно увеличивается. Обычно тарификация идет за месяц, указывается, сколько трафика может пройти через канал очистки и дойти до тебя.

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

Про роль архитектуры приложений в защите


Кирилл: Ром, к тебе такой вопрос, раз Олег затронул архитектуру. Насколько тебе в работе приходится сталкиваться с проблемами архитектуры при защите, или, наоборот, насколько тебе помогает правильно выстроенная архитектура?

Рома: Если мы говорим о построении защиты от DDoS, то, конечно, приходится иметь дело с поиском узких мест и подобным. Но если архитектура особо не меняется, то можно выстроить ее хорошо один раз, а потом только следить.

Кирилл: На что влияет тот факт, выстроил ли ты с самого начала правильную архитектуру проекта?

Олег: Это влияет на стоимость поддержания, гибкость и скорость развития. Знаешь, что еще нужно учитывать. Одно дело — произошла атака, забили канал, атака закончилась, а у вас ничего не поднялось. Это как раз напрямую относится к архитектуре: где-то какой-то несчастный сервис, который дает контакты на сайт или год, например, не поднялся. А все остальные сервисы завязаны на него, и теперь у вас вся система не работает.

Кирилл: То есть нужно заранее об этом позаботиться: чем дольше живет проект, чем старше компания, тем впоследствии выше риск.

Олег: Да, смешная ситуация: атака закончилась, а сервис не работает. Он не смог установиться.

Рома: Да, например, может нарушиться расписание бэкапирования и расписание репликации. После окончания DDoS это всё может сломаться, нужно ходить руками все собирать и поднимать.

Кирилл: Как со здоровьем: чем раньше ты позаботился, чтобы оно было в порядке, тем меньше у тебя проблем будет потом.

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

Рома: Да, такая возможность есть, но она существенно дороже.

Олег: Да, причем большинство сервисов сейчас всегда под защитой находится. Например, крупные ритейлеры. Это легко проверить. Если ты видишь, что IP-адрес по DNS’у не анонсирован в какой-то из подсетей, принадлежащих провайдеру, поставщику услуг, значит, они находятся под защитой. А самому строить защиту выйдет еще дороже и нет никаких гарантий. Плюс почему большинство из поставщиков называется облачной защитой, потому что оплата идет за потребление, поэтому ты можешь выбрать механизм, когда, если детектор атак не мониторит, что атака началась, ты платишь меньшую сумму за трафик, который проходит к тебе просто без очистки. Как только началась атака, тогда ты платишь уже приличные деньги. А если делать всё собственными силами, у себя в облаках ты должен поставить оборудование, настроить, поддерживать.

Кирилл: Потом эти сотрудники могут уйти.

Рома: Да, нужна будет экспертиза обязательно в команде!

Олег: Ты вложил большие деньги в примитивную защиту, которая может и не потребуется.

Кирилл: А может получиться, что ты этой превентивной защитой всё поломаешь?

Олег: Может, наверное! Как с Firewall’ом можно ошибиться, выставить неправильные настройки, либо они будут выставлены правильно, но применяться некорректно, и у тебя начнет дроппаться трафик.

Почему DDoS становится всё популярнее?


Рома: Есть еще одна тема для обсуждения, почему DDoS-атаки так распространены. Мне кажется, это достаточно простой вопрос. Их очень просто сделать с точки зрения технической реализации.

Например, есть целая индустрия “купить DDoS как сервис”. Мы можем зайти в Google или “Яндекс”, написать “купить DDoS”, и в поисковой выдаче на первой странице будут рабочие сервисы по организации DDoS-атак. Они будут позиционировать себя как стрессеры или сервисы нагрузочного тестирования, то есть это как будто легально. Например, даже можно прийти к ним и оформить себе 5-10 минут бесплатной тестовой DDoS-атаки. Эти сервисы позволяют получить 50-100 Гб в секунду. А в Рунете в прошлом году был рекорд — 50 Гб, то есть для Рунета это большая цифра. Мы можем 99 процентов бизнеса такой атакой положить, если у них нет настроенного CloudFlare. Я даже решил посмотреть в аналитике “Яндекс”, сколько идет запросов, и насчитал около 500 запросов в неделю по “купить DDoS-атаку”. В общем, индустрия очень живая, горячая и популярная. Потому что есть много способов организовать атаку. Например, та же амплификация трафика возможна через какие угодно фичи, протоколы. А DNS’ы, там тоже все легко: DNS-серверов много, и плохо сконфигурированных DNS-серверов тоже очень много. Кстати, по поводу амплификации, амплификация — умножение трафика, то есть мы отправляем 1 Кбайт данных, DNS-сервер отвечает 10 Кбайт жертве. То есть 10-кратное усиление у DNS-амплификации. Если взять сервисы Memcachet, то там 50,000 раз коэффициент амплификации, это идеально для “дедосеров”: отправляешь 1 Кбайт, а на выходе на жертву 50 Мбайт падает.

Кирилл: Если я правильно понимаю, то DDoS-атаку могут организовать не только взрослые бородатые дяди, а это может быть Витя из пятого “Б”.

Рома: Конечно, тут же есть разделение обязанностей. Есть сервисы, есть заказчики, такая же вполне обычная индустрия. И она живет, потому что трудно доказать, трудно привлечь к ответственности тех, кто реализовывает атаки, и тех, кто заказывает.

Олег: Прямых доказательств не бывает.

Рома: В киберпреступлениях вообще сложно кого-то привлечь к ответственности, а с DDoS-атаками еще сложнее. Если посмотреть на статистику от вендоров, то каждый из вендоров отбивает миллионы DDoS-атак в год.

Олег: Кстати, недавно была новость, что количество таких атак сильно возросло, связано это с коронавирусом. Это сказалось и на работе Timeweb: клиенты стали чаще заказывать услугу выделенных серверов хостинга.

Кирилл: То есть с годами количество DDoS-атак только возрастает?

Олег: Да, и влияет несколько факторов. Людей в Интернете стало больше, устройства и каналы связи стали мощнее.

Кирилл: И количество компаний растет, выше конкуренция.

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




К сожалению, не доступен сервер mySQL