Почему не надо считать трафик по IP- и Mac-адресам
Подсчет трафика по IP- и MAC- адресам не всегда будет правильным
по причине того, что и то и другое можно легко изменить пользуясь только
стандартными средствами операционной системы, причем при грамотной
одновременной замене IP-и MAC-адреса системы мониторинга не смогут
заметить подлога. Правда стоит заметить -
если IP-адрес можно поменять всегда, то MAC-адрес можно поменять
только тогда, когда эта возможность заложена в самой сетевой карте.
Но, в настоящее время, все больше производителей сетевых карт
закладывают эту возможность в свои изделия.
В этой статье будут продемонстрированы примеры подмены IP- и MAC-адресов,
а в завершении даны некоторые рекомендации о тех средствах подсчета трафика,
на которые трудно повлиять с рабочего места пользователя.
Смена IP-адреса
Начнем по-порядку, рассмотрим, как можно сменить IP-адрес.
Для этого в системах Windows NT/2000/XP/2003
нужно обладать правами администратора.
Если администратор сети не ленивый и в сети строгий порядок, то конечно
пользователь никогда не получит этих прав. Но, к сожалению, такие
случаи редки, обычное дело, когда пользователь полный хозяин на своем
компьютере. Итак, чтобы поменять IP нужно всего лишь выполнить такие
действия:
войти в систему под привилегированным пользователем
(это любой пользователь, который принадлежит системной группе Администраторы),
а дальше нажать на кнопку "Пуск" -> "Настройка" ->
"Панель управления" -> "Сетевые подключения",
далее выбираете Ваш сетевой интерфейс, щелкаете по нему правой
кнопкой мыши, и в контекстном меню выбираете "Свойства",
Вы должны будете увидеть что-то похожее на следующий рисунок:
Выбираете пункт "Протокол Интернета (TCP/IP)" и щелкаете по кнопке "Свойства",
далее Вы увидите такую картинку:
Теперь Вы можете менять Ваш IP-адрес на какой угодно.
Если заранее знать чужой адрес и время, в которое этот адрес свободен,
например по причине того, что компьютер выключен, то никто и не заметит,
что была подмена адресов.
В операционных системах Windows 95/98/Me, где вообще нет никакой защиты
системы от пользователя, чтобы поменять IP-адрес,
нужно сделать следующее: щелкнуть по кнопке "Пуск" -> "Настройка" ->
"Панель управления" -> "Сеть" - выбираете компонет TCP/IP Вашей сетевой карты.
Далее щелкаете по кнопке "Свойства" Вы сможете увидеть примерно такую картинку:
Теперь Вы снова можете менять IP-адрес на любой другой.
Если сменить свой IP-адрес на чужой во время того, как он используется
компьютером-владельцем, то и Вы и пользователь компьютера-владельца этого адреса
сможете наблюдать сообщение на экранах, что этот IP-адрес используется
другим компьютером.
Обычную подмену IP-адреса сетевой администратор может легко опознать,
для этого есть соответствующее программное обеспечение,
например программа arpwatch. Эта программа сообщит,
что в сети была совершена подмена IP-адреса и покажет какой IP был до подмены,
а какой стал после.
Смена MAC-адреса
В этом разделе мы рассмотрим, как так же легко можно поменять MAC-адрес
у компьютера.
Немного информации: MAC-адрес - это уникальный 6-байтный адрес Вашей
сетевой карты в Вашем сегменте сети. Изначально предполагалось,
что этот адрес будет уникальным во всем мире, но с ростом сетей
стало понятно, что 6-байт для уникальности адреса не так уж и много,
поэтому в большинстве современных сетевых карт, этот адрес вычисляет
процессор сетевой карты или ее драйвер, когда происходит подключение
к сегменту сети. Во многих драйверах заложена возможность устанавливать
MAC-адрес вручную, чем мы (и злоумышленник то же) и воспользуемся.
В системах Windows NT/2000/XP/2003 для этого опять таки нужно,
чтобы тот пользователь под которым мы работаем относился к группе Администраторы.
Заходим в систему, щелкаем по кнопке "Пуск" -> "Настройка" ->
"Панель управления" -> "Сетевые подключения", далее выбираете нужный
сетевой интерфейс, щелкаете по нему правой кнопкой мыши, и в
контекстном меню выбираете "Свойства", перед Вами должна
появиться картинка похожая на такую:
В пункте "Подключение через:" будет кнопка "Настроить",
щелкаете по ней появляется новое окно "Свойства", выбираете вкладку
"Дополнительно" и видите примерно такую картинку:
В поле "Значение" введите нужный Вам MAC-адрес в шестнадцатиричном виде,
например такой 001234567890. Дальше нам нужно только нажать кнопку "OK" и MAC-адрес
Вашей сетевой карты изменен.
Чтобы сменить MAC-адрес в абсолютно-незащищенных системах Windows 95/98/Me
нужно сделать такие действия: щелкнуть по кнопке "Пуск" -> "Настройка" ->
"Панель управления" -> "Сеть", выбрать из списка компонентов Ваш сетевой интерфейс
Щелкаете по кнопке "Свойства", в появившемся окне переходите во вкладку "Дополнительно"
В компоненте "Свойство:" выбираете пункт "Network Address" и теперь Вы снова можете
менять MAC-адрес на тот, который нужен Вам.
Примечание: Названия отдельных пунктов и компонент, а так же язык,
на котором они написаны, могут меняться, все это зависит от используемой
версии Windows, а также от производителя драйверов. Но расположение основных деталей
остается.
Эксперимент
Многие сетевые администраторы устанавливают программное обеспечение,
которое следит за соответствием IP-адреса MAC-адресу, например уже
известная нам утилита arpwatch. Проведем небольшой экспиремент.
Для него нам нужно иметь локальную сеть из нескольких компьютеров
(но не меньше, чем из трех).
Один из этих компьютеров пусть условно будет сервером, на котором
запустим arpwatch. Эта утилита поработает некоторое время и наберет
статистику по нашей локальной сети. Выберем из нашей сети еще два компьютера,
один из них назовем жертва, другой злоумышленник. На компьютере-жертве запомним
значения IP- и MAC-адресов и отключим его от сети. Далее, отключим
компьютер-злоумышленник от сети и установим значения IP- и MAC-адресов, такими,
какие они были на жертве. Подключаем злоумышленника снова к сети.
На сервере посмотрим статистику arpwatch, как и предполагалось эта
утилита не заметила, что произошла смена адресов.
Этот небольшой экспиремент показал - arpwatch не является универсальным
средством выявления подмены адресов.
Вот далеко не полный перечень сетевых карт на которых Вы можете менять MAC-адреса:
карты на чипе rtl8139a/b/c, на них строят свои продукты Compex,
Acorp, 3Com. Эта возможность присутствует также на сетевых картах от
Intel, Marvel, Allied Telesyn, D-Link. Это лишь те карты, которые видел автор,
а сколько их существует на самом деле, трудно определить...
Немного о коммутаторах
Многие управляемые коммутаторы, считают трафик на своих портах, казалось бы,
что может быть проще - бери и снимай значения прямо с соответствующего коммутатора.
Но этот метод неудобен уже самому администратору. Самые частые причины такие:
считается вообще весь трафик, проходящий через порт, а не только тот, который надо
учитывать, при сбое коммутатора вся статистика теряется, дополнительные хлопоты
при включении нового компьютера в сеть или когда компьютеры меняют порты на
коммутаторе, ну и стоимость самого коммутатора конечно. На мой взгляд даже этих
причин достаточно, чтобы отказаться от такого метода подсчета трафика.
Выводы
Какие же еще методы можно применить для учета трафика ?
Коммутаторы, к которым непосредственно подключены компьютеры,
умеют считать трафик безошибочно. Ведь между портом коммутатора и портом
сетевой карты нет промежуточного звена, значит все, что вышло из порта
коммутатора попадет в сетевую карту и наоборот. Образуется выделенная линия.
Но в предыдущем разделе мы обсудили, что считать трафик на коммутаторах
не удобно. Аналогом выделенной линии является туннель, соединяющий
одну точку с другой. По такому принципу работает всем хорошо знакомая
технология VPN (virtual private network) - виртуальная частная сеть.
У нее есть масса полезных сторон:
- VPN разворачивается уже внутри физической сети,
- существует аутентификация пользователя по имени и паролю,
- поддерживается шифрование передаваемого трафика,
- можно сделать настройку, чтобы адрес для клиента выдавался серверной стороной,
- по окончании сессии обычно выдается статистика сколько прошло байт в сторону клиента и от него
Используя эту технологию мы можем "прокинуть" виртуальный туннель от пользователя
до сервера или маршрутизатора внутри уже существующей сети. И не важно,
что будет являться этой сетью локальная сеть или InterNet.
При этом мы можем проверить, а достоин ли пользователь воспользоваться
нашими услугами, то есть опознать его и самое главное мы знаем сколько байт
прошло по этому соединению.
Сам по себе сбор статистики с VPN-соединения на сервере задача
рутинная, но ее можно поручить различным автоматизированным средствам.
В настоящее время есть готовые решения, которые не только считают трафик
и аутентифицируют клиентов, но и могут сами отключить клиента при превышении
выделенного ему лимита, а также выдать статистику по всем клиентам в реальном
времени и многое другое.
Антон Горбунов, Иркутск