Без роутера уже сложно представить офис или дом. Он создает частную сеть, благодаря которой выходят в интернет, чтобы работать, учиться или просто смотреть контент. Через него проходит весь трафик: поисковые запросы, файлы, электронные письма, фотографии, фильмы и многое другое. Важно обеспечить безопасность роутеру, чтобы он не вышел из строя, а также сохранил конфиденциальность входящих и исходящих данных пользователей.
В тексте читатель встретит два понятия: роутер и маршрутизатор. В чем их разница? На самом деле это два разных названия одного и того же устройства. «Роутер» — это транслитерация английского слова «router», которым обозначается аппарат для маршрутизации пакетов данных между различными сегментами сети на основе специальных таблиц. Отсюда и появился второй термин — «маршрутизатор». Оба слова использовать корректно.
Может ли роутер быть атакован
Генерация большого количества запросов выводит из строя сайт. Пользователь не может совершить покупку в интернет-магазине или зайти в личный кабинет. Зачастую такие сбои в работе сайта провоцируют кибератаки. То же самое может произойти и с роутером.
3 распространённых угрозы для маршрутизатора:
1. DDoS-атака
Злоумышленники утилизируют полосы пропускания, чтобы вывести систему из строя из-за исчерпания системных ресурсов (каналов связи, процессов, памяти). Все типы подобных атак совершаются путем отправки большого количества запросов на атакуемый ресурс.
2. Взлом сети
Более изощренные зловреды атакуют маршрутизатор, чтобы получить доступ к корпоративной сети организации или домашней сети пользователя. Они перехватывают весь трафик, который через них проходит, чтобы использовать его в своих целях.
3. Поглощение ботнетом
Роутер заражают вредоносным ПО, и он становится частью ботнета, принимая участие в DDoS-атаках. Зараженный роутер может стать инструментом для шпионажа через IoT (Интернет вещей), накручивать число просмотров роликов или статей или скрыто майнить криптовалюту.
Всемирная организация по борьбе со спамом Spamhaus занимается изучением спама и других киберпреступлений. Согласно анализу за 2021 год, было зафиксировано 9491 атак с помощью ботнетов. Ожидаем, что данные за 2022 покажут небывалый прирост в количестве инцидентов с участием ботнетов
Как защитить свою сеть и что делать, если ваш роутер оказался под атакой — рассмотрим далее.
Рядовой пользователь вряд ли обнаружит атаку самостоятельно, но может заметить ее «симптомы»: медленный интернет, долгая загрузка страниц, сбои в работе подключения. Если пользователь обладает базовыми знаниями по системному администрированию, можно использовать диагностику операционной системы.
Если у вас Windows, откройте встроенную программу «Просмотр событий» — она покажет ошибки. У Linux за это отвечает просмотр log-файла. Также пользователь может подключиться к роутеру и запустить проверочные утилиты:
- Victoria — используют для оценки состояния жесткого диска.
- BlueScreenView — чтобы понять причину «синего экрана смерти».
- Memtest — для проверки состояния оперативной памяти.
Специалист по сетевой безопасности с помощью анализа базового состояния сети сможет определить, как сеть работает в обычном режиме и увидит, если возникнет нетипичное поведение.
Второй способ обнаружения и блокировки кибератак — использование flow-протоколов. Это один из самых эффективных инструментов, которым не следует пренебрегать. Суть flow-протокола заключается в анализе «слепка трафика». Он проходит через определенные интерфейсы, и специалист видит данные о пакетах, а впоследствии сможет накапливать аналитику. Это поможет увидеть аномалии и оперативно заблокировать их. Вариантов использования flow-протоколов множество — все зависит от того, что поддерживает конкретный маршрутизатор.
Могут ли DDoS-атаки повредить маршрутизатор
Если представить, что атакующий — это грозный злоумышленник с кувалдой, который ворвется в серверную, а потом со всего маху ударит по маршрутизатору, в таком случае, он, конечно же, выйдет из строя. В реальности DDoS-атаки физически повредить роутеру едва ли смогут, но создадут временные трудности или сделают сервис недоступным.
Перезапуск маршрутизатора как попытка спастись от DDoS
В сети можно найти советы по борьбе с кибератаками путем полного отключения или перезапуска маршрутизатора. Авторы статей рекомендуют выключить роутер во время кибератаки, чтобы интернет-провайдер назначил новый IP-адрес. Но важно понимать, что изменится только динамический IP, статический же останется прежним. И если у злоумышленника будет именно он, то такой способ борьбы с кибератакой бесполезен. Также стоит отметить, что данный пример относится исключительно к сегменту домашнего интернета и как способ борьбы с DDoS в корпоративных сетях даже не рассматривается.
После мощных атак может случиться так называемое «залипание соединения». Атака завершилась, но маршрутизатор не пропускает пакеты данных. В таком случае лучше перезагрузить технику. Это частный пример, который встречается довольно редко.
Зачастую перезапуск маршрутизатора ничего не исправит, а напротив — выполнит цель злоумышленника. Ведь в таком случае техника выключится, что приведет к недоступности ресурса, а это именно то, чего и добиваются атакующие.
Как остановить DDoS-атаку на роутер
Легче предупредить, чем лечить — идеальный пример того, как строить защиту своей сети. Но что делать в ситуации, когда атака идет, а защиты нет? Представьте сильный дождь, который застал путника в дороге. Что он сделает, чтобы защититься от него? Будет искать укрытие. Например, под зонтиком. В этой роли выступит провайдер, который защитит инфраструктуру от нападения. Вы сможете выбрать почасовую тарификацию и платить только тогда, когда вас атакуют или подобрать специализированное решение под ваш проект.
Как защитить маршрутизатор от DDoS
Частота DDoS-атак растет из года в год. Данные международной организации Spamhaus за 2021 год и наша статистика тому подтверждение. Незащищенная сеть может стать причиной серьезных убытков. Чтобы избежать этого, достаточно следовать нескольким правилам, которые для удобства разделим на две категории: «защита домашней сети» и «защита корпоративной сети». Так как задачи и нагрузочные мощности разные, способы их защиты будут отличаться.
Чтобы защитить домашний роутер от несанкционированного доступа, следуйте нескольким правилам:
Придумайте надежный пароль. Он должен иметь как минимум 9 знаков, среди которых будут цифры, символы, прописные и строчные буквы. Также каждые пол года рекомендуется менять пароль.
Проверяйте обновления на сайте производителя роутера. Обновляйте прошивку по мере выхода новых патчей. Узнать, как обновить ПО устройства, можно на сайте поставщика.
Отключите удаленный доступ к настройкам администратора. Инструкция по отключению будет на сайте поставщика вашего роутера.
Сделайте вашу сеть Wi-Fi невидимой. Используйте руководство пользователя для вашей модели роутера. Ваша сеть перестанет отображаться в списке доступных беспроводных сетей, и обнаружить ее будет очень сложно.
Проверьте, корректно ли работает встроенный фаервол в вашем роутере. В настройках исключите свободный доступ к устройству из интернета.
Не используйте конфигурации и файлы, скачанные из интернета. Они могут нести в себе скрытую угрозу в виде вредоносного вируса, который передаст ваши данные злоумышленнику или повредит их.
Основная защита маршрутизатора корпоративной сети должна строится на комплексе двух мер:
1. Control Plane Policing
Технология превентивной защиты от сетевых атак, которая ограждает ресурсы от внешнего воздействия. CoPP фильтрует и ограничивает трафик, поступающий на маршрутизатор.
2. Защита сети по модели SaaS
Чтобы обеспечить бесперебойную работу корпоративной инфраструктуры, используйте надежную защиту сети, которая создаст оптимальную маршрутизацию трафика с фильтрацией от всех известных видов DDoS-атак, а также сможет защитить онлайн-сервисы вне зависимости от используемых протоколов.
Читайте в телеграм-канале DDoS-Guard
Анонсы, статьи, истории и советы по кибербезопасности. Каждый месяц собираем дайджест о самых громких событиях
Подписаться
Теперь, когда мы рассмотрели основные меры безопасности для роутера, перейдем к более конкретным методам предотвращения DDoS-атак и других сетевых угроз.
Фильтрация трафика
Фильтрация трафика помогает блокировать нежелательный трафик, направленный на вашу сеть. Вы можете настроить ваш роутер таким образом, чтобы фильтровать входящий и исходящий трафик на основе определенных критериев, таких как IP-адреса, порты или протоколы. Это может снизить вероятность DDoS-атак и предотвратить доступ злоумышленников к вашей сети.
Ограничение скорости соединения
Ограничение скорости соединения — это еще одна техника, которую можно использовать для борьбы с DDoS-атаками. Она заключается в установке лимитов на количество пакетов данных, которые могут быть переданы через вашу сеть за определенный промежуток времени. Это поможет снизить нагрузку на вашу сеть и сделать ее менее уязвимой для атак.
Блокировка IP-адресов, связанных с атаками
При обнаружении DDoS-атаки или другой сетевой угрозы, блокировка IP-адресов, связанных с атакой, может оказаться полезной мерой. Вы можете настроить ваш роутер для автоматической блокировки IP- адресов, которые генерируют аномально большое количество трафика. Обратите внимание, что этот метод может привести к блокировке легитимных пользователей, если их IP-адреса были подделаны злоумышленниками.
Установка правил файервола
Правила файервола могут быть настроены для ограничения доступа к вашей сети на основе определенных критериев, таких как типы протоколов, порты или IP-адреса. Правильно настроенный файервол может существенно повысить безопасность вашей сети и предотвратить DDoS-атаки, блокируя вредоносный трафик.
Облачные услуги для предотвращения
DDoS-атак Облачные сервисы, такие как Cloudflare или Amazon Web Services (AWS), предлагают решения для предотвращения DDoS-атак, которые могут быть интегрированы с вашей сетью. Они обрабатывают трафик на своих серверах, фильтруют аномальные паттерны и блокируют вредоносный трафик, прежде чем он достигнет вашей сети. Эти сервисы могут быть особенно полезными для компаний с высоким уровнем трафика или тех, которые подвергаются частым DDoS-атакам.
Теперь, когда вы знакомы с основными методами защиты от DDoS-атак, давайте рассмотрим дополнительные настройки безопасности, которые помогут укрепить ваш роутер и сеть. В следующем разделе мы поговорим о создании отдельной сети для гостей, использовании VPN, DNS-фильтрации и интрузионных систем обнаружения и предотвращения. Мы также поделимся реальными примерами из практики нашей компании, когда успешно справлялись с DDoS-атаками и другими сетевыми угрозами, и предложим рекомендации по обслуживанию и поддержке сетевого оборудования.
В наше время интернет стал неотъемлемой частью нашей жизни, и защита от различных атак стала одним из основных вопросов для всех пользователей. Одним из наиболее распространенных видов атак является DDoS (Distributed Denial of Service). Она заключается в том, что злоумышленник использует множество компьютеров для одновременного обращения к одному ресурсу и вызывает перегрузку сервера, что приводит к недоступности сервиса для обычных пользователей.
Чтобы защитить свою сеть и предотвратить подобные атаки, необходимо правильно настроить роутер. Существует несколько способов защиты от DDoS атак, и каждый из них имеет свои особенности и нюансы. Рассмотрим некоторые из них.
Во-первых, необходимо обновить программное обеспечение роутера. В новых версиях могут быть исправлены уязвимости, которые могут быть использованы злоумышленниками для проведения DDoS атак. Также рекомендуется использовать сильные пароли для доступа к роутеру и регулярно менять их.
Во-вторых, следует настроить файрволл. Эта функция позволяет контролировать входящий и исходящий трафик и блокировать подозрительные пакеты данных. Важно правильно настроить правила файрволла, учитывая особенности вашей сети и тип атак, которые вы хотите предотвратить. Также можно использовать специализированное ПО для обнаружения и снижения влияния DDoS атак.
Содержание
- Важность защиты от DDoS атак в роутере
- Что такое DDoS атака и как она работает?
- Почему роутер — первая линия защиты от DDoS атак?
- Как выбрать роутер с хорошей защитой от DDoS атак?
- Особенности настройки защиты от DDoS атак в роутере
- Важные рекомендации по настройке защиты от DDoS атак в роутере
- Что делать при обнаружении DDoS атаки на роутер?
- Дополнительные методы защиты от DDoS атак в роутере
Важность защиты от DDoS атак в роутере
В настоящее время, когда постоянно развивающийся интернет стал важной частью нашей жизни, защита от DDoS атак становится неотъемлемым условием безопасности сети. DDoS (Distributed Denial of Service) атака представляет собой попытку насытить сетевой ресурс путем отправки огромного количества запросов со множества источников одновременно, что может привести к его доступности только для атакующих и отказу обслуживания для легитимных пользователей.
Несмотря на то, что DDoS атаки могут быть направлены на различные узлы сети, включая веб-серверы, приложения и DNS-серверы, защита от таких атак в роутере принимает особое значение. Роутер, как ключевой элемент инфраструктуры сети, обеспечивает передачу данных между устройствами и сетями, поэтому его защита от DDoS атак становится первоочередной задачей.
Основная цель защиты от DDoS атак в роутере — предотвратить потерю доступности сервисов и обеспечить безопасность сети. Проведение DDoS атак может привести к серьезным финансовым и репутационным потерям для организаций, а также нарушить нормальное функционирование сети.
Существует несколько методов защиты от DDoS атак в роутере, включая фильтрацию пакетов, использование аппаратных средств, настройку межсетевых экранов и использование облачных сервисов защиты. Комбинированный подход, включающий несколько методов, обеспечивает наиболее эффективную защиту от DDoS атак.
В целом, защита от DDoS атак в роутере является одной из важных составляющих обеспечения безопасности в сети. Надежная защита от DDoS атак позволяет предотвратить потерю доступности сервисов и обеспечить непрерывное функционирование сети, что является основой стабильности и надежности работы организации в современном интернете.
Что такое DDoS атака и как она работает?
DDoS (Distributed Denial of Service) атака – это атака на сетевое устройство или сервер с целью перегрузки его ресурсов и нарушения его нормальной работы. Основная идея DDoS атаки заключается в одновременном использовании большого количества компьютеров или других устройств для отправки огромного количества запросов на целевой объект.
Основная цель DDoS атаки – создать такую нагрузку на целевой объект, чтобы он перестал функционировать нормально и стал недоступным для легитимных пользователей и посетителей. Атаки DDoS могут быть направлены на различные объекты, включая веб-сайты, серверы, сетевое оборудование, приложения и другие инфраструктурные элементы.
В DDoS атаках используются ботнеты – сети компьютеров, инфицированных вредоносными программами, которые могут быть удаленно управляемыми злоумышленниками. Злоумышленники могут использовать ботнеты для распределения нагрузки между большим количеством компьютеров, чтобы создать иллюзию об атаке с большого количества источников.
DDoS атаки могут привести к серьезным проблемам, таким как потери доходов от недоступности онлайн-сервисов, повреждение репутации компании, срыв сроков выполнения задач и прочие негативные последствия. Поэтому защита от DDoS атак становится все более важной для организаций и индивидуальных пользователей.
Почему роутер — первая линия защиты от DDoS атак?
DDoS (Distributed Denial of Service) атаки остаются актуальной проблемой в современном интернете. Они представляют угрозу как для индивидуальных пользователей, так и для крупных организаций и провайдеров. Однако, имея правильно настроенный роутер, можно существенно укрепить свою защиту.
Роутер – это устройство, которое контролирует передачу данных между локальной сетью (LAN) и удаленной сетью, такой как Интернет. Он играет ключевую роль в обеспечении безопасного и надежного соединения с внешним миром.
- Фильтрация трафика: Роутер позволяет настраивать правила фильтрации трафика, блокируя подозрительные или вредоносные пакеты данных. Это позволяет предотвратить дальнейшую передачу вредоносного трафика в локальную сеть.
- Синхронизация с сервисами защиты: Многие роутеры могут синхронизироваться с сервисами защиты от DDoS атак. Это позволяет получить актуальные списки заблокированных IP-адресов и применять эти настройки на уровне роутера. Такой подход помогает более эффективно блокировать злонамеренный трафик до его попадания в локальную сеть.
- Распределение нагрузки: Роутер может использовать техники распределения нагрузки (load balancing), чтобы равномерно распределять трафик между разными серверами. Это может снизить вероятность успешной DDoS атаки, так как атакующему будет сложнее перегрузить один сервер.
- Логирование событий: Роутер может вести журнал событий, который позволяет отслеживать и анализировать все сетевые активности. Это помогает выявить аномальные паттерны трафика, которые могут свидетельствовать о DDoS атаке.
Важно отметить, что роутер является первой линией защиты только в пределах локальной сети. Для полноценной защиты от DDoS атак необходимо использовать комплексный подход, включающий другие меры защиты, например, использование фаервола, IDS/IPS систем, а также сотрудничество с провайдером интернет-соединения.
В заключение, настройка роутера с целью защиты от DDoS атак — это важная профилактическая мера. Она помогает снизить риск воздействия DDoS атак на локальную сеть и предотвратить серьезные проблемы с доступностью и безопасностью ваших сетевых ресурсов.
Как выбрать роутер с хорошей защитой от DDoS атак?
Защита от DDoS атак стала одним из основных требований при выборе роутера. Ведь такие атаки могут серьезно нанести вред вашей сети и ограничить доступ к интернету. При выборе роутера с хорошей защитой от DDoS атак стоит обратить внимание на следующие факторы:
- Поддержка DDoS защиты: Убедитесь, что роутер имеет встроенную DDoS защиту. Это позволит обнаружить и блокировать подозрительный трафик, связанный с атакой DDoS. Исследуйте функции защиты, предлагаемые роутером, и убедитесь, что они подходят для ваших потребностей.
- Пропускная способность: Чем выше пропускная способность роутера, тем лучше он справляется с атаками DDoS. Выбирайте роутер с высокой пропускной способностью, чтобы обрабатывать большой объем трафика и снижать вероятность проблем при атаке DDoS.
- Файервол: Роутер с встроенным файерволом поможет защитить вашу сеть от вредоносных программ и атак. Файервол с функциональностью DDoS защиты позволит обнаружить и блокировать подозрительный трафик, связанный с атакой DDoS.
- Регулярные обновления: Уровень защиты роутера от DDoS атак может изменяться со временем, поэтому важно выбирать роутер, который регулярно обновляется. Обновления могут включать в себя новые функции защиты от DDoS атак или улучшенные алгоритмы обнаружения атак.
Помимо указанных факторов, также рекомендуется прочитать отзывы и рейтинги роутеров для оценки их производительности и надежности в условиях атак DDoS. Выбор роутера с хорошей защитой от DDoS атак поможет обеспечить безопасность вашей сети и сохранить доступ к интернету в случае атаки.
Особенности настройки защиты от DDoS атак в роутере
Защита от DDoS атак является одним из основных аспектов обеспечения безопасности компьютерных сетей и серверов. Для этого необходимо правильно настроить роутер, чтобы минимизировать риск возникновения DDoS атак и эффективно отражать их.
1. Обновление прошивки
Перед началом настройки защиты от DDoS атак необходимо убедиться, что роутер работает на последней версии прошивки. Производители постоянно выпускают обновления, которые исправляют уязвимости и улучшают безопасность роутера.
2. Включение фильтрации трафика
Для защиты от DDoS атак важно включить фильтрацию трафика на роутере. Это позволит отсеять подозрительный или вредоносный трафик, благодаря чему роутер будет держать сеть свободной от DDoS атак.
3. Установка ограничений на количество подключений
Один из основных признаков DDoS атаки — огромное количество подключений с одного IP адреса или нескольких адресов. Для предотвращения таких атак можно установить ограничения на количество одновременных подключений с одного адреса. Это поможет снизить риск возникновения DDoS атак.
4. Защита от SYN-флуд атак
SYN-флуд атака является одним из наиболее распространенных видов DDoS атак. Она направлена на исчерпание ресурсов сервера, переполняя его подключениями. Для защиты от SYN-флуд атак необходимо настроить специальные параметры на роутере, которые позволят обнаружить и блокировать подозрительные пакеты SYN.
5. Использование системы обнаружения и предотвращения DDoS атак
Для более эффективной защиты от DDoS атак рекомендуется использовать специализированные системы обнаружения и предотвращения таких атак. Это позволит автоматически распознавать и блокировать подозрительный трафик перед тем, как он достигнет сервера.
6. Мониторинг и анализ трафика
Необходимо регулярно мониторить и анализировать трафик, проходящий через роутер. Это позволит выявить подозрительные или аномальные активности и предпринять необходимые меры для защиты от возможных DDoS атак.
Защита от DDoS атак является сложным и многогранным процессом, требующим системного подхода и постоянного мониторинга. Несмотря на то, что роутеры могут предоставлять множество возможностей в области защиты, важно также следить за развитием новых методов DDoS атак и использовать современные решения для их предотвращения.
Важные рекомендации по настройке защиты от DDoS атак в роутере
1. Обновляйте прошивку роутера.
Устаревшая прошивка роутера может иметь уязвимости, которые могут быть использованы злоумышленниками для запуска DDoS атак. Регулярно проверяйте доступность новых версий прошивки на сайте производителя роутера и устанавливайте их для повышения безопасности.
2. Включите фильтрацию пакетов.
В большинстве современных роутеров есть возможность настроить фильтрацию пакетов, которая позволяет отсеивать нежелательный трафик, включая потоки пакетов, характерные для DDoS атак. Настройте фильтры для блокировки пакетов, которые имеют неправильную структуру или объемы трафика, превышающие норму.
3. Включите защиту от SYN флуда.
Синдром исчерпания ресурсов (SYN флуд) является одним из наиболее распространенных видов DDoS атак. Включите настройку «SYN Flood Protection» (Защита от SYN флуда), которая не позволит злоумышленникам засыпать ваш роутер запросами на установку соединения.
4. Настройте ограничение скорости.
Установите максимально возможную скорость передачи данных для каждого подключенного устройства. Это поможет снизить влияние DDoS атак, так как количество доступных ресурсов будет распределено между всеми устройствами.
5. Используйте отдельные VLAN.
Выделите отдельные сети (VLAN) для разных типов устройств и сервисов (например, компьютеры, телефоны, серверы). Это сократит возможность распространения атаки на все устройства и снизит риск потери данных.
6. Включите IP Spoofing Protection.
IP Spoofing (подделка IP адреса) является одним из методов, используемых в DDoS атаках. Включите настройку «IP Spoofing Protection» (Защита от подделки IP адреса), которая поможет распознать пакеты с неправильными или поддельными IP адресами и блокировать их.
7. Установите пространство маршрутизации / Routing Domains.
Настройте отдельное пространство маршрутизации для разных сегментов сети и разных услуг. Это поможет изолировать атаки на одну часть сети от других и снизить шансы успеха DDoS атаки.
8. Включите ICMP Rate Limiting.
ICMP Rate Limiting (ограничение скорости ICMP) позволяет установить максимальное количество ICMP (Internet Control Message Protocol) запросов, которые может обработать роутер за определенный период времени. Это может помочь снизить нагрузку от DDoS атак, основанных на ICMP запросах.
9. Включите DNS Rate Limiting.
Настройте максимальное количество DNS (Domain Name System) запросов, которое может быть обработано роутером за единицу времени. Это поможет предотвратить зависание роутера из-за высокого числа DNS запросов, которые могут быть использованы в DDoS атаках.
10. Используйте системы обнаружения и предотвращения DDoS атак.
Поставьте систему обнаружения и предотвращения DDoS атак, которая будет мониторить трафик в сети и автоматически отключать устройства, вызывающие подозрение. Это поможет быстро реагировать на атаки и защитить ваш роутер от негативных последствий DDoS.
Следуя этим рекомендациям, вы сможете повысить степень защиты вашего роутера от DDoS атак. Отдайте этому процессу должное внимание, чтобы обеспечить надежную защиту своей сети и предотвратить проблемы, вызванные DDoS атаками.
Что делать при обнаружении DDoS атаки на роутер?
Действия, которые нужно предпринять при обнаружении DDoS атаки на роутер, зависят от типа атаки, уровня нагрузки и возможностей вашего роутера. Вот некоторые рекомендации:
- Отключите подключенные устройства: Если ваш роутер подвергается сильной DDoS атаке, вы можете отключить все подключенные устройства от сети, чтобы уменьшить нагрузку на роутер и предотвратить его перегрузку.
- Перезагрузите роутер: Перезагрузка роутера может помочь временно снизить нагрузку, освободить ресурсы и помочь роутеру справиться с атакой. Определенная модель роутера может предоставить дополнительные функции для защиты от DDoS атаки.
- Обратитесь к провайдеру услуг: Если атака продолжается, важно связаться с вашим провайдером услуг интернета и сообщить о проблеме. Они могут предоставить помощь и предложить специальные Фильтры DDoS, которые могут помочь справиться с атакой на сетевом уровне.
- Изучите логи роутера: Проверьте журналы роутера, чтобы идентифицировать и анализировать арифметику атаки. Это поможет вам понять, какие IP-адреса участвуют в атаке, и определить, нужно ли вам принять дополнительные меры для защиты от них.
- Используйте систему обнаружения DDoS: Рассмотрите возможность использования специализированной системы обнаружения DDoS, которая может распознавать и анализировать атаки, временно отключать атакующие IP-адреса и уведомлять вас о событиях атаки.
- Установите брандмауэры: Настройте брандмауэр на роутере, чтобы блокировать IP-адреса, с которых происходит атака, и фильтровать нежелательный сетевой трафик.
- Попросите помощи у специалистов: Если вы не знаете, как справиться с DDoS атакой или это превышает ваши навыки, рекомендуется обратиться за помощью к специалистам в области сетевой безопасности. Они могут оценить ситуацию, предложить наилучшее решение и помочь вам вернуть работоспособность сети.
Обнаружение и защита от DDoS атак требуют комплексного подхода и использования различных средств защиты. Важно быть готовым и знать, как реагировать, чтобы минимизировать потенциальные угрозы для вашей сети и обеспечить ее стабильную работу.
Дополнительные методы защиты от DDoS атак в роутере
Защита от DDoS атак является важной составляющей обеспечения безопасности сети. Настройка роутера позволяет реализовать основные методы защиты от таких атак, однако, существуют дополнительные меры, которые могут быть применены для повышения эффективности защиты. Ниже приведены некоторые из таких методов.
- Создание списка IP-адресов – разработка списка IP-адресов, которые хотелось бы заблокировать или наоборот, разрешить, может являться дополнительным способом защиты от DDoS атак. Роутер может быть настроен на основе этого списка, чтобы блокировать входящие соединения от нежелательных или потенциально опасных IP-адресов.
- Настройка пропускной способности бандвидта – анализ потоков сетевого трафика и установление ограничения на пропускную способность может помочь снизить негативное воздействие DDoS атак. При недостатке пропускной способности, роутер может применять политики, такие как снижение задержки или отбрасывание пакетов, чтобы предотвратить перегрузку сети во время атаки.
- Использование системы обнаружения и анализа атак (IDS/IPS) – эти системы позволяют обнаруживать и предотвращать DDoS атаки, а также предоставлять отчеты о потенциально опасных событиях. IDS (система обнаружения вторжений) определяет аномальные или вредоносные активности в сети и может принимать меры для их предотвращения, а IPS (система предотвращения вторжений) активно блокирует подозрительный трафик или соединения.
- Использование прокси-серверов – передача трафика через прокси-серверы позволяет отфильтровывать и анализировать входящий и исходящий трафик, что помогает в обнаружении и предотвращении DDoS атак.
Использование этих дополнительных методов защиты от DDoS атак в роутере может значительно усилить общую безопасность сети и обеспечить более эффективную защиту от потенциальных угроз.
Время на прочтение
19 мин
Количество просмотров 60K
По долгу службы мне часто приходится сталкиваться с DDOS на сервера, но некоторое время назад столкнулся с другой атакой, к которой был не готов. Атака производилась на роутер Juniper MX80 поддерживающий BGP сессии и выполняющий анонс подсетей дата-центра. Целью атакующих был веб-ресурс расположенный на одном из наших серверов, но в результате атаки, без связи с внешним миром остался весь дата-центр. Подробности атаки, а также тесты и методы борьбы с такими атаками под катом.
История атаки
Исторически сложилось, что на роутере блокируется весь UDP трафик летящий в нашу сеть. Первая волна атаки (в 17:22) была как раз UDP трафиком, график unicast пакетов с аплинка роутера:
и график unicast пакетов с порта свича подключенного к роутеру:
демонстрируют, что весь трафик осел на фильтре роутера. Поток unicast пакетов на аплинке роутера увеличился на 400 тысяч и атака только UDP пакетами продолжалась до 17:33. Далее атакующие изменили стратегию и добавили к атаке UDP еще и атаку TCP SYN пакетами на атакуемый сервер, а также на сам роутер. Как видно по графику, роутеру стало настолько плохо, что он перестал отдавать SNMP в zabbix. После волны SYN на порты роутера стали отваливаться BGP сессии с пирами (используется три аплинка с каждого получаем full view по ipv4 и по ipv6), в логах появились трагические записи:
Jun 27 17:35:07 ROUTER rpd[1408]: bgp_hold_timeout:4035: NOTIFICATION sent to ip.ip.ip.ip (External AS 1111): code 4 (Hold Timer Expired Error), Reason: holdtime expired for ip.ip.ip.ip (External AS 1111), socket buffer sndcc: 19 rcvcc: 0 TCP state: 4, snd_una: 1200215741 snd_nxt: 1200215760 snd_wnd: 15358 rcv_nxt: 4074908977 rcv_adv: 4074925361, hold timer out 90s, hold timer remain 0s
Jun 27 17:35:33 ROUTER rpd[1408]: bgp_hold_timeout:4035: NOTIFICATION sent to ip.ip.ip.ip (External AS 1111): code 4 (Hold Timer Expired Error), Reason: holdtime expired for ip.ip.ip.ip (External AS 1111), socket buffer sndcc: 38 rcvcc: 0 TCP state: 4, snd_una: 244521089 snd_nxt: 244521108 snd_wnd: 16251 rcv_nxt: 3829118827 rcv_adv: 3829135211, hold timer out 90s, hold timer remain 0s
Jun 27 17:37:26 ROUTER rpd[1408]: bgp_hold_timeout:4035: NOTIFICATION sent to ip.ip.ip.ip (External AS 1111): code 4 (Hold Timer Expired Error), Reason: holdtime expired for ip.ip.ip.ip (External AS 1111), socket buffer sndcc: 19 rcvcc: 0 TCP state: 4, snd_una: 1840501056 snd_nxt: 1840501075 snd_wnd: 16384 rcv_nxt: 1457490093 rcv_adv: 1457506477, hold timer out 90s, hold timer remain 0s
Как было выяснено позже, после атаки, волна TCP SYN увеличила нагрузку на routing engine роутера после чего упали все BGP сессии и роутер не смог самостоятельно восстановить работу. Атака на роутер длилась несколько минут, но из-за дополнительной нагрузки, роутер не мог обработать full view с трех аплинков и сессии снова рвались. Восстановить работу удалось только поочередным поднятием всех BGP сессий. Дальнейшая атака шла на сам сервер.
Испытание в условиях стенда и воспроизведение атаки
В качестве цели атаки использовался Juniper MX80 с той же версией прошивки, что и на боевом роутере. В качестве атакующего использовался сервер с 10Gb картой и установленной на нем ubuntu server + quagga. Генератором трафика выступал скрипт с вызовом утилиты hping3. Для проверки пагубного воздействия “всплесков” трафика, скрипт генерировал трафик с временными разрывами: 30 секунд атака — 2 секунды атаки нет. Также, для чистоты эксперимента, была поднята BGP сессия между роутером и сервером. В установленной на тот момент конфигурации боевого роутера, порты BGP и SSH были открыты на всех интерфейсах/адресах роутера и не фильтровались. Аналогичная конфигурация была перенесена на стендовый роутер.
Первым этапом испытаний стала атака TCP SYN на BGP (179) порт роутера. Ip адрес источника совпадал с адресом пира в конфиге. IP address spoofing не исключался, так как у наших аплинков не включен uPRF. Сессия была установлена. Со стороны quagga:
BGP router identifier 9.4.8.2, local AS number 9123
RIB entries 3, using 288 bytes of memory
Peers 1, using 4560 bytes of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
9.4.8.1 4 1234 1633 2000 0 0 0 00:59:56 0
Total number of neighbors 1
Со стороны Juniper:
user@MX80> show bgp summary
Groups: 1 Peers: 1 Down peers: 0
Table Tot Paths Act Paths Suppressed History Damp State Pending
inet.0
2 1 0 0 0 0
Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped...
9.4.8.2 4567 155 201 0 111 59:14 1/2/2/0 0/0/0/0
После начала атаки (13:52) на роутер летит ~1.2 Mpps трафика:
или 380Mbps:
Нагрузка на CPU RE и CPU FE роутера возрастает:
После таймаута (90 сек) BGP сессия падает и больше не поднимается:
Jul 4 13:54:01 MX80 rpd[1407]: bgp_hold_timeout:4035: NOTIFICATION sent to 9.4.8.2 (External AS 4567): code 4 (Hold Timer Expired Error), Reason: holdtime expired for 9.4.8.2 (External AS 4567), socket buffer sndcc: 38 rcvcc: 0 TCP state: 4, snd_una: 3523671294 snd_nxt: 3523671313 snd_wnd: 114 rcv_nxt: 1556791630 rcv_adv: 1556808014, hold timer out 90s, hold timer remain 0s
Роутер занят обработкой прилетающего TCP SYN на порт BGP и не может установить сессию. На порту множество пакетов:
user@MX80> monitor traffic interface ge-1/0/0 count 20
13:55:39.219155 In IP 9.4.8.2.2097 > 9.4.8.1.bgp: S 1443462200:1443462200(0) win 512
13:55:39.219169 In IP 9.4.8.2.27095 > 9.4.8.1.bgp: S 295677290:295677290(0) win 512
13:55:39.219177 In IP 9.4.8.2.30114 > 9.4.8.1.bgp: S 380995480:380995480(0) win 512
13:55:39.219184 In IP 9.4.8.2.57280 > 9.4.8.1.bgp: S 814209218:814209218(0) win 512
13:55:39.219192 In IP 9.4.8.2.2731 > 9.4.8.1.bgp: S 131350916:131350916(0) win 512
13:55:39.219199 In IP 9.4.8.2.2261 > 9.4.8.1.bgp: S 2145330024:2145330024(0) win 512
13:55:39.219206 In IP 9.4.8.2.z39.50 > 9.4.8.1.bgp: S 1238175350:1238175350(0) win 512
13:55:39.219213 In IP 9.4.8.2.2098 > 9.4.8.1.bgp: S 1378645261:1378645261(0) win 512
13:55:39.219220 In IP 9.4.8.2.30115 > 9.4.8.1.bgp: S 1925718835:1925718835(0) win 512
13:55:39.219227 In IP 9.4.8.2.27096 > 9.4.8.1.bgp: S 286229321:286229321(0) win 512
13:55:39.219235 In IP 9.4.8.2.2732 > 9.4.8.1.bgp: S 1469740166:1469740166(0) win 512
13:55:39.219242 In IP 9.4.8.2.57281 > 9.4.8.1.bgp: S 1179645542:1179645542(0) win 512
13:55:39.219254 In IP 9.4.8.2.2262 > 9.4.8.1.bgp: S 1507663512:1507663512(0) win 512
13:55:39.219262 In IP 9.4.8.2.914c/g > 9.4.8.1.bgp: S 1219404184:1219404184(0) win 512
13:55:39.219269 In IP 9.4.8.2.2099 > 9.4.8.1.bgp: S 577616492:577616492(0) win 512
13:55:39.219276 In IP 9.4.8.2.267 > 9.4.8.1.bgp: S 1257310851:1257310851(0) win 512
13:55:39.219283 In IP 9.4.8.2.27153 > 9.4.8.1.bgp: S 1965427542:1965427542(0) win 512
13:55:39.219291 In IP 9.4.8.2.30172 > 9.4.8.1.bgp: S 1446880235:1446880235(0) win 512
13:55:39.219297 In IP 9.4.8.2.57338 > 9.4.8.1.bgp: S 206377149:206377149(0) win 512
13:55:39.219305 In IP 9.4.8.2.2789 > 9.4.8.1.bgp: S 838483872:838483872(0) win 512
Вторым этапом испытаний стала атака TCP SYN на BGP (179) порт роутера. Ip адрес источника выбирался рандомно и не совпадал с адресом пира указанным в конфиге роутера. Эта атака произвела на роутер такой же эффект. Дабы не растягивать статью однообразными выводами логов, приведу только график нагрузки:
По графику отчетливо видно момент начала атаки. BGP сессия также упала и не смогла восстановиться.
Концепция построения защиты RE роутера
Особенность работы оборудования Juniper заключается в разделении задач между routing engine (RE) и packet forwarding engine (PFE). PFE обрабатывает весь поток проходящего трафика осуществляя его фильтрацию и маршрутизацию по заранее сформированной схеме. RE занимается обработкой прямых обращений к роутеру (traceroute, ping, ssh), обработкой пакетов для служебных сервисов (BGP, NTP, DNS, SNMP) и формирует схемы фильтрации и маршрутизации трафика для PFE роутера.
Основная идея защиты роутера состоит в фильтрации всего трафика предназначенного для RE. Создание фильтра позволит перенести нагрузку, создаваемую DDOS атакой, с CPU RE на CPU PFE роутера, что даст возможность RE обрабатывать только реальные пакеты и не тратить процессорное время на другой трафик. Для построения защиты необходимо определить, что фильтруем. Схема написания фильтров для IPv4 была взята из книги Douglas Hanks Jr. — Day One Book: Securing the Routing Engine on M, MX and T series. В моем случае на роутере схема была следующей:
По протоколу IPv4
- BGP — фильтруем пакеты по source и destination ip, source ip может быть любой из списка bgp neighbor. Разрешаем только подключения tcp established, то есть фльтр будет отбрасывать все SYN прилетающие на этот порт, а сессия BGP будет начинаться только от нас (BGP сосед аплинка работает в пассивном режиме).
- TACACS+ — фильтруем пакеты по source и destination ip, source ip может быть только из внутренней сети. Ограничиваем полосу пропускания в 1Mb/s.
- SNMP — фильтруем пакеты по source и destination ip, source ip может быть любой из списка snmp-clients в конфиге.
- SSH — фильтруем пакеты по destination ip, source ip может быть любой, так как есть необходимость экстренного доступа к устройству из любой сети. Ограничиваем полосу пропускания в 5Mb/s.
- NTP — фильтруем пакеты по source и destination ip, source ip может быть любой из списка ntp servers конфига. Ограничиваем полосу пропускания в 1Mb/s (в дальнейшем порог был уменьшен до 512Kb/s).
- DNS — фильтруем пакеты по source и destination ip, source ip может быть любой из списка dns servers конфига. Ограничиваем полосу пропускания в 1Mb/s.
- ICMP — фильтруем пакеты, пропускаем только на адреса принадлежащие роутеру. Ограничиваем полосу пропускания в 5Mb/s (в дальнейшем порог был уменьшен до 1Mb/s).
- TRACEROUTE — фильтруем пакеты, пропускаем только пакеты с TTL равным 1 и только на адреса принадлежащие роутеру. Ограничиваем полосу пропускания в 1Mb/s.
По протоколу IPv6, в моем случае, фильтры накладывались только на BGP, NTP, ICMP, DNS и traceroute. Единственное отличие в фильтрации ICMP трафика, так как IPv6 использует ICMP в служебных целях. Остальные протоколы не использовали IPv6 адресацию.
Написание конфигурации
Для написания фильтров в juniper существует удобный инструмент — prefix-list, который позволяет динамически составлять списки ip адресов/подсетей для подстановки в фильтры. Например, для создания списка адресов ipv4 BGP соседей указанных в конфиге, используется следующая структура:
prefix-list BGP-neighbors-v4 {
apply-path "protocols bgp group <*> neighbor <*.*>";
}
результат составления списка:
show configuration policy-options prefix-list BGP-neighbors-v4 | display inheritance
##
## apply-path was expanded to:
## 1.1.1.1/32;
## 2.2.2.2/32;
## 3.3.3.3/32;
##
apply-path «protocols bgp group <*> neighbor <*.*>»;
Составляем динамические списки префиксов для всех фильтров:
/* Список всех ipv4 адресов соседей BGP */
prefix-list BGP-neighbors-v4 {
apply-path "protocols bgp group <*> neighbor <*.*>";
}
/* Список всех ipv6 адресов соседей BGP */
prefix-list BGP-neighbors-v6 {
apply-path "protocols bgp group <*> neighbor <*:*>";
}
/* Список всех ipv4 серверов NTP */
prefix-list NTP-servers-v4 {
apply-path "system ntp server <*.*>";
}
/* Список всех ipv6 серверов NTP */
prefix-list NTP-servers-v6 {
apply-path "system ntp server <*:*>";
}
/* Список всех ipv4 адресов назначеных роутеру */
prefix-list LOCALS-v4 {
apply-path "interfaces <*> unit <*> family inet address <*>";
}
/* Список всех ipv6 адресов назначеных роутеру */
prefix-list LOCALS-v6 {
apply-path "interfaces <*> unit <*> family inet6 address <*>";
}
/* Список всех ipv4 адресов SNMP клиентов */
prefix-list SNMP-clients {
apply-path "snmp client-list <*> <*>";
}
prefix-list SNMP-community-clients {
apply-path "snmp community <*> clients <*>";
}
/* Список всех серверов TACACS+ */
prefix-list TACPLUS-servers {
apply-path "system tacplus-server <*>";
}
/* Список адресов роутера которые принадлежат внутренней сети */
prefix-list INTERNAL-locals {
/* В моем случае лучший вариант - ручное указание адреса */
192.168.0.1/32;
}
/* Список адресов роутера на интерфейсе управления, для доступа по SSH */
prefix-list MGMT-locals {
apply-path "interfaces fxp0 unit 0 family inet address <*>";
}
/* Приватные сети */
prefix-list rfc1918 {
10.0.0.0/8;
172.16.0.0/12;
192.168.0.0/16;
}
/* Loopback */
prefix-list localhost-v6 {
::1/128;
}
prefix-list localhost-v4 {
127.0.0.0/8;
}
/* Список всех ipv4 локальных адресов BGP */
prefix-list BGP-locals-v4 {
apply-path "protocols bgp group <*> neighbor <*.*> local-address <*.*>";
}
/* Список всех ipv6 локальных адресов BGP */
prefix-list BGP-locals-v6 {
apply-path "protocols bgp group <*> neighbor <*:*> local-address <*:*>";
}
/* Список всех ipv4 серверов DNS */
prefix-list DNS-servers-v4 {
apply-path "system name-server <*.*>";
}
/* Список всех ipv6 серверов DNS */
prefix-list DNS-servers-v6 {
apply-path "system name-server <*:*>";
}
Составляем полисеры для ограничения пропускной способности:
/* Ограничение в 1Mb */
policer management-1m {
apply-flags omit;
if-exceeding {
bandwidth-limit 1m;
burst-size-limit 625k;
}
/* Все что не помещается дропаем */
then discard;
}
/* Ограничение в 5Mb */
policer management-5m {
apply-flags omit;
if-exceeding {
bandwidth-limit 5m;
burst-size-limit 625k;
}
/* Все что не помещается дропаем */
then discard;
}
/* Ограничение в 512Kb */
policer management-512k {
apply-flags omit;
if-exceeding {
bandwidth-limit 512k;
burst-size-limit 25k;
}
/* Все что не помещается дропаем */
then discard;
}
Ниже, под «копи-паст», конфигурация фильтров конечного варианта защиты (были уменьшены пороги пропускной способности трафика NTP и ICMP, причины снижения порогов подробно описаны в разделе тестирования). Настраиваем фильтры ipv4:
IPv4 filter
/* Фильтр BGP трафика */
filter accept-bgp {
interface-specific;
term accept-bgp {
from {
source-prefix-list {
BGP-neighbors-v4;
}
destination-prefix-list {
BGP-locals-v4;
}
/* пассивный режим работы соседа. Сессия начинается с нашей стороны. */
tcp-established;
protocol tcp;
port bgp;
}
then {
count accept-bgp;
accept;
}
}
}
/* Фильтр SSH трафика */
filter accept-ssh {
apply-flags omit;
term accept-ssh {
from {
destination-prefix-list {
MGMT-locals;
}
protocol tcp;
destination-port ssh;
}
then {
/* ограничение пропускной способности */
policer management-5m;
count accept-ssh;
accept;
}
}
}
/* Фильтр SNMP трафика */
filter accept-snmp {
apply-flags omit;
term accept-snmp {
from {
source-prefix-list {
SNMP-clients;
SNMP-community-clients;
}
destination-prefix-list {
/* Подключение только на адрес внутренней сети */
INTERNAL-locals;
}
protocol udp;
destination-port [ snmp snmptrap ];
}
then {
count accept-snmp;
accept;
}
}
}
/* Фильтр ICMP трафика */
filter accept-icmp {
apply-flags omit;
/* Отбрасываем фрагментированные пакеты ICMP */
term discard-icmp-fragments {
from {
is-fragment;
protocol icmp;
}
then {
count discard-icmp-fragments;
discard;
}
}
term accept-icmp {
from {
protocol icmp;
icmp-type [ echo-reply echo-request time-exceeded unreachable source-quench router-advertisement parameter-problem ];
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-icmp;
accept;
}
}
}
/* фильтр traceroute трафика */
filter accept-traceroute {
apply-flags omit;
term accept-traceroute-udp {
from {
destination-prefix-list {
LOCALS-v4;
}
protocol udp;
/* ограничение в TTL = 1 */
ttl 1;
destination-port 33434-33450;
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-traceroute-udp;
accept;
}
}
term accept-traceroute-icmp {
from {
destination-prefix-list {
LOCALS-v4;
}
protocol icmp;
/* ограничение в TTL = 1 */
ttl 1;
icmp-type [ echo-request timestamp time-exceeded ];
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-traceroute-icmp;
accept;
}
}
term accept-traceroute-tcp {
from {
destination-prefix-list {
LOCALS-v4;
}
protocol tcp;
/* ограничение в TTL = 1 */
ttl 1;
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-traceroute-tcp;
accept;
}
}
}
/* фильтр DNS трафика */
filter accept-dns {
apply-flags omit;
term accept-dns {
from {
source-prefix-list {
DNS-servers-v4;
}
destination-prefix-list {
LOCALS-v4;
}
protocol udp;
source-port 53;
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-dns;
accept;
}
}
}
/* фильтр для отбрасывания не прошедших все проверки пакетов */
filter discard-all {
apply-flags omit;
term discard-ip-options {
from {
ip-options any;
}
then {
/* счетчик пакетов для сбора статистики */
count discard-ip-options;
log;
discard;
}
}
term discard-TTL_1-unknown {
from {
ttl 1;
}
then {
/* счетчик пакетов для сбора статистики */
count discard-TTL_1-unknown;
log;
discard;
}
}
term discard-tcp {
from {
protocol tcp;
}
then {
/* счетчик пакетов для сбора статистики */
count discard-tcp;
log;
discard;
}
}
term discard-udp {
from {
protocol udp;
}
then {
/* счетчик пакетов для сбора статистики */
count discard-udp;
log;
discard;
}
}
term discard-icmp {
from {
destination-prefix-list {
LOCALS-v4;
}
protocol icmp;
}
then {
/* счетчик пакетов для сбора статистики */
count discard-icmp;
log;
discard;
}
}
term discard-unknown {
then {
/* счетчик пакетов для сбора статистики */
count discard-unknown;
log;
discard;
}
}
}
/* фильтр TACACS+ трафика */
filter accept-tacacs {
apply-flags omit;
term accept-tacacs {
from {
source-prefix-list {
TACPLUS-servers;
}
destination-prefix-list {
INTERNAL-locals;
}
protocol [ tcp udp ];
source-port [ tacacs tacacs-ds ];
tcp-established;
}
then {
/* ограничение пропускной способности */
policer management-1m;
count accept-tacacs;
accept;
}
}
}
/* фильтр NTP трафика */
filter accept-ntp {
apply-flags omit;
term accept-ntp {
from {
source-prefix-list {
NTP-servers-v4;
localhost-v4;
}
destination-prefix-list {
localhost-v4;
LOCALS-v4;
}
protocol udp;
destination-port ntp;
}
then {
/* ограничение пропускной способности */
policer management-512k;
count accept-ntp;
accept;
}
}
}
/* родительский фильтр для ветвления фильтрации и упрощения применения фильтра на интерфейс */
filter accept-common-services {
term protect-TRACEROUTE {
filter accept-traceroute;
}
term protect-ICMP {
filter accept-icmp;
}
term protect-SSH {
filter accept-ssh;
}
term protect-SNMP {
filter accept-snmp;
}
term protect-NTP {
filter accept-ntp;
}
term protect-DNS {
filter accept-dns;
}
term protect-TACACS {
filter accept-tacacs;
}
}
Аналогичный фильтр для ipv6:
IPv6 filter
/* фильтр BGP трафика */
filter accept-v6-bgp {
interface-specific;
term accept-v6-bgp {
from {
source-prefix-list {
BGP-neighbors-v6;
}
destination-prefix-list {
BGP-locals-v6;
}
tcp-established;
next-header tcp;
port bgp;
}
then {
count accept-v6-bgp;
accept;
}
}
}
/* фильтр ICMP трафика */
filter accept-v6-icmp {
apply-flags omit;
term accept-v6-icmp {
from {
next-header icmp6;
/* фильтр по типу более лояльный, так как ipv6 требуется icmp */
icmp-type [ echo-reply echo-request time-exceeded router-advertisement parameter-problem destination-unreachable packet-too-big router-solicit neighbor-solicit neighbor-advertisement redirect ];
}
then {
policer management-1m;
count accept-v6-icmp;
accept;
}
}
}
/* фильтр traceroute трафика */
filter accept-v6-traceroute {
apply-flags omit;
term accept-v6-traceroute-udp {
from {
destination-prefix-list {
LOCALS-v6;
}
next-header udp;
destination-port 33434-33450;
hop-limit 1;
}
then {
policer management-1m;
count accept-v6-traceroute-udp;
accept;
}
}
term accept-v6-traceroute-tcp {
from {
destination-prefix-list {
LOCALS-v6;
}
next-header tcp;
hop-limit 1;
}
then {
policer management-1m;
count accept-v6-traceroute-tcp;
accept;
}
}
term accept-v6-traceroute-icmp {
from {
destination-prefix-list {
LOCALS-v6;
}
next-header icmp6;
icmp-type [ echo-reply echo-request router-advertisement parameter-problem destination-unreachable packet-too-big router-solicit neighbor-solicit neighbor-advertisement redirect ];
hop-limit 1;
}
then {
policer management-1m;
count accept-v6-traceroute-icmp;
accept;
}
}
}
/* фильтр DNS трафика */
filter accept-v6-dns {
apply-flags omit;
term accept-v6-dns {
from {
source-prefix-list {
DNS-servers-v6;
}
destination-prefix-list {
LOCALS-v6;
}
next-header udp;
source-port 53;
}
then {
policer management-1m;
count accept-v6-dns;
accept;
}
}
}
/* фильтр NTP трафика */
filter accept-v6-ntp {
apply-flags omit;
term accept-v6-ntp {
from {
source-prefix-list {
NTP-servers-v6;
localhost-v6;
}
destination-prefix-list {
localhost-v6;
LOCALS-v6;
}
next-header udp;
destination-port ntp;
}
then {
policer management-512k;
count accept-v6-ntp;
accept;
}
}
}
/* фильтр отбрасывающий остальные пакеты */
filter discard-v6-all {
apply-flags omit;
term discard-v6-tcp {
from {
next-header tcp;
}
then {
count discard-v6-tcp;
log;
discard;
}
}
term discard-v6-udp {
from {
next-header udp;
}
then {
count discard-v6-udp;
log;
discard;
}
}
term discard-v6-icmp {
from {
destination-prefix-list {
LOCALS-v6;
}
next-header icmp6;
}
then {
count discard-v6-icmp;
log;
discard;
}
}
term discard-v6-unknown {
then {
count discard-v6-unknown;
log;
discard;
}
}
}
/* родительский фильтр для ветвления фильтрации и упрощения применения фильтра на интерфейс */
filter accept-v6-common-services {
term protect-TRACEROUTE {
filter accept-v6-traceroute;
}
term protect-ICMP {
filter accept-v6-icmp;
}
term protect-NTP {
filter accept-v6-ntp;
}
term protect-DNS {
filter accept-v6-dns;
}
}
Далее необходимо применить фильтры на служебный интерфейс lo0.0. В системе JunOS этот интерфейс используется для передачи данных между PFE и RE. Конфигурация примет следующий вид:
lo0 {
unit 0 {
family inet {
filter {
input-list [ accept-bgp accept-common-services discard-all ];
}
}
family inet6 {
filter {
input-list [ accept-v6-bgp accept-v6-common-services discard-v6-all ];
}
}
}
}
Порядок указания фильтров в input-list интерфейса очень важен. Каждый пакет будет проверяться на валидность проходя по фильтрам указанным в input-list слева направо.
Тестирование фильтров
После применения фильтров, провел ряд тестов на том же стенде. После каждого теста выполнялась очистка счетчиков firewall. Нормальная (без атаки) нагрузка на роутере видна на графиках в 11:06 — 11:08. График pps за весь период тестов:
График CPU за весь период тестов:
Первым проводился тест флуда icmp c порогом трафика 5Мб/с (на графиках 10:21 — 10:24). По счетчикам фильтра и на графике видно ограничение по трафика по пропускной способности, но даже этого потока было достаточно для повышения нагрузки, поэтому порог был уменьшен до 1Мб/с. Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 0 0
accept-icmp-lo0.0-i 47225584 1686628
accept-ntp-lo0.0-i 152 2
accept-snmp-lo0.0-i 174681 2306
accept-ssh-lo0.0-i 38952 702
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 841 13
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 780 13
discard-udp-lo0.0-i 18743 133
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-ntp-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-5m-accept-icmp-lo0.0-i 933705892 33346639
management-5m-accept-ssh-lo0.0-i 0 0
Повторный тест флуда icmp c порогом трафика 1Мб/с (на графиках 10:24 — 10:27). Нагрузка на RE роутера упала с 19% до 10%, нагрузка на PFE до 30%. Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 0 0
accept-icmp-lo0.0-i 6461448 230766
accept-ntp-lo0.0-i 0 0
accept-snmp-lo0.0-i 113433 1497
accept-ssh-lo0.0-i 33780 609
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 0 0
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 360 6
discard-udp-lo0.0-i 12394 85
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-icmp-lo0.0-i 665335496 23761982
management-1m-accept-ntp-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-5m-accept-ssh-lo0.0-i 0 0
Следующим был проведен тест флуда на порт BGP роутера с постороннего (не включеного в конфиг) ip адреса (на графиках 10:29 — 10:36). Как видно из счетчиков, весь флуд осел на discard-tcp фильтре RE и лишь увеличил нагрузку на PFE. Нагрузка на RE не изменилась. Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 824 26
accept-icmp-lo0.0-i 0 0
accept-ntp-lo0.0-i 0 0
accept-snmp-lo0.0-i 560615 7401
accept-ssh-lo0.0-i 33972 585
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 1088 18
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 12250785600 306269640
discard-udp-lo0.0-i 63533 441
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-icmp-lo0.0-i 0 0
management-1m-accept-ntp-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-5m-accept-ssh-lo0.0-i 0 0
сессия не падает:
user@MX80# run show bgp summary
Groups: 1 Peers: 1 Down peers: 0
Table Tot Paths Act Paths Suppressed History Damp State Pending
inet.0
2 1 0 0 0 0
Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped...
9.4.8.2 4567 21 22 0 76 8:49 1/2/2/0 0/0/0/0
Четвертым был проведен тест флуда (на графиках 10:41 — 10:46) UDP на порт NTP (в настройках фильтра взаимодействие по этому порту ограничивается серверами указанными в конфиге роутера). По графику, нагрузка поднимается только на PFE роутера до 28%. Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 0 0
accept-icmp-lo0.0-i 0 0
accept-ntp-lo0.0-i 0 0
accept-snmp-lo0.0-i 329059 4344
accept-ssh-lo0.0-i 22000 388
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 615 10
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 0 0
discard-udp-lo0.0-i 1938171670 69219329
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-icmp-lo0.0-i 0 0
management-1m-accept-ntp-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-5m-accept-ssh-lo0.0-i 0 0
Пятым был проведен тест флуда (на графиках 10:41 — 11:04) UDP на порт NTP с IP spoofing. Нагрузка на RE увеличилась на 12%, нагрузка на PFE увеличилась до 22%. По счетчикам видно, что флуд упирается в порог 1Мб/с, но этого достаточно для повышения нагрузки на RE. Порог трафика в итоге был уменьшен до 512Кб/с. Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 0 0
accept-icmp-lo0.0-i 0 0
accept-ntp-lo0.0-i 34796804 1242743
accept-snmp-lo0.0-i 630617 8324
accept-ssh-lo0.0-i 20568 366
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 1159 19
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 0 0
discard-udp-lo0.0-i 53365 409
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-icmp-lo0.0-i 0 0
management-1m-accept-ntp-lo0.0-i 3717958468 132784231
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-5m-accept-ssh-lo0.0-i 0 0
Повторный тест флуда (на графике ниже 11:29 — 11:34) UDP на порт NTP с IP spoofing, но с порогом трафика 512Кб/с. График нагрузки:
Счетчики:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 0 0
accept-icmp-lo0.0-i 0 0
accept-ntp-lo0.0-i 21066260 752363
accept-snmp-lo0.0-i 744161 9823
accept-ssh-lo0.0-i 19772 347
accept-traceroute-icmp-lo0.0-i 0 0
accept-traceroute-tcp-lo0.0-i 1353 22
accept-traceroute-udp-lo0.0-i 0 0
discard-TTL_1-unknown-lo0.0-i 0 0
discard-icmp-lo0.0-i 0 0
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 0 0
discard-tcp-lo0.0-i 0 0
discard-udp-lo0.0-i 82745 602
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-512k-accept-ntp-lo0.0-i 4197080384 149895728
management-5m-accept-ssh-lo0.0-i 0 0
Заключение
В итоге всех проведенных тестов удалось получить, устойчивую к DDOS атакам, конфигурацию фильтров трафика RE. В настоящий момент эта конфигурация уже применена на боевом роутере и проблем не выявлено. По счетчикам с боевого MX80:
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-v6-bgp-lo0.0-i 31091878 176809
accept-v6-icmp-lo0.0-i 1831144 26705
accept-v6-ntp-lo0.0-i 0 0
accept-v6-traceroute-icmp-lo0.0-i 0 0
accept-v6-traceroute-tcp-lo0.0-i 48488 684
accept-v6-traceroute-udp-lo0.0-i 0 0
discard-v6-icmp-lo0.0-i 0 0
discard-v6-tcp-lo0.0-i 0 0
discard-v6-udp-lo0.0-i 0 0
discard-v6-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-v6-icmp-lo0.0-i 0 0
management-1m-accept-v6-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-v6-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-v6-traceroute-udp-lo0.0-i 0 0
management-512k-accept-v6-ntp-lo0.0-i 0 0
Filter: lo0.0-i
Counters:
Name Bytes Packets
accept-bgp-lo0.0-i 135948400 698272
accept-dns-lo0.0-i 374 3
accept-icmp-lo0.0-i 121304849 1437305
accept-ntp-lo0.0-i 87780 1155
accept-snmp-lo0.0-i 1265470648 12094967
accept-ssh-lo0.0-i 2550011 30897
accept-tacacs-lo0.0-i 702450 11657
accept-traceroute-icmp-lo0.0-i 28824 636
accept-traceroute-tcp-lo0.0-i 75378 1361
accept-traceroute-udp-lo0.0-i 47328 1479
discard-TTL_1-unknown-lo0.0-i 27790 798
discard-icmp-lo0.0-i 26400 472
discard-icmp-fragments-lo0.0-i 0 0
discard-ip-options-lo0.0-i 35680 1115
discard-tcp-lo0.0-i 73399674 1572144
discard-udp-lo0.0-i 126386306 694603
discard-unknown-lo0.0-i 0 0
Policers:
Name Bytes Packets
management-1m-accept-dns-lo0.0-i 0 0
management-1m-accept-icmp-lo0.0-i 38012 731
management-1m-accept-tacacs-lo0.0-i 0 0
management-1m-accept-traceroute-icmp-lo0.0-i 0 0
management-1m-accept-traceroute-tcp-lo0.0-i 0 0
management-1m-accept-traceroute-udp-lo0.0-i 0 0
management-512k-accept-ntp-lo0.0-i 0 0
management-5m-accept-ssh-lo0.0-i 0 0
видно какое количество “левого” трафика оседает на фильтре discard.
Буду рад ответить на все вопросы в комментариях.
Download Article
Download Article
A DDoS (Distributed Denial of Service) attack occurs when multiple computers flood an IP address with data. Before you get hit with a DDoS attack, follow our guide for preventing DDoS attacks before they wreak havoc on your network.
-
1
Use a firewall. A firewall is a good first line of defense against a DDoS attack. It can prevent attackers from trying to detect your IP address which can be used to launch an attack on your router.
-
2
Use antivirus software. Antivirus software alone won’t prevent an attack, but it can prevent your computer from becoming part of a larger DDoS attack without your knowledge. Be sure to keep all security software on all your devices up to date.
Advertisement
-
3
Use a Virtual Private Network (VPN). A virtual private network is able to hide your IP address by routing all your internet traffic through the providers network. An attacker trying to detect your IP address would only detect the VPN’s address. Traffic from a DDoS attack would reach your VPN’s servers first, where they would hopefully be screened out before they hit your home network.
-
4
Keep your operating system up to date. Whether you are using Windows, macOS, Android, or iOS, make sure it has the latest security updates installed to prevent exploits.
-
5
Keep your hardware and software up to date. Make sure any apps that access the internet are kept up to date with the latest patches and security updates. When possible, configure these programs to automatically receive updates. Additionally, if your modem and router is more than a few years old, you should probably upgrade to the latest hardware. Some routers and external firewalls have built-in safeguards against DDoS attacks. They can block heavy bursts of traffic and block traffic from known attackers.
-
6
Use official servers for online gaming. If you game online, it’s best to stick with official servers, such as Steam, Playstation Network, or XBox Live. Using third-party servers can expose your IP address to the server administrator or to the public.
-
7
Only take voice chats from people you know. Voice chat programs, like Skype, are known for having weak IP security. Keep these programs up to date with the latest updates and patches. Make sure your profile information is kept hidden, and only receive voice chats from people you know and trust.
-
8
Reset your IP address. If all the preventative measures have failed, and you still find yourself victim of a determined attacker, you’ll need to reset your IP address. There are a few ways you can do this.
- Unplug your modem and router. Depending on your internet service provider, you will be assigned a new IP address if you unplug your modem and router from 5 minutes, up to 24 hours.
- Using the router’s Admin console. Type the router’s IP address in a web browser (usually http://192.168.1.1) and log in as an admin. You should be able to find the appropriate settings to change your IP address under «Network Settings» or something similar. Consult your router’s user manual for information on how to access the admin console and change your IP address for your specific router model.
- Using the Command Prompt (Windows). Click on the Start menu in the lower-left corner of the task bar. Type cmd. This will bring up the Command Prompt app in the start menu. Click on the app with the image that resembles a black screen with a cursor in the upper-left corner. Type ipconfig /release at the prompt and press ↵ Enter. Then type ipconfig /renew and press ↵ Enter. This will change the IP address for your Windows computer.
- Using System Preferences (Mac). Click the Apple icon in the upper-left corner of the menu bar, and click «System Preferences». Click the Network icon. Click «Advanced» in the lower-right corner. Click the tab at the top that says «TCP/IP». Then click «Renew DHCP Lease». This will change your IP address for your Mac computer.
- Contact your Internet Service Provider. Some ISP’s won’t allow you to change your IP address on your own. If this is the case, you may need to contact your ISP and request that they change your IP address. They may have additional steps you can take to prevent or stop a DDoS attack.
Advertisement
Ask a Question
200 characters left
Include your email address to get a message when this question is answered.
Submit
Advertisement
Thanks for submitting a tip for review!
About This Article
Thanks to all authors for creating a page that has been read 52,041 times.