Протокол RIP
Приветствую тебя суперпользователь. В этой статье говорим о протоколе RIP какую функцию он выполняет и какие атаки на его базе производят.
И так RIP(Routing Information Protocol) это протокол динамической маршрутизации, который используется преимущественно в небольших IP сетях. Работает протокол на транспортном уровне модели OSI(а точнее модели TCP/IP), если ты ни чего сейчас не понял, что за модель OSI то вот статья об этом.
Термин "сеть с множественными путями" означает что передача пакетов между двумя конечными точками может быть разной. Например от IP адреса который мы условно назовем 1 до IP адреса который так же условно назовем 5 может быть несколько
То есть условно говоря пакеты от IP 1 до IP 5 могут проходить только через IP 2. А могут проходить по другому маршруту через IP 3 и 4. И как раз задача протокола RIP находить оптимальный маршрут для передачи данных. Но как же этот протокол определяет какой маршрут более подходящий? Здесь начинают свою работу маршрутизаторы.
Маршрутизатор работает следующим образом. Изначально маршрутизатор знает, только о сетях, о адресах, которые подключенны непосредственно к нему. У него есть некая таблица которая записывает сколько "объектов"(компьютеров, серверов, не важно..) а правильно их называют хопами(хоп) подключенны к нему.
Далее происходит обмен "векторами расстояния", маршрутизатор отправляет информацию из свой таблицы, соседним маршрутизаторам. Те получают от него информацию и передают свою и так происходит до последнего маршрутизатора в сети, таким образом наш маршрутизатор получает полную информацию о сети и колличестве всех хопов в ней. И этот процесс обмена информацией происходит постоянно по кругу, чтобы у маршрутизаторов всегда была актуальная информация о колличестве хопов в сети.
Как протокол RIP выбирает маршрут? Очень просто, просто он выбирает самый короткий путь от точки А в точку Б. С прохождением наименьшего колличества, промежуточных хопов. Важно отметить что расстояния между двумя конечными узлами не должно превышать более 15 промежуточных хопов иначе, конечная целвая точка считается не достижимой.
Так же в том что RIP выбирает самый крадчайший путь, кроется и его минус. Дело в том, что протокол не учитывает пропускную способность при выбори маршрута.
Например при передачи данных от узла А к узлу D протокол RIP выберет путь A, B, D. Но как ты видешь на изображении на промежутке между узлами B и D пропускная способность(скорость передачи данных) составляет 2 мегабита. В то время как по маршруту B, C, D пропускная способность в несколько раз выше. И при учете, что RIP протокол всех остальных узлов отправителей, на этом участке будут выбирать именно этот маршрут A, B, D. Может произойти большая нагрузка на участок, в то время как маршрут B, C, D будет пустовать. Но это тема уже отдельного разговора.
Атаки и безопасность протокола RIP
Ложные маршруты
Понижение версии протокола RIP
Взлом хеша MD 5
Если говорить о угрозах атак по протоколу RIP стоит вспомнить прежде всего классический DDoS и прослушивание и модификация трафика. Если говорить о DDoS-е то такие атаки бывают двух типов:
Низкоуровневый - по сути происходит "затопления" стека протоколов TCP/IP транспортного уровня(а протокол RIP работает именно на транспортном уровне)
Высокоуровневый - отправляются множество запросов на уровне приложений с целью вывода системы из строя за счет переполнения запросами. Пример такой атаки, множество запросов GET к веб ресурсу. Но сегодня я не буду говорить о DDoS атаках, а расскажу про модификацию трафика.
Ложные маршруты
И так в первую очередь атакующему нужно найти маршрутизаторы которые используют протокол RIP. Для этого атакующий может использовать разные инструменты, например утилиту ASS (autonomous system scanner)
И так после того как атакущий выявил маршрутизаторы которые используют протокол RIP, далее ему нужно настроить форвардинг через свой компьютер(форвардинг это техника которая позволяет пропускать проходящий тафик через свой пк(хост) то есть по сути атака "человек по середине" это и есть форвардинг) по сути притвориться маршрутизатором.
В таком положении, хост злоумышленника будет получать информацию от прежнего маршрутизатора и отправлять поддельные RIP следующему. И в этом случае, он можешь создавать ложные маршруты, проходящие через злоумышленника.
Понижение версии протокола RIP
Во-первых стоит сказать, что протокол RIP существует в 2 версиях RIP1 и RIP2 и версия 1 не поддерживает аутентификацию. То есть маршрутизаторы принимают информацию от непроверенных коллег. В версии второй протокола, уже реализована аутентификация маршрутизаторов. По этому атакующий может использовать любой инструмент по генерации пакетов, например nemesis и с помощью всего одной команды понизить версию протокола с 2 на 1. К слову сказать, на маршрутизаторах Cisco которые работают под управление IOS данная атака работать не будет.
Взлом хеша MD 5 Даже если используется 2 версия протокола с шифрованием MD5 админу не стоит расслабляться. Потому что шифрование MD5 поддается расшифровки с помощью такой утилиты как cain & abel. Кроме, того утилита может, самостоятельно прослушивать трафик. И в случае если происходит аутентификация маршрутизатора с использованием MD5, научившись использовать cain & abel злоумышленник, сможет расшифровать эти данные. Но если говорить коротко, техника расшифровки MD5 сводится к простому Brut-Force перебору.
Безопасность
В первую очередь стоит сказать, что протокол RIP считается достаточно устаревшим. Вследствии чего и перечисленные атаки нельзя назвать новыми, но всегда стоит помнить о возможности проведения таких атак. Если же говорить о том как защититься от подобных атак, то скорее всего это должно быть комплексное решение:
1 проверка подлинности RIP версии 2
2 задание равных маршрутизаторов
Для того чтобы избежать атаки с ложными маршрутами о которых я говорил раньше, необходимо настроить интерфейс маршрутизатора использующие RIP2 на проверку подленности с помощью пароля. Получаемые "объявления" RIP c паролями, которые не соответствуют тем которые заданы в настройках, будут отклоняться. Передавать пароли опять же стоит в зашифрованном виде.
Задание равных маршрутизаторов, это по сути составление некого списка маршрутизаторов с их IP которым можно доверять и от которых можно принимать пакеты. Кроме того, можно настроить фильтрацию маршрутов на каждом интерфейсе RIP.
У меня на этом все суперпользователь, сегодня я постарался коротко рассказать, что такое протокол RIP как он работает в сети, какие атаки могут быть произведны на базе этого протокола, а так же как защитить данные от подобных атак.
До связи.