Предотвращают ли сегодняшние маршрутизаторы поддельные заголовки IP?


11

Я знаю, что люди могут изменять заголовки IP и изменять IP-адрес источника, но сетевые устройства должны легко обнаруживать эти сообщения. Если нет, то почему это так сложно? Это добавляет слишком много накладных расходов?


примечание: правильная фраза «антиспуфинг». подделка говорит мне «подделка ролексов» (что, кстати, совершенно другой сетевой взлом / атака)
Рикки Бим

Ответы:


17

Я знаю, что люди могут изменять заголовки IP и изменять IP-адрес источника, но сетевые устройства должны легко обнаруживать эти сообщения.

Поддельные IP-адреса источника в заголовках могут быть обнаружены и заблокированы в коммерческом сетевом оборудовании; другие поддельные заголовки IPv4 может быть немного сложнее идентифицировать. Большинство людей называют функцию обнаружения поддельных IP-адресов источника «Unicast Reverse Path Forwarding», которая сокращенно называется uRPF ; uRPF определен в RFC 3704 и считается лучшей современной практикой в Интернете . uRPF должен применяться на первом маршрутизаторе от оборудования заказчика или на пограничном маршрутизаторе в корпоративной сети.

Если нет, то почему это так сложно? Это добавляет слишком много накладных расходов?

Пока маршрутизатор не является маршрутизатором на базе процессора, производительность не снижается. Многие из маршрутизаторов / коммутаторов, используемых интернет-провайдерами, имеют встроенную аппаратную функцию в ASIC; как правило, это не приводит к огромным потерям производительности. Иногда возникают конфликты функций, но, опять же, в большинстве случаев это не так уж важно.

Политики и компетенция инженерного / эксплуатационного персонала интернет-провайдера различаются, и многие интернет-провайдеры (особенно в небольших странах) настолько заняты тем, чтобы заставить вещи «работать», что у них нет циклов, чтобы заставить вещи «работать хорошо».


1
Что если isp a и isp b связаны друг с другом. Если isp a не использует uRPF, может ли isp b что-нибудь с этим сделать?
Начос

Под «делай что-нибудь» я предполагаю, что ты предполагаешь, что у ISP B нет первого маршрутизатора из CPE. Да, ISP B также может использовать uRPF, но они должны развернуть его в так называемом свободном режиме из-за асимметричной природы маршрутизации bgp. Это означает, что он не так эффективен для блокировки поддельных заголовков ... по сути, он просто гарантирует, что маршрут для исходного IP-адреса существует в таблице маршрутизации ... поэтому, если кто-то отправляет трафик, который полностью не маршрутизируется, его можно заблокировать.
Майк Пеннингтон

Не совсем верно, что только процессоры страдают от потери производительности. Например, в 7600/6500 / PFC3 без uRPF вы можете наблюдать линейную скорость при пакетах минимального размера в WS-X67040-10GE, увеличивать uRFP, и наименьший кадр почти удваивается до 101B, который вы можете отправить с линейной скоростью. Более новые устройства на основе NPU (ASR9k, MX, SR и т. Д.) Также имеют ненулевую стоимость в uRPF, механизм обработки пакетов занимает больше времени, когда он включен, чем когда он отключен, избыточное измерение может помочь абстрагировать стоимость.
ytti

4
@ytti, интернет-трафик в среднем значительно превышает 101 байт. Это не серьезная проблема для imix.
Майк Пеннингтон

1
@ytti, я очень четко определил свой ответ ... Я сказал, что "как правило, за его включение нет огромного снижения производительности". Давайте не будем забывать, что 6500 Sup7203BXL - это машина на 400 Мбит / с при полном заполнении DFC; поместите один DFC на WS-X6704 в шасси, и вам не о чем беспокоиться ... если вы достаточно сумасшедший, чтобы зависеть только от переадресации PFC3 для всего шасси, значит, вы спросили о возникшей проблеме.
Майк Пеннингтон

10

Для предотвращения изменения IP-адреса источника необходимо использовать списки доступа (ACL) или одноадресную фильтрацию обратного пути (uRPF).

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

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

ACL более широко поддерживается, чем uRPF, uRPF - сравнительно редкая функция в устройствах уровня коммутации L3. В «реальных» маршрутизаторах обычно доступны обе функции.

Даже если обе функции доступны, настройка uRPF в неправильном месте сети может нарушить работу сети, а отсутствие понимания ограничений ACL для конкретной платформы может привести к сбоям.

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

Ответственный поставщик услуг делает это, потому что это правильно, но нереально ожидать, что мы получим антиспуфинг в относительно большой части развернутых устройств доступа. Гораздо более реалистичной является цель, если мы используем ACL в транзитных IP-соединениях, поскольку там всего около 6000 или около того коротких номеров AS.

Почему это даже проблема, из-за атак отражения UDP, которые могут быть исправлены с помощью таких протоколов, как QUIC и MinimaLT, которые гарантируют, что отражение не имеет преимуществ, так как входящий запрос гарантированно больше, чем исходящий ответ, поэтому подмена теряет свою выгоду.

В последнее время снова стало довольно популярным использование отражения UDP в качестве DDoS-атаки. В потребительских устройствах CPE существует множество широко открытых DNS-серверов, которые потребители не знают, поэтому эти потребители страдают, поскольку их домашнее соединение перегружено, поскольку оно используется для отражения атаки. И это также простой способ получить значительное усиление, маленький запрос в несколько десятков байтов может дать большой ответ более тысячи байтов. Отражение DDoS-атак было несколько сотен гигабит в секунду, и меньше ежедневно, только в воскресенье ночью мы передали атаку со скоростью 43 Гбит / с одному из наших клиентов.


5

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

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

Фильтрация обратного пути отлично работает на граничных маршрутизаторах, где есть четкое определение «внутри» и «снаружи» - вы не разрешаете посторонним использовать «внутренние» адреса и наоборот. Все становится сложнее, как только я начинаю использовать несколько граничных маршрутизаторов для резервирования.

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


1
Фильтрация адресов источника в реальном мире нетривиальна , ее следует изменить на uRPF / строгий. Поскольку фильтрация адресов источника с использованием ACL не зависит от симметрии маршрутизации. То есть, я не могу uRPF / строгий контроль над моими многосвязными IP-транзитными клиентами, но мне легко их ACL.
ytti
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.