Чтение онлайн

на главную - закладки

Жанры

Linux глазами хакера

Флёнов Михаил Евгеньевич

Шрифт:

А кто мешает нашему компьютеру отвечать на чужие ARP-запросы и представляться участникам сети от чужого лица? Вот и я говорю, что никто. У протокола ARP нет никакой авторизации и проверки достоверности ответа. Значит пакет получит тот компьютер, который откликнется, вне зависимости от его IP.

Но неприятности еще впереди. Получив ответ на ARP-запрос, ОС кэширует результат и при последующих обращениях к IP-адресу не отправляет широковещательный запрос, а использует информацию из ARP-кэша. И вот теперь о самом страшном. Некоторые ОС (не будем указывать пальцем) кэшируют ARP-ответы не только на свои, но и на чужие запросы. Таким образом, злоумышленник может разослать информацию (ARP-ответы) со своим MAC-адресом, но чужими IP, всем компьютерам, и они добавят в кэш неверные записи.

Для просмотра текущего кэша вашей ARP-таблицы можно выполнить команду

arp
. На экране вы увидите примерно следующий результат:

Address HWtype HWaddress Flags Mask Iface

192.168.77.10 ether 00:03:0D:06:A4:6C C eth0

Наиболее интересными колонками здесь являются:

Address
— IP-адрес компьютера;

HWtype
— тип удаленного устройства;

HWaddress
— MAC-адрес удаленного устройства;

Iface
— сетевой интерфейс.

Если вам необходимо обратиться к компьютеру с IP-адресом 192.168.77.10, то по этой таблице ОС определяет, что он находится на сетевом интерфейсе eth0, и его аппаратный адрес равен 00:03:0D:06:A4:6C.

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

Для удаления записи необходимо использовать команду

arp
с ключом
– d
и IP-адресом. Например, для уничтожения ARP-записи, которая показана выше, необходимо выполнить следующую команду

arp -d 192.168.77.10

Если теперь просмотреть кэш ARP-таблицы, то в результате вы увидите вместо MAC-адреса запись (

incomplete
):

Address HWtype HWaddress Flags Mask Iface

192.168.77.10 (incomplete) eth0

При работе с кэшем ARP вы должны знать, что записи в нем не вечны. Все, что добавляется в кэш через ARP-протокол, а не вручную, имеет статус Dynamic (динамический). Такие записи через определенное время удаляются. Хакеры знают это, поэтому могут рассылать ARP-ответы с фальшивым MAC-адресом через определенные промежутки времени. Если вы будете просто удалять каждый раз неверные записи из кэша, то эффекта это не даст. Необходимо искать злоумышленника.

Чтобы вам проще было определить поддельные записи, можно использовать протокол RARP (Reverse ARP, обратный ARP), который по известному MAC-адресу запрашивает IP-адрес. В результате вам должны вернуться ответы со всех компьютеров, IP-адреса которых находятся в вашем кэше. Помните, что записей может быть несколько. Например, в моем компьютере на сетевой карте установлено сразу два адреса для одновременной работы в двух логических сетях. Это нормальная ситуация. А вот если ответ от какого-либо IP не получен, то такую запись следует удалить.

Для управления ARP-таблицами в Windows я рекомендую использовать утилиту CyD NET Utils (www.cydsoft.com).

В ОС Windows проводить атаку по подделке MAC-адреса очень сложно. Если вы разошлете ложные ARP-ответы для IP-адреса 192.168.77.10, указав собственный MAC-адрес, то этот компьютер выдаст ошибку с сообщением, что адрес уже используется другим сетевым устройством, и выйдет из сети. Чтобы этого не произошло, не рассылайте широковещательные ARP-пакеты с поддельным адресом. Необходимо целенаправленно обманывать только определенную машину.

Рассылка ARP-пакетов — непростое занятие. Намного легче изменить аппаратный адрес, если это поддерживается вашей сетевой картой. Для этого используется уже знакомая нам утилита ifconfig с ключом hw, после чего нужно указать тип адреса и его новое значение.

С помощью подделки ARP-таблиц легко провести коммутаторы, но не маршрутизаторы, которые работают на 3 уровне, т.е. на уровне IP-адресов. Тут уже нужна фальсификация не аппаратных адресов, а IP-маршрутов. Чтобы сделать это, хакеры взламывают маршрутизаторы и перепрограммируют их на свой лад.

Противостоять подмене ARP-таблиц можно, только если вы используете для организации сети управляемые коммутаторы. В них есть возможность закрепить за каждым портом определенный MAC-адрес компьютера. Это усложнит задачу, но не разрешит ее полностью.

Полное решение проблемы кроется в использовании статичных ARP-записей, которые вы должны вручную прописать на каждом клиентском компьютере. Но в этом варианте кроется неудобство, потому что придется редактировать эти записи после каждого изменения сетевого оборудования на любом из компьютеров. Если где-то поменялась сетевая карта, то и ее MAC-адрес тоже изменится. Для облегчения этой процедуры можно создать сценарий на сервере, который будет заполнять ARP-таблицу нужными значениями. Клиенты должны при старте системы запускать этот сценарий.

Вывод из строя коммутаторов

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

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

Задача хакера — загрузить коммутатор так, чтобы тот не успевал справляться с трафиком. Лучше всего это сделать, если засыпать коммутатор пакетами с неверными MAC-адресами. На анализ таких пакетов уходит слишком много ресурсов, и Switch перестает справляться с нагрузкой.

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

Поделиться:
Популярные книги

Математика. Поиск истины.

Клайн Морис
Научно-образовательная:
математика
7.00
рейтинг книги
Математика. Поиск истины.

Кодекс Крови. Книга ХVI

Борзых М.
16. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.25
рейтинг книги
Кодекс Крови. Книга ХVI

Путь эльдар: Омнибус

Торп Гэв
Warhammer 40000
Фантастика:
эпическая фантастика
4.50
рейтинг книги
Путь эльдар: Омнибус

Солнечный корт

Сакавич Нора
4. Все ради игры
Фантастика:
зарубежная фантастика
7.88
рейтинг книги
Солнечный корт

Рассвет русского царства

Грехов Тимофей
1. Новая Русь
Документальная литература:
историческая литература
5.00
рейтинг книги
Рассвет русского царства

Виконт. Книга 4. Колонист

Юллем Евгений
Псевдоним `Испанец`
Фантастика:
фэнтези
попаданцы
аниме
7.50
рейтинг книги
Виконт. Книга 4. Колонист

Дважды одаренный. Том III

Тарс Элиан
3. Дважды одаренный
Фантастика:
альтернативная история
аниме
фэнтези
фантастика: прочее
юмористическое фэнтези
5.25
рейтинг книги
Дважды одаренный. Том III

Последний Паладин. Том 9

Саваровский Роман
9. Путь Паладина
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Последний Паладин. Том 9

Война магов

Прозоров Александр Дмитриевич
6. Князь
Фантастика:
фэнтези
альтернативная история
8.34
рейтинг книги
Война магов

Антимаг

Гедеон Александр и Евгения
1. Антимаг
Фантастика:
фэнтези
6.95
рейтинг книги
Антимаг

Гримуар темного лорда IX

Грехов Тимофей
9. Гримуар темного лорда
Фантастика:
попаданцы
альтернативная история
аниме
фэнтези
5.25
рейтинг книги
Гримуар темного лорда IX

Эпоха Опустошителя. Том VI

Павлов Вел
6. Вечное Ристалище
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Эпоха Опустошителя. Том VI

Контртеррор

Валериев Игорь
6. Ермак
Фантастика:
альтернативная история
5.00
рейтинг книги
Контртеррор

Киберпространство

Ливадный Андрей Львович
43. Экспансия: История Галактики
Фантастика:
космическая фантастика
7.69
рейтинг книги
Киберпространство