DDoS-атака застала нас врасплох, но благодаря ей мы многому научились

Приветствую! С вами Александр Защеринский, руководитель отдела digital-маркетинга компании, которая занимается сертификацией и имеет лаборатории и филиалы в странах Европы и Азии. Мы подверглись DDoS-атаке в начале августа этого года. Расскажу, как мы с ней справились и какие выводы для себя сделали на будущее.

Как нас атаковали

Все началось достаточно неожиданно — 8 августа мы получили уведомление о том, что наш ресурс недоступен. Честно говоря, первой мыслью было, что проблема возникла из-за системы управления контентом Битрикс — мы уже сталкивались с некоторыми сложностями, связанными с этой платформой. Мы начали искать решение, анализировать логи и проверять все возможные конфигурации. Только через 30 минут мы пришли к выводу, что наш сайт стал жертвой DDoS-атаки. Забегая вперед, отмечу, что атаки продолжались две недели с различной степенью интенсивности.

Запросы к серверу во время атаки

Чтобы ограничить поток вредоносного трафика, мы провели блокировку всех стран, кроме РФ. Для этого мы добавили в Iptables специфическое правило для блокировки по GeoIP. Несмотря на то, что это было временное решение и определение местоположения по IP не всегда точное, это действие все же помогло снизить нагрузку. Затем, после анализа трафика, мы добавили дополнительное правило, блокирующее IP-адреса, от которых исходило чрезмерно большое количество запросов за короткий промежуток времени.

Блокировка стран

Кроме того, мы увеличили пропускную способность интернет-канала, который также был оборудован защитой от DDoS-атак. Благодаря этому легитимным пользователям было проще попасть на сайт. Мы понимали важность рекламы для бизнеса и, чтобы не упустить потенциальных клиентов, перенаправили рекламные кампании на другой наш ресурс, не затронутый DDoS-атакой.

Нагрузка на ЦП во время атаки

Чему нас научила DDoS-атака: разбор ошибок

  • После того, как атака была отражена, мы занялись обновлением систем безопасности: увеличили бюджет на безопасность и выделили дополнительные средства для укрепления киберзащитных мер.
  • Оценили текущее состояние инфраструктуры. На основе найденных уязвимостей начали внедрять дополнительные защитные механизмы – балансировщики нагрузки, более продвинутые системы обнаружения и предотвращения вторжений (IDS/IPS) и системы обнаружения DDoS-атак в реальном времени.
  • Помимо этого, мы воспользовались многомерной защитой Imunify360, которая предлагает различные функции, такие как обнаружение вредоносного ПО, Web Application Firewall (WAF), IDS/IPS и прочие. Была также мысль воспользоваться Snort. Однако, после некоторых размышлений, пришли к выводу, что будет оптимально все же взять комплексный инструмент.
  • Начали сотрудничать с ведущей компанией в области кибербезопасности, которая предоставляет услуги по защите от DDoS и других угроз.
  • Установили процедуру регулярного аудита безопасности инфраструктуры и запустили командные учения для проверки нашей готовности к потенциальным атакам.

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

Хотя DDoS-атаки — это не редкость, у нас не было четкого плана действий на случай такого рода инцидентов. В момент атаки некоторым из наших специалистов пришлось «учиться на ходу», что, безусловно, замедлило наш ответ на угрозу. Регулярное обучение и тренинги могли бы сделать нашу реакцию более скоординированной. Репутационные потери могут быть гораздо более критичными и долгосрочными, чем временные технические неполадки. SEO-позиции, узнаваемость бренда и доверие клиентов — все это ценности, которые стоит охранять. Лучше предотвратить проблему, чем решать ее по факту возникновения.

Как минимизировать риски DDoS-атаки

Мы на собственном опыте убедились, что DDoS-атака — вполне реальная проблема, которую можно было бы предотвратить. Поэтому я хочу дать несколько советов тем, кто уже столкнулся или рискует столкнуться с подобной проблемой.

Внедряйте технологии. Выше я описал, какие инструменты мы внедрили после атаки — а вам я советую использовать их заранее. Так вы избежите наших ошибок.

Составьте план реагирования. Разработайте и держите под рукой план действий в случае кибератаки. Он должен содержать четкие инструкции для каждого члена команды.

Не забывайте про обновления. Регулярно устанавливайте новые версии систем, программного обеспечения, обновляйте инфраструктуру, чтобы уменьшить потенциальные уязвимости.

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

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

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

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

Бонус читателям сайта от компании «Серконс»: наш гайд для новичков для более эффективной защиты от DDoS-атак.

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

  • LazyLoad. Этот метод позволяет загружать контент, такой как изображения или видео, только тогда, когда пользователь действительно прокручивает страницу до него. Во время DDoS-атаки включение LazyLoad может снизить нагрузку на сервер, так как ненужный контент не будет загружаться автоматически.
  • Объединение и минификация скриптов. Один из способов оптимизировать время загрузки веб-страницы — объединение нескольких CSS и JS файлов в один. Это снижает общее количество HTTP-запросов к серверу. К тому же, минификация этих файлов позволяет уменьшить их размер, что также ускоряет время загрузки. В контексте DDoS-атак это может быть особенно важно, так как большое количество отдельных запросов к серверу может быть ошибочно интерпретировано как часть атаки и привести к блокировке легитимных пользователей.
  • Масштабирование и настройка инфраструктуры. Можно использовать все методы и искать баланс между ними. Например, горизонтальное масштабирование усилит инфраструктуру за счет большего числа серверов. Добавление балансировщика поможет равномерно распределить трафик между серверами во время DDoS-атак или прироста пользователей, предотвращая перегрузку. Вертикальное масштабирование может замедлить атаку благодаря  увеличению ресурсов на существующем сервере, например, через добавление мощности ЦП.