|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Обходим ограничения с IP Source RoutingСуществует достаточно интересная сетевая атака, которая позволяет нам обходить различные ограничения. Например, фильтрацию по IP-адресу для доступа к какому-то хосту. Основная ее фишка заключается в том, что она основана на «естественном поведении» хостов, которое вытекает из стандарта TCP/IP (RFC791). То есть это не проблема конкретной имплементации или проблема дизайна, а иное использование вполне безопасной с виду возможности — IP Source Routing. А мы такое ведь очень любим! К сожалению, скажу сразу, что атаку эту мало где можно сейчас применить, так как в большинстве ОС IP Source Routing отключено по умолчанию. Но обо всем по порядку. Есть протокол IP, и изначально в него как раз была добавлена эта возможность (Source Routing). Суть ее заключается в том, что хост — отправитель пакета имеет возможность в заголовках IP-датаграммы указать, через какие хопы (конечные хосты, сетевое оборудование) этот пакет и ответ на него должны пройти. Да-да, мы можем указывать перечень устройств в пути пакета, то есть мы как бы «маршрутизируем» его. Причем различаются два вида Source Routing: Strict и Loose. Первый — точное указание последовательности хостов (именно и только через них должен пройти пакет), второй — просто перечень хостов, через которые пакет должен пройти, то есть между этими хостами могут быть какие-то еще. Первый вид «изначально» практически не использовался, а вот второй до сих пор номинально жив. Максимальное количество хопов — девять. Практически эта возможность была задумана во многом для тестирования проблем в сети, чтобы мы со своего хоста могли проверить различные маршруты. Окей, а теперь посмотрим на примерчике (взятом с www.enclaveforensics.com), как же мы можем это использовать в своих целях (см. скриншот). Подключаемся к Alice от имени Bob’а Итак, у нас есть (упрощенно): Alice и Bob, у которых «доверительные» отношения. Например, c IP Bob’а можно без аутентификации подключаться по Telnet’у к Alice. Есть Ivan — просто хост в сети (принтер, сетевой девайс), у которого есть доступ в сеть Bob и Alice. Мы — Eddie и наш роутер — Lynksys (который на деле не очень и нужен). Задача — подключиться к Alice от IP Bob’а, в обход ограничений на доступ из нашей сети. Как я думаю, ясно, по сути, мы можем указать IP Bob’a и отправить пакет Alice, но проблема в том, что Telnet — это TCP, а значит, «трехступенчатое рукопожатие», и значит, что Alice напрямую ответит Bob’у и подключения мы не получим. А вот с использованием Loose Source Routing — сможем. Для этого мы делаем такую последовательность: 1. Отправляем пакет Alice с указанием в IP отправителя — Bob’а, а также IP-адреса Lynksys’а и Ivan’a в Source Routing. 2. Пакет проходит через Lynsys, а потом через Ivan’a. При этом пакет обходит ограничения, которые наложены на нас 3. Alice получает наш SYN-пакет, отвечает на него как для Bob’а, но так как у входящего пакета стоит Source Routing, то отвечает Bob’у с тем же списком. То есть пакет к Bob’у должен пройти опять через Ivan’а и наш LynkSys. 4. И все бы дошло до Bob’а, да на нашем LynkSys’е мы пакет пересылаем на наш хост. Таким образом, Alice отвечает Bob’у, а так как пакет для этого должен пройти через нас, то мы имеем возможность «поздороваться по TCP-шному» и получить такой для нас желанный безаутентификационный доступ на Alice. Если же говорить о практической стороне, то попробовать ты можешь, используя тулзу ncat (которая идет в комплекте с nmap). Тебе понадобится параметр –g. Пример смотри на картинке (необходимо насильно указывать протокол IPv4, так что 4 тоже в параметрах). Как уже писалось, современные стационарные ОС и сетевое оборудование по умолчанию отбрасывают такие пакеты. Но вроде старые цисочки, SOHO-роутеры, embedded-девайсы и всякие штуки типа сетевых принтеров все еще могут поддерживать IP Source Routing. TCP-SYN на yandex.ru c LSR через два хоста Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |