Pull to refresh

Что не договаривают сервисы по защите от DDoS или почему защита не работает

Reading time4 min
Views45K
Поводом для этой статьи послужил аудит безопасности в одном интернет-проекте. Заказчик попросил разобраться с их системой безопасности и проверить, насколько они подвержены тем или иным атакам. При этом, нас уверяли, что от DDoS-атак они защищены полностью и нет повода беспокоиться, так как они под защитой одного из лидеров рынка – Incapsula.

Тут-то нас и ждало большое удивление — заказчик был абсолютно не защищен.

Давайте разберемся что же произошло, но сначала немного теории.

Не буду описывать, что такое DDoS атака, отмечу лишь, что они делятся на 2 типа:

— DDoS Layer 3&4 по модели OSI. Одна из характеристик данной атаки – большое количество пакетов, которыми атакуется ресурс. На данный момент средняя мощность атаки по миру – 9,7 Gb/s и 19 Mpps.
— DDoS Layer 7 по модели OSI, то есть атака на уровень приложений. Как правило, атака не содержит большое количество пакетов (на порядки ниже чем при DDoS L3&4), скорее характеризуется точечным ударом по слабому месту атакуемого сайта.

Подключение к сервисам защищающим от DDoS атак происходит следующим образом:

— Для защищаемого ресурса в DNS прописывается адрес защищающего;
— Клиент указывает, на какой ip адрес пересылать очищенный трафик (как правило, на тот же адрес, который и был до подключения к сервису). Возможно поднятие туннеля.

Сейчас я специально не разбираю случай подключения с помощью BGP, там тоже не все так хорошо, но основная масса клиентов подключаются именно через изменения в записи DNS.

Заказчик доволен, расслаблен и полностью уверен в завтрашнем дне! Но, на самом деле, именно в тот момент, когда заказчик расслабился, он стал еще менее защищенным!

Давайте рассмотрим, почему или как можно обойти защиту.

Действительно, при попытке получить ip-адрес заказчика по имени сайта мы получаем ip-адрес сервиса по защите:

$ nslookup www.XXXXXXXX.ru
www.XXXXXXXX.ru canonical name = xxx.incapdns.net.
Name: xxx.incapdns.net
Address: 149.126.xxx.xxx

Но нам никто не мешает посмотреть DNS history по данному имени. Заходим на любой сайт, предоставляющий подобную информацию. И что мы видим:

IP Address Location IP Address Owner Last seen on this IP
149.126.xxx.xxx Binghamton — United States Incapsula Inc. 2015
149.126.yyy.yyy Binghamton — United States Incapsula Inc. 2015
zzz.zzz.zzz.zzz United States HOSTER LTD 2014


В результате мы видим, что его предыдущий ip-адрес — zzz.zzz.zzz.zzz; более того, теперь мы знаем, что он находится на площадке HOSTER LTD в США (дальше будет понятно, почему это тоже важно).

Остается только внимательно посмотреть на сервер, который имеет этот ip-адрес и мы уже точно знаем, что это искомый нами сервер заказчика.

Все! Атакуем этот сервер по ip-адресу и заказчик лежит столько – сколько нам надо. На ветер потрачено большое количество денег, но затраты не окупились, защита не работает.

Ниже я опишу рекомендации по правильному использованию подобных сервисов.

Как ни странно, но ни один из популярных — как на Западе, так и в России сервисов по защите от DDoS — не дает никаких рекомендации по этому вопросу своим клиентам.

Так что же необходимо делать?


Как только вы хоть раз засветили свой ip-адрес в сервисе DNS, вы больше никогда не сможете удалить эту информацию – она всегда будет доступна в DNS history. Более того, вы засветили свое местоположение (хостер, коммерческий ЦОД и т.п.).
Хотите полностью обезопасить себя – уходите с этого места. Как только вы остались, ваш сервис будут атакован, если вы представляете хоть какую-нибудь ценность для атакующих.

Рассмотрим, как будут вести себя атакующие и попробуем понять, в зависимости от размера вашего проекта, что нужно делать в этой ситуации.

1) У вас небольшой сайт и вы изначально разместили его у hosting провайдера. Правильные действия – настроить http-server таким образом, что бы он принимал запросы только от ip-адресов защищающего (так вы точно снимите возможность атаки DDoS Layer 7) и сменить ip-адрес (защита от DDoS Layer 3&4). В этом случае, нападающие не смогут найти ваш сайт напрямую, но это не значит, что вы в безопасности. Средний хостер в России имеет каналы 1-5 Gb/s и если вы действительно интересны нападающим, то они предпримут атаку (DDoS Layer 3&4) на каналы хостера и положат его и вас вместе с ним.

2) У вас есть выделенный Virtual Private Server и на нем располагается ваш проект. Правильные действия:
— настроить http server таким образом, чтобы он принимал запросы только от ip-адресов защищающего (так вы точно снимите возможность атаки DDoS Layer 7);
— настроить firewall так, что бы все лишние порты были закрыты и/или принимали соединения только от известных вам ip-адресов. Если вы этого не сделали с самого начала при подключении к сервису защиты от DDoS, то, возможно, атакующие уже изучили ваш сервер и узнали, какие порты открыты, а какие нет (атакующие сделали fingerprint вашей системы). Это значит, что они знают, какую машину им надо искать в сети провайдера;
— сменить ip-адрес (защита от DDoS Layer 3&4).

Если вы остались на существующем облачном провайдере, вы все равно не в безопасности. Самая уязвимая часть облачного провайдера – консоль управления (даже у Amazon она не очень хорошо защищена). На каналы небольшого облачного провайдера атакующие могут провести атаку DDoS Layer 3&4 и положить все облако.

3) У вас большой проект и много серверов, стоящих в каком либо коммерческом ЦОДе. Такой проект самый сложный по защите. Необходимо подойти комплексно к этой задаче, сменой ip и настройкой firewall ничего не решить (но это не значит, что этого не надо делать). Как минимум, вам необходимо сменить сетку, которую вам выдал провайдер. Именно сменить, а не добавить новую, иначе, вас даже не надо искать – атакующие просто положат ваши каналы, атакуя старую сетку. Как правило, в таких проектах есть сервисы, которые нельзя или невозможно поставить под защиту от DDoS – подумайте как правильно разнести эти сервисы по разным сетям или даже площадкам, иначе вас найдут именно по ним (самый простой пример – MX записи почтовой службы).

Вывод


Сервисы по защите от DDoS не являются панацеей, но они могут сильно помочь, если вы сделаете еще ряд шагов в нужном направлении.

Удачи вам и вашим проектам.
Tags:
Hubs:
Total votes 52: ↑46 and ↓6+40
Comments41

Articles