Что делать, если ваш сайт атакуют? Кейс TOPTOP.RU и Evrone
Недавно мы столкнулись с ddos-атакой, которую злоумышленники обрушили на нашего клиента, интернет-ритейлера TOPTOP.RU. Рассказываем, что мы предприняли, и делимся советами для тех, кто только задумывается о безопасности своего ресурса.
14 мая TOPTOP.RU, для которых мы делали редизайн и рефакторинг легаси кода, прислали задачу с пометкой «нас, возможно, взломали». Следующие 6 часов мы восстанавливали работоспособность ресурса, а руководство вело переговоры и не поддавалось панике.
12:00. Live-чат на сайте
Мошенники: Приготовились? Скоро сайт ляжет :)
С точки зрения серверных мощностей TOPTOP.RU устроен стандартно для интернет-магазина — поток пользователей равномерный с пиковыми нагрузками в дни распродаж вроде «чёрной пятницы», поэтому сайт размещается на виртуальной машине, не рассчитанной на постоянные высокие нагрузки.
Этим и воспользовались мошенники. Они направили огромное количество автоматических запросов к нашему серверу, чтобы он не выдержал нагрузку и перестал быть доступен для реальных пользователей.
12:10. Внутренняя переписка
Менеджер TOPTOP.RU: Сайт недоступен. Нас взломали?
PM Evrone: Нет, мы можем заходить на виртуальную машину. Это ddos-атака.
Сначала атака была небольшой и мы попытались отбиться своими силами, поэтому мы использовали настройки, доступные в nginx. Например, забанили адреса, с которых велась атака, так как их было немного и это могло сработать. Однако тут же появились новые, атака усилилась и мы перешли к подключению loadbalancer.
Loadbalancer — это аппаратно-программная прослойка между пользователем и сайтом. Она распределяет нагрузку на сайт между разными ip-адресами, а также сравнивает поведение пользователя с шаблоном и запрещает доступ, если замечает подозрительные признаки. При этом обычные пользователи спокойно попадают на сайт.
12:20. WhatsApp
Мошенники: Вернуть как было или уронить вас на месяц? Сайт уже недоступен.
Менеджер TOPTOP.RU: Что вы предлагаете?
Мошенники: XXX 000 руб. и всё вернём. Ещё дадим небольшую консультацию по безопасности, а своих админов увольте.
Менеджер TOPTOP.RU: А какие будут гарантии?
Мошенники: Никаких. Либо платите, либо мы пойдём по плохой схеме. Вы за один день потеряете больше, а оборону мы держать долго можем.
У Evrone уже был опыт работы с популярным loadbalancer’ом — Cloudflare, однако мы впервые подключали его для русскоязычного домена.
Для начала сменили ip-адрес виртуальной машины, на которой размещен сайт, и спрятали dns-записи. После этого перенесли управление данными из кабинета Яндекса в Cloudflare. Атакующей стороне пришлось «бороться» уже не с небольшим сервером магазина, а с масштабной и гибко настроенной инфраструктурой Амазона.
Исходя из опыта, перенос западных адресов на Cloudflare не занимает много времени. Но парковка русскоязычного домена потребовала полтора часа (как выяснилось, сервис не отдаёт ip-адрес сайта до его валидации и нужно было дождаться).
Еще час ушёл на проксирование трафика и установку SSL-сертификатов. TOPTOP.RU снова стал доступен для обычных посетителей.
19:30. Внутренняя переписка
PM Evrone: Сайт работает.
Менеджер TOPTOP.RU: Отлично, оповестим клиентов. Что-нибудь сделаем на случай повторной атаки?
PM Evrone: Возьмём общепринятые системы защиты от атак: инструменты детектирования, мониторинга проникновения и обхода систем безопасности. Плюс дополнительно настроим прокси-сервера для того, чтобы банить мошенников не только средствами cloudflare, но и нашими машинами.
На случай второй волны мы спрятали реальный ip-адрес сайта для распределения нагрузки и включили JS-challenge от Cloudflare — проверку на человечность с вводом капчи. Такая защита не обязательна в штатном режиме работы, например можно установить JS-challenge только для общеизвестного списка подозрительных ip-адресов, но в режиме «обороны» это необходимо.
За следующие 24 часа после начала использования Cloudflare обнаружил и остановил 62 потенциальные угрозы. Возможно, единичные пользователи встретили проблемы с доступом к сайту. Тем не менее, сервера были защищены, а значит наш подход сработал. После того, как атака завершилась, мы установили проактивную защиту, которая заранее улавливает подозрительные действия и атаки.
Отдельно стоит сказать, что справиться с атакой помогло то, что руководство TOPTOP.RU смогли здраво оценить ситуацию и выдержали психологическое давление, которое оказывали на них. Такая атака, оставленная без внимания, летальна для любого бизнеса, потому что время даунтайма было бы ограничено только желанием и возможностями атакующих.
Спасибо Evrone за оперативную поддержку. Вся команда подключилась к проблеме, быстро нашли решение и реализовали его.
Параллельно с этой работой был проведен аудит безопасности и устранены возможные изъяны, надеемся теперь мы в большей безопасности.
Методы и технологии защиты от ddos атак
Ddos-атакам подвергаются коммерческие проекты, для которых простой в работе критичен и влечёт большие убытки. Чтобы обезопасить себя от этого, обратитесь к специалистам по безопасности, так как сделать что-то самостоятельно сложно — необходима экспертиза.
К сожалению, ни одна компания, отвечающая за безопасность в интернете, не даст вам 100% гарантии защиты от взлома и атак на сайт, но подготовиться к ним все-таки стоит ещё на этапе разработки продукта. Можно сделать так, чтобы мошенникам было проще не связываться с вами, так как есть более доступные цели.
Вот о каких мерах безопасности вы можете позаботиться сами, чтобы не казаться лёгкой целью:
- Аккуратно храните логины и пароли. Не допускайте, чтобы их записывали на бумажку и оставляли на столе или держали в заметках на телефоне.
- Следите за тем, чтобы доступ к аккаунтам и почтам был только у тех, кому он нужен. Не заводите «рабочие телефоны», пользоваться которыми будут все сотрудники.
- Подключите двухфакторную авторизацию везде, где это возможно.
- На серьёзный бизнес рано или поздно обратят внимание. Если у вас нет финансовой возможности вложиться в безопасность сейчас, спросите у своего разработчика о базовых, более доступных методах защиты. Но не забудьте усилить их, когда возможность появится.
- В основном мошенники используют человеческий фактор. Для взлома, например, присылают вирусную ссылку с названием «требование от налоговой», чтобы бухгалтер испугался и открыл. Предупредите сотрудников о том, что такие схемы существуют.
Как понять, что ваш сайт попал под прицел интернет-мошенников?
Каких-то критериев, по которой определяется цель атаки, не существует. Отбиться от неё тоже почти невозможно: можно либо предотвратить ранними мерами, либо смягчить.
Частая схема — настройка переадресации на сайты-копии или фейковые аккаунты соцсетей. Общаться с вашими клиентами мошенники будут исключительно вежливо и сервисно, максимально оттягивая момент, когда вы узнаете, что ваших клиентов обманывают.
Также тихая атака, например кража, могут быть незаметны долгое время. А вот ddos и сообщения в соцсетях — это громкий способ сказать: «Обратите на нас внимание! Мы можем влиять на ваш бизнес, заплатите и мы отстанем!»
Вот несколько признаков того, что ваш бизнес мог стать целью мошенников:
- У вашего аккаунта в инстаграм появились клоны или дубликаты с похожими именами. Аккаунт при этом может выглядеть живым, а активность поддерживается при помощи 10-20 тысяч фейковых подписчиков.
- Поток сообщений от клиентов заметно сократился. Раньше писали много, но почему-то перестали — мошенники могли увести их на другой аккаунт.
- Поток заказов снизился без каких-либо внешних причин.
- На электронной почте стали исчезать письма либо появились новые, уже прочитанные.
- На телефон, на котором подключена двухфакторная авторизация, начали поступать смс и пуши с кодами подтверждений.
- Сайт стал открываться медленнее или через раз. Попросите своих администраторов или разработчиков разобраться с этим и объяснить вам причину.
Если вы заметили хотя бы один из признаков — обратитесь за консультацией по безопасности — она может спасти ваши деньги и бизнес.
То есть вы просто подняли Cloudflare и настроили его у клиента, так выходит?
И написали статью :)
Не только. Используя CloudFlare, мы смогли быстро перевести балансировку запросов на их серверы, спрятать реальные IP адреса инфраструктуры.
В инфраструктуре проекта был произведен аудит доступов, настроены системы автоматической блокировки «нежелательных» запросов.
"После этого перенесли управление данными из кабинета Яндекса в Cloudflare. Атакующей стороне пришлось «бороться» уже не с небольшим сервером магазина, а с масштабной и гибко настроенной инфраструктурой Амазона." - сайт перенесли на амазон или ошибка, cloudflare не продукт amazone. Ну и опыт такой себе, обойти защиту cloudlfare вполне реально, даже не нужен реальный ip. Но как cdn ему сейчас нет равных.
Плюс вам в карму за внимательность к нашему тексту. Мы действительно упустили слово «уровня».
«…и гибко настроенной инфраструктурой уровня Амазона».
"Не допускайте, чтобы их записывали на бумажку и оставляли на столе или держали в заметках на телефоне.:"
Как это сделать с другими людьми в компании?
Это один из самых сложных вопросов. В голову сразу приходят кейсы про телеинтервью специалистов, у которых на заднем фоне на мониторе приклеен стикер с паролями...
В профилактических целях подойдёт то, что отзывается в корпоративной культуре, даже беседа с сотрудниками с описанием кейсов взлома и влияния их работы на других. Но полагаться на обещания всё равно рискованно.
Тут, как говорится, надо «стелить солому» везде, где возможно. По максимуму пройтись по настройкам рабочих сервисов и выставить там, двухфакторные авторизации, требования к сложности пароля, разграничить доступ по нужным функциям и т.д.