Ответы пользователя по тегу Защита от DDoS
  • Какие методы противодействия Ddos атакам существуют, что вообще есть по теме полезного?

    @throughtheether
    human after all
    В нижеследующих параграфах под DDoS-атакой я буду подразумевать высокоинтенсивный флуд, если не указано иного. В общем смысле это неверно, но по определенным причинам такой подход довольно популярен.

    Конечно, скачать какую-нибудь программу с хакир.ру и нажать на кнопку особого ума не надо, но где они берут ботнет? Для меня это загадка. Это первый пунктик, который я не могу понять. Сами собирают? Это не быстро, не безопасно и не просто.
    Иногда бывает, что многие люди одновременно сами осознанно запускают "вредоносную" программу (см. hacktivism, loic и прочая), т.е. ботнет не нужен. Иногда бывает (amplification attacks), что достаточно десятков скомпроментированных серверов (у них пропускная способность выше), чтобы сгенерировать несколько гигабит/c трафика, которые затем многократно умножатся и придут к жертве.

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

    Вторая философская загадка кроится в том, что вроде как защита есть, можно запросы фильтровать, перенаправлять и вообще нагрузки на разные сервера распределять, но в то же время канал не резиновый все равно и при желании большими объемами трафика можно положить что угодно, даже фэйсбук, и куда после этого постить фотографии кота? Т.е. под большими объемами уязвимы все.
    Скажем так, чтобы к жертве пришло N гигабит/с трафика,их должен кто-то сгенерировать. Поэтому чем более сконцентрирована цель и чем более "распределен" атакующий, тем больше вероятность успешной атаки. И наоборот.

    1. Как понять что тебя ддосят, если твой сервер лежит и не отвечает? мало ли что там может быть такого убаюкивающего для него. Как понять, что идет именно ддос?
    При помощи внятного заранее настроенного мониторинга. Необходимо заранее рассмотреть возможные варианты атаки, спрогнозировать (смоделировать) их влияние на оперативно отслеживаемые метрики (утилизация каналов в bps/pps, утилизация CPU, поведение веб-сервера или сервера приложений), иметь отдельную консоль (в смысле dashboard) со всему релевантными метриками, уметь их правильно истолковать.

    2. Что можно сделать самому на сервере, чтобы максимально быть готовым к ддосу? Кроме правил iptables есть ли еще какие-то фичи?
    Разрешить только рабочий трафик, запретить весь остальной. Организовать out-of-band доступ к серверам/инфраструктуре. С моей точки зрения, стоит стремиться к тому, чтобы рабочий сервер мог в штатном режиме обработать трафик, утилизирующий всю его канальную емкость.

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

    4. если я купил много прокси серверов и провожу ддос атаки на свой с целью проверить нагрузки и отказоустойчивость, это я тоже закон нарушил? Ботнет же, атаки во все поля....
    Опять же ничего не могу сказать касательно законности подобных действий. Намекну, если неизвестный аноним, соблюдая минимальные предосторожности, заказал двум-трем популярным DDoS-сервисам [тестовую] атаку на вашу инфраструктуру, то вы-то тут при чём?

    5. Отслеживается ли вообще активность таких атак как-то по сети? Не зря же китайцы фаервол себе захерачили, наверное отслеживается? Почему тогда школьников не попересажали еще, вероятно, отслеживается плохо?
    Подобная активность, насколько мне известно, в основном отслеживается профильными организациями (например, Arbor networks). Касательно второго и третьего вопросов ничего не могу сказать.

    6. Как ведут себя провайдеры? им проще клиента отключить, как я понимаю, верно? Но если ДНС прописаны на сервера хостинг провайдера, как его не выброси, атаки пойдут именно туда. Все равно придется фильтровать как-то... Как вообще борятся с атаками хостинги и провайдеры? Не сидят же они сложа руки?
    Если трафик до клиента представляет угрозу работоспособности хостинга в целом (например, вследствие чрезмерной утилизации аплинков), то трафик до него, как правило, блокируется (вручную при помощи ACL на оборудовании вышестоящего провайдера, при помощи BGP blackhole и т.д.). При наличии, может использоваться специализированное оборудование.

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

    Статьи:
    www.incapsula.com/blog
    https://blog.cloudflare.com/
    www.arbornetworks.com/asert
    www.arbornetworks.com/resources/media-library/ente...
    nsfocusblog.com/tag/anti-ddos
    www.team-cymru.org/articles.html
    Некоторые технологии, полезные для защиты: BGP Anycast, BGP RTBH, BGP flowspec, BPF. В области L7-анализа и фильтрации различных технологий и подходов больше.

    А то сплю плохо.
    Высыпайтесь.
    Ответ написан
    Комментировать
  • Как защитить серверы от DDoS с помощью Cisco?

    @throughtheether
    human after all
    Я считаю, что перед тем, как покупать новые устройства, крайне желательно оптимизировать инфраструктуру с целью повышения ее надежности. Поэтому в комментарии коснусь и других тем, не только анти-DDoS решений.

    Есть несколько десятков серверов в двух стойках к которым в сумме подведено около 10 Gbps
    Что значит около 10 Гбит/с? Используются 10-гигабитные линки или агрегация из нескольких гигабитных? По некоторым соображениям первый вариант предпочтительнее.

    Периодически «приходят» атаки в несколько гигабит или более и забиваю канал.
    Интенсивность трафика вам известна откуда? Необходимо понимать, что если мусорный трафик представляет собой UDP или сегменты TCP без установления сессии, то вполне возможна такая ситуация, когда к вашему провайдеру приходит 10-20 гигабит/c адресованного вам трафика, а до вас доходит лишь его часть. Если есть возможность, запросите статистику (данные netflow) хостинг-провайдера.

    Хотим сделать схему с защитой с помощью сетевого оборудования Cisco (или какого-либо другого) внутри ДЦ, чтобы не пользоваться данным внешним сервисом и не менять IP.
    Касательно оборудования Cisco. Было у Cisco Systems решение Clean Pipes, предназначенное для противодействия DDoS-атакам. Состояло из двух компонент - детектора аномалий (Cisco Traffic Anomaly Detector, использовалось опционально) и собственно фильтрующего устройства (Cisco Anomaly Guard). Оба устройства имеют статус End-of-life. Далее совместно с Arbor Networks была разработана архитектура Clean Pipes 2.0, где, насколько мне известно, основную работу выполняло устройство Arbor Peakflow TMS (threat management solution). О существовании современного устройства под брендом Cisco Systems, разработанного для противодействия DDoS-атакам, мне неизвестно.

    Подскажите, пожалуйста, возможно ли это и, если да, то в какую сторону копать?
    Во-первых, определитесь, зачем вам это. Если мусорный трафик на клиента приводит к недоступности вашей сети (т.е. к полной утилизации линка), то это одно. В таком случае вам поможет BGP blackhole (RTBH, remotely triggered blackhole filtering), отбрасывая весь трафик до клиента. Эффективно клиентский хост будет недоступен (т.е. DoS-атака удалась, отказ в обслуживании достигнут), но мусорный трафик будет отброшен на оборудовании провайдера, не влияя на работоспособность вашей сети. На мой взгляд, иметь настроенный RTBH необходимо. Для этого можно использовать, например, программный BGP клиент, вроде exabgp или quagga.

    Если вы планируете фильтровать клиентский трафик (т.е. отбрасывать мусорный и пропускать "полезный", что бы это ни значило), то RTBH не подойдет. Возможные варианты (с которыми я работал либо работу которых наблюдал) аппаратных решений - грамотно настроенный сервер под Linux/*BSD с картами Intel (дешево, гибко, множество нюансов), Juniper SRX подходящей мощности (дорого, от некоторых атак вполне защищает, но, на мой взгляд, специализированное решение предпочтительнее), Arbor Peakflow TMS (дорого, красивый интерфейс, в целом понравилась работа с ним), Периметр от МФИ-Софт (работает, но не без нюансов).

    Кроме самого устройства или внешнего сервиса, как я уже упоминал, следует, на мой взгляд, удостовериться, что:
    1) сеть находится под всесторонним мониторингом
    2) имеется либо отдельная (management) сеть для управления, либо настройки QoS на линках, резервирующие полосу для трафика систем управления.
    3) настроена защита CPU сетевых устройств (Control plane protection policy в cisco-мире)
    4) отсутствуют другие узкие места (например, ECMP в том или ином виде, агрегация двух линков в 1 гигабит/c не во всех случаях дает пропускную способность в 2 гигабита/с)

    Подводя итог, скажу, что проблема устойчивости работы сети в целом и защиты от DDoS-атак в частности - комплексная, и решать ее стоит соответственно.
    Ответ написан
    Комментировать
  • SYN Flood DOS Attack. Как разобраться, что к чему и почему не работает?

    @throughtheether
    human after all
    Пытаюсь организовать SYN Flood на сервер сугубо в научных целях ( курсач у меня такой)
    Что я делаю не так? Как добиться желаемого SYN Flood Attack?
    Если вам надо ехать, то используйте hping. Если и шашечки нужны, то посмотрите в исходники этой утилиты.
    Ответ написан
    Комментировать
  • Сайт ddos-атакуют, что делать в то время, пока хостинг разбирается с атакой?

    @throughtheether
    human after all
    Вот и хотелось бы спросить опытных людей, что делать в такой ситуации?
    Делать надо было раньше. Готовить внятный мониторинг, чтобы не гадать, атака это или сервер не справляется с нагрузкой. Налаживать контакты с хостером, чтобы не гадать, реально ли наблюдается атака или это тонкий намек на то, что вам пора арендовать более мощный VPS. Я не понимаю, почему, когда чуть ли не в газетах о DDoS-атаках пишут, единицы из тех, чье финансовое благополучие напрямую зависит от доступности их сайта, примеряют ситуацию на себя и задумываются о технических аспектах безопасности.
    Три дня назад сайт стал выдавать 504, 500 и т.д. ошибки.
    Очень хорошо, что сервер отвечает статусами 504 и 500. Это значит, что он отвечает. Это значит, что канальная емкость не полностью утилизирована. Это значит, что, скорее всего, есть шанс обойтись оптимизацией непосредственно на сервере. Найдите грамотного серверного администратора, согласного вам помочь.
    Хостинг сказал, что на наш сервер идет ddos-атака и они делают все возможное чтобы решить проблему.
    На вашем месте я бы запросил краткий отчет от сотрудников хостера. Какая атака наблюдается (качественные, количественные характеристики), какие меры предприняты, что из этого вышло. Запросил бы дамп "вредоносного" трафика.
    каким образом все таки правильно хотя бы временно запустить сайт в работу?
    На вашем месте я бы собрал на коленке минималистичный статический сайт с описанием ваших товаров и контактными данными. Вы таким образом сможете неудобно, без формы обратной связи и всплывающего окна чатика с консультантом, но все-таки получать заказы.
    Вы можете разместить его на своем сервере, это, на мой взгляд, самый прямой путь. Вы можете разместить его где-то на другом хостинге, но придется ждать обновления DNS-записей и прочая.
    что делать в такой ситуации?
    Самое главное - сделать из этой ситуации выводы и предпринять соответствующие меры в ближайшем будущем.
    Ответ написан
    Комментировать
  • Как защититься от Ddos наименее затратным способом?

    @throughtheether
    human after all
    В результате сайт полег от атаки через пару часов.
    Вы уверены, что это именно целенаправленная атака? Исходя из каких данных вы делаете такой вывод? В моем опыте были пациенты, у которых сервер генерировал главную страничку при помощи SQL-запроса с множеством операторов join, с полным отсутствием кэширования, со специфической конфигурацией (nginx на windows). Сайт переставал работать при 30 одновременных клиентах. Естественно, внешние мероприятия по фильтрации трафика могли гарантировать работоспособность сервера только при условии его доступности узкому кругу веб-клиентов. Как правило, объяснить это таким людям было затруднительно.
    Я вчера подключила couldflare, не знаю поможет ли это при уже идущей атаке
    Может помочь. Но, насколько мне известно, можно узнать ip-адрес, на который cloudflare переадресовывает трафик, и соответственно направить атаку. Соответственно, нужны дополнительные меры защиты на вашем хостинге (запретить входящий трафик, кроме перенаправляемого с cloudflare)
    Атака http - флуд. Есть ли какие-то еще способы защиты?
    Я как сетевик выскажу свое мнение (стоит учитывать проф. деформацию личности). Я полагаю, что говорить о дополнительных мерах защиты (аппаратные решения и прочая) имеет смысл только если входящий трафик на сервер составляет значительную долю (50-60%) пропускной способности интерфейса. Я полагаю, что сервер, в идеале, должен выдерживать line-rate объем трафика, то есть объем трафика, полностью утилизирующего пропускную способность сетевого интерфейса. И только исчерпав возможности оптимизации сервера, имеет смысл обращаться к внешним решениям. Незрелая оптимизация в данном случае, я полагаю, вредна. Однако, учитывая наличие сервисов вроде cloudflare, использовать их в ряде случаев (вроде вашего) полезно.
    Слышала о каких-то фаерволах, плагинах для wordpress (сайт на нем стоит
    Если много запросов из нецелевых стран, что бывает при покупке вероятным злоумышленником дешевого ботнета, то можете попробовать фильтровать клиентов по странам, используя базы geoIP. Но будьте готовы к ошибкам определения. Также стоит задуматься о настройках кэширования.
    Дорогой хостинг пока нет возможности купить...
    У вас используется shared-хостинг? Если да, то задумайтесь о покупке VPS, настроив кэширование при помощи cloudflare. Это даст вам гибкость настроек. Хотя в редких случаях shared-хостинг может быть более устойчив к некоторым атакам, нежели дешевый VPS.

    Вкратце - вы сделали что могли (подключили сервис cloudflare). Для дальнейшей настройки необходимо понимать многие нюансы работы вашего сайта. DDoS-атаки в вашем случае может и не наличествовать. Вам стоит задуматься об организации грамотной поддержки вашего сайта (нанять системного администратора или самостоятельно углубиться в этом направлении).
    Ответ написан
    1 комментарий
  • Проксирование трафика игрового сервера

    @throughtheether
    human after all
    Вы упомянули что некую "защиту от DDoS" вам предоставляет хостер (можете кстати уточнить модель аппаратного решения?). Если предположить, что ваши сервисы используют UDP (что, думаю, корректно для случая с CS-подобными игровыми серверами без дополнительных оберток трафика), то мысли такие.

    Я полагаю, что максимум, что хостер может сделать - это ограничить трафик до сервера при DDoS-атаках (policing, причем хорошо, если политики учитывают порты назначения, а не только IP-адреса) или полностью заблокировать трафик до одного сервера, спасая инфраструктуру от чрезмерного трафика (bgp blackhole к аплинкам, эффективно атакуемый сервер все равно будет недоступен).

    При использовании UDP возникает проблема аутентификации трафика. При использовании TCP есть возможность отделить тех, кто действительно устанавливает соединение, от тех, кто шлет SYN-сегменты с подставными адресами - вторые не смогут ответить ACK-сегментом с правильным значением acknowledgement на наш SYN-ACK-сегмент (ну или есть варианты с специально сформированным кривым SYN-ACK ответом, легитимный хост ответит RST c правильным acknowledgment и перепошлет SYN через примерно 3 секунды). В случае с UDP мы такой роскоши лишены. Мы не можем средствами самого UDP определить, кто подделывает адреса, а кто является легитимным хостом. Полагаю, неплохим решением было бы вести на сервере список IP-адресов клиентов и каким-либо образом передавать его хостеру, чтобы он в случае атаки блокировал весь трафик, не удовлетворяющий списку. Но хостер не внедрит новомодныя SDN-технологии (программно-определяемые сети) и не даст вам доступ к соответствующему API, это будет довольно затруднительно организовать.

    Далее, что касается проксирования трафика. Самый наивный вариант - udp-прокси, т.е. сокет на сервере 1 принимает данные и копирует их в сокет, отправляющий данные на сервер 2. На сервер 2 пакеты, вмещающие соотвествующие датаграммы, придут с полем адреса источника, равном адресу сервера 1. Со стороны сервера 2 будет казаться, что все игроки имеют один и тот же адрес (если не предпринять никаких мер на уровне приложения, например добавлять в датаграммы дополнительный заголовок с адресом). Иногда это недопустимо.

    Более внятный вариант - натирование. Примерная схема на иллюстрации.
    game-proxy.png
    Подобная схема часто реализуется при балансировке нагрузки при помощи решений вроде F5. Здесь используется Destination NAT пакетов от клиента к серверу и Source NAT пакетов от сервера к клиенту. Весь трафик от S2 надо будет направить через S1, это может потребовать поднятия какого-либо (например, GRE) туннеля. Также необходимо учесть, что IP-адреса могут использоваться внутри L7-протокола (наиболее известный случай - FTP), это может поднять новые вопросы.

    Вообще говоря, ваша задача - широкое минное поле для экспериментов.
    Ответ написан
    Комментировать
  • Почему Ubuntu рассылает SYN Flood?

    @throughtheether
    human after all
    Я правильно понимаю, что azmsk.com - ваш сервер? В таком случае, на дампе видно только, что хост с адресом 5.23.77.128 (5-23-77-128.emax.is) шлет вам RST-сегменты. Судя по различным портам назначения, это ответы на SYN-сегменты, инкапсулированные в IP-пакеты с адресом вашего сервера. Я предполагаю, имеет место SYN-flood с подменой адреса источника. В пользу этой версии, насколько я понимаю, говорит и постоянное значение поля seq tcp-заголовка. На вашем дампе я не вижу доказательств того, что ваш сервер участвует в SYN-flood атаке.

    На будущее, пользуйтесь, пожалуйста, опцией "-nn" tcpdump, так гораздо проще читать дампы. А еще лучше, собирайте образцы трафика в отдельный .pcap-файл.
    Ответ написан
    7 комментариев
  • Что делать, если DDOS идет через мой сервер в Hetzner?

    @throughtheether
    human after all
    Во-первых, необходимо проверить актуальность претензий. Не знаю насчет hetzner, но некоторые другие хостеры любят перенаправлять жалобы напрямую, не удосужившись элементарной проверкой. В вашем случае, вполне вероятна подделка адреса источника.
    Итак, необходимо
    1) Посмотреть на уровень трафика от вашего сервера в указанное время. Я надеюсь, это мониторится.
    2) Написать в hetzner, что вы просите их проверить претензию на соответствие netflow-данным (я надеюсь, они их собирают). Грубо говоря, они должны подтвердить или опровергнуть, был ли трафик с вашего хоста на атакуемый сервер в указанное время на указанный порт, и в каком количестве.

    TL;DR: Не факт, что эта атака к вам имеет какое-либо, кроме использования вашего адреса, отношение.
    Ответ написан