MAC-адрес

MAC-адрес

Сообщение Mister X 29 июл 2010, 01:21

Многие уверены, что обезопасить компьютер от вторжения можно только при помощи средств операционной системы. Это не совсем так. Ведь сетевые пакеты, прежде чем попасть на ваш ПК, проходят через различные устройства.
В локальной сети взаимное распознавание компьютеров происходит по нескольким признакам. По физическому адресу сетевой карты.
Каждая сетевая карта маркируется уникальным в пределах сети MAC-адресом — 12-значным шестнадцатеричным числом. Прежде чем отправить пакет в локальную сеть, драйвер сетевой карты определяет по IP-адресу точки назначения физический адрес сетевой карты компьютера адресата и помечает пакет этим MAC-адресом. С другой стороны сети сетевая карта, получившая пакет со своим MAC-адресом, принимает его и пропускает по цепочке: драйвер — операционная система — приложение.
Каким образом можно узнать MAC-адрес по адресу IP? Для этого тоже существует соответствующий протокол — ARP (Adress Resolution Protocol). Работает он по методу широковещательной рассылки. Когда нужно узнать физический адрес сетевой карты, инициируется посылка пакета с запросом: "А какой MAC-адрес у ресурса с адресом 192.168.0.xxx?". Соответствующий этому адресу компьютер вернет ответ с запрашиваемым физическим адресом. Далее определенное таким образом соотношение "IP-адрес — MAC-адрес" будет занесено в ARP-таблицу сетевой карты, и последующий широковещательный запрос будет уже не нужен.
Беда в том, что в то время, когда драйвер сетевой карты попытается определить MAC-адрес сетевого устройства, чтобы подписать пакет, будут задействованы доверительные отношения. А именно: ARP-протокол.
Можно ли методами, аналогичными тем, которые используют "p"- и "h"-узлы, сделать работу протокола ARP безопасной? Ответ отрицательный. На сегодняшний момент нет даже попыток создать что-то наподобие сервера MAC-адресов. С другой стороны, существуют еще кое-какие (более хлопотные, чем использование централизированного механизма) способы повышения безопасности сети. Главные возможности заложены в системной утилите arp, которая поставляется с ОС Windows. С помощью этой утилиты можно жестко задать таблицу ARP-адресов. То есть системный администратор может написать скрипт (вроде того, что приведен ниже), чтобы компьютер хакера не смог в результате широковещательного запроса прислать свой MAC-адрес для другого IP-адреса:

rem очищаем всю таблицу
arp -d *
rem жестко задаем mac-адреса
arp -s 192.168.0.1 00-aa-bb-cc-dd-e1
...
arp -s 192.168.0.9 00-aa-bb-cc-dd-e9
К сожалению, такой скрипт нужно будет прописать на каждом хосте. А если в каком-нибудь компьютере вы поменяете сетевую карточку или ее IP-адрес, придется произвести соответствующие изменения на всех компьютерах сети. Согласны ли вы платить такую цену за безопасность? Кстати, это еще не все.
В самом начале развития локальных сетей была предпринята попытка создать уникальную идентификацию сетевых устройств по их аппаратному (MAC) коду. Каждый производитель имел свой диапазон таких адресов и следил, чтобы сетевые устройства с одинаковым аппартным адресом в одной локальной сети не встречались.
Казалось бы, при такой системе физический адрес является достаточно надежным признаком идентификации устройства в сети. Но это не так. В архитектуре компьютеров IBM любая аппаратная переменная выглядит как ячейка памяти, которая может быть подменена программно. Так можно поменять и MAC-адрес своей сетевой карты. Некоторые драйверы позволяют сделать это, просто задав соответствующее значение в диалоге; для других случаев следует задействовать программные инструменты взломщика.
Впрочем, вывод остается тем же: даже если вам удалось обеспечить адекватное определение соответсвий "имя ресурса — его IP-адрес — физический адрес", у хакера все равно остается еще один козырь. Причем с точки зрения системы подмена MAC-адреса является самой опасной — ведь это, можно сказать, паспорт сетевого устройства, его уникальный идентификатор. У ОС нет возможности проверить правильность того или иного MAC-адреса, в отличие от правильности имени ресурса или его IP-адреса.
Мы пришли к выводу, что обеспечить безопасность сети одними только программными методами невозможно. Основой, базисом, на который будут опираться средства защиты ОС, должно стать сетевое оборудование.
Сегодня в подавляющем числе случаев локальные сети строятся с использованием коммутаторов (switch). Это устройство имеет ряд полезных свойств, которые делают локальную сеть более эффективной и безопасной. Во-первых, коммутатор отсылает сетевые пакеты по принципу "точка-точка" — то есть они не попадают в общий цикл, где могут быть проанализированы хакером. Во-вторых, у него имеется собственная таблица ARP — таблица физических и IP-адресов. Заполняется она автоматически: как только компьютер включается, он регистрируется в сети — и коммутатор использует данную информацию для формирования таблицы.
Что это дает? Предположим, компьютеру нужно узнать физический адрес ресурса с IP 192.168.0.1. Он формирует соответствующий широковещательный запрос и отсылает его в сеть. Коммутатор перехватывает запрос и, используя свою таблицу, отсылает его одному лишь компьютеру с адресом 192.168.0.5. Хост хакера остается на голодном пайке. Таким образом коммутатор, пресекая широковещательные рассылки, значительно увеличивает надежность сетевых соединений.
А как быть с MAC-адресами? Действительно, у взломщика остается возможность подмены этого идентификатора. И тут самое время заметить, что коммутаторы бывают управляемыми и не управляемыми. Именно последние приобрели — благодаря своей цене — широкое распространение. Все данные, относящиеся к сетевым адресам, не управляемыми коммутаторами заполняются автоматически. Кроме того, эти свитчи не располагают методами контроля MAC-адресов.
Так что, если необходимо обеспечить безопасность на самом высоком уровне, следует остановить свой выбор на управляемом коммутаторе. Помимо прочего, такое устройство позволяет привязать MAC-адрес сетвой карты к определенному порту коммутатора. Например, можно указать, что сетевая карта с адресом 00-a0-00-00-00-e1 подключена к пятому порту. А это связывает руки взломщику — ведь пакеты, отправляемые на определенный физический адрес, будут доставлены нужному компьютеру. При такой схеме принцип безопасности сети выглядит так: с помощью WINS обеспечиваем правильное разрешение IP-адреса по имени ресурса, коммутатор (управляемый и не управляемый) обеспечивает определение MAC-адреса по его IP, и, наконец, управляемый коммутатор привязывает соответствующий MAC-адрес к нужному компьютеру.
Теперь хотя бы понятно, за что мы платим деньги, когда покупаем сетевое оборудование. Ведь дело, оказывается, не только в количестве портов и надежности их работы. Не менее важную для администратора роль играют также средства контроля и безопасности.
Конечно, лучшим из способов обеспечения конфиденциальности документов является шифрование. Но для сетевых приложений такод подход зачастую не применим. Еще один выход — шифрование трафика посредством IP Sec. Неплохой способ, однако он требует дополнительного переоснащения компьютеров. И даже при исользовании шифрования пакетов вам нужно будет использовать соответствующий коммутатор — хотя бы для того, чтобы быть уверенным в правильности доставки пакетов.
Админ не тот, кто об этом кричит, а тот, кто может молча помочь другому... Изображение
Аватара пользователя
Mister X
Администратор
 
Сообщений: 138
Зарегистрирован: 21 июл 2010, 21:42
Пол: Мужской

Вернуться в Общие вопросы


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron