GetInfo.Ru – Компьютерная библиотека
Последние поступления
Как выбрать систему управления базы данных
Базы данных03/09/14
Этапы загрузки UNIX (в схеме)
Unix27/03/12
Gatewall Antispam: тотальный контроль электронной почты
Спам21/04/11
Мастер-класс: создаем Интернет-магазин (Часть 1)
Обзоры ПО20/04/11
CorelDRAW Graphics Suite X5: Что нового?
Обзоры ПО20/07/10
Добавить статью
Самые читаемые материалы
Что такое SSH?(20341)
Один в поле не воин: межсетевые экраны и антивирусы - братья на веки!(11279)
Создание отдела информационной безопасности, или строим забор своими руками(11171)
Оценка затрат компании на ИБ(10343)
Десять мифов о паролях в Windows(9916)
Всего статей: 793Всего авторов: 364Подразделов: 47Добавлено за сутки: 0
Статьи  СТАТЬИ Форум  ФОРУМ Рейтинг  РЕЙТИНГ Поиск  ПОИСК Контакты  КОНТАКТЫ
» Главная » Вопросы безопасности » Безопасность сети на основе 802.1х и SFlow

Безопасность сети на основе 802.1х и SFlow


Владислав Пинженин, Артем Мурашкин
vlad@lanbilling.ru
http://www.lanbilling.ru/

Введение
Причин, побуждающих обратиться к обозначенной в названии статьи теме, несколько. Во первых это сравнительная новизна спецификаций RFC 3176 (SFlow) и IEEE 802.1x, во вторых относительная скудность информации об их возможных применениях, особенно на русском языке, а в третьих и, пожалуй, самой значимой причиной является серьезный интерес со стороны операторов мультисервисных сетей к решениям на базе 802.1х и SFlow, уже обладающих соответствующей аппаратурой, поддерживающей обе спецификации. Статья состоит из двух частей: первая часть описывает спецификацию IEEE 802.1x и затрагивает основные особенности применения спецификации на практике, поднимая вопросы уязвимости предлагаемой защиты, ответ на которые дается во второй части статьи, описывающей решение, позволяющее избежать негативных моментов, выявленных на практике, в ходе реальных внедрений. В статье использованы материалы переписки между техническими специалистами сетевого департамента московского представительства компании Hewlett Packard и европейским центром компетенции HP, материалы статьи "Procurve networking security solutions: 802.1x and Guest VLANs", а также собственный опыт разработки и внедрений модуля тарификации SFlow АСР LANBilling специалистами компании "Сетевые решения", аппаратура которой была любезно предоставлена московским представительством компании Hewlett Packard.

Эволюция методов защиты от краж трафика (подмены адресов) и несанкционированного доступа (НСД) к сетевым ресурсам
За последние несколько лет явно вырос темп появления на рынке новых операторов, предоставляющих услуги передачи данных и телефонии (как классической так и в особенности VoIP) разного уровня. От домашних сетей до крупных провайдеров услуг, являющихся владельцами собственных сетей передачи данных (СПД). Рост количества коммерческих операторов был прогнозируемым, однако практика показала скромность прогноза. Помимо появления новых операторов явно ощущается тенденция апгрейда сетевого оборудования в крупных организацих, предъявляющих новые требования как к пропускной способности так и к безопасности внутри корпоративных сетей, которые не могут быть обеспечены аппаратурой, приобретенной 5-10 лет назад в тот момент когда в центре сети нормой было наличие 100 - Мбитного неуправляемого коммутатора второго уровня. Особенностью объединяющей большой процент операторов СПД является то, что большинство из них предоставляя услуги передачи данных по выделенным каналам взымают с абонентов плату пропорциональную объему услуги (в большинстве случаев объему трафика) оказанной абоненту, который на сетевом уровне в общем случае идентифицируется сетевым адресом абонентского устройства (в большинстве случаев IP адресом).

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

Следующим этапом чуть усложняющим НСД совместно со статическими arp таблицами стало применение сетевой аппаратуры с базовыми возможностями port security когда на любой клиентский ethernet порт аппаратура позволяла назначить единственный MAC адрес с которого разрешался доступ к ресурсам. Эта, так называемая защита, также не является надежным средством исключающим НСД со стороны злоумышленника. Кроме того, подобный метод сложен в администрировании, т.к. требует как управления arp таблицами на маршрутизаторе, так и таблицами MAC адресов на сетевых устройствах, что при наличии разветвленной сети со сложной топологией и количеством пользователей более 100 становится настоящей головной болью администраторов и в конечном итоге существенно увеличивает накладные расходы на содержание и управление СПД, не говоря уже об относительной дороговизне аппаратуры поддерживающей MAC based port security по сравнению с неуправляемыми коммутаторами второго уровня.

На сегодняшний момент применяются три основных способа защиты от подмены адресов пользователями сети или их вариации. Самый распространенный и популярный у операторов среднего уровня и в домашних сетях - тунеллирование. Подробно на нем останавливаться не будем т.к. он в деталях описан в статье "VPN и тунеллирование" (3). Суть его в том, что для того что бы иметь доступ к ресурсам абоненту необходимо установить соединение "точка - точка" и получить маршрутизируемый адрес от VPN сервера, что возможно лишь при знании пароля доступа. Опорные адреса базовой сети при этом не маршрутизируются. Следующий надежный способ защиты - применение полноценного, как правило, шифрованного канала VPN между абонентом и точкой доступа оператора. Этот способ требует наличия специализированного ПО, как на стороне абонента, так и на стороне сервера доступа. Хорошим примером ПО, реализующего указанный способ защиты является популярный сегодня пакет CheckPoint Firewall-1 совместно с функцией VPN, где в качестве клиентской части выступает SecuRemote. Этот способ и ему подобные не лишен недостатков и главным из них является дороговизна, либо сложность реализации в случае если коммерческий продукт заменяется ПО собственной разработки.

Последним и самым "свежим" на сегодняшний день способом защиты от НСД является стандарт 802.1х, названный в RU.UNIXFAQ "идеальным и недостижимым". Позволю себе несогласиться с обоими прилагательными, преднамеренно заключенными в кавычки в название статьи, т.к. данный стандарт реализуем без существенных сложностей, ввиду того, что на рынке присутствует уже достаточно программно-аппаратных решений для развертывания соответвующей инфраструктуры, а, кроме того, к сожалению, не является идеальным для обеспечения 100% защиты от НСД даже в тех сетях где применяется только 802.1х совместимое оборудование. Однако при условии применения 802.1х совместно с протоколом Sflow, такими возможностями коммутаторов HP ProCurve как "port isolation group", "MAC address lockdown", "ACL" и при наличии механизмов контроля, за возможной подменой IP и MAC адресов, о которых мы будем говорить во второй части статьи, данный стандарт приближает предложенный способ защиты к идеальному, хотя и не самому простому с точки зрения технической реализации.

802.1х
В структуре решения по обеспечению защиты от НСД на базе стандарта 802.1х выделяется три основных компонента: суппликант (supplicant), коммутирующее устройство с поддержкой 802.1х (authenticator) и сервер аутентификации (authentication server). Суппликант - программный код на стороне клиента, который обеспечивает взаимодействие аппаратуры клиента с пограничным сетевым устройством (edge network device) в соответствии со спецификациями 802.1х. Именно суппликант обеспечивает передачу атрибутов доступа к ресурсам на коммутатор.

Authenticator - пограничное сетевое устройство, которое обеспечивает проверку полномочий абонента на доступ к ресурсам сети. Это устройство (коммутатор) осуществляет запрос на проверку полученных атрибутов доступа в сеть от суппликанта на сервер аутентификации, в качестве которого выступает RADIUS сервер и принимает решение о переводе соответствующего Ethernet порта в активное состояние.

Сервер аутентификации - RADIUS сервер, с поддержкой EAP метода аутентификации. Сервер аутентификации имеет доступ к БД учетных записей, на основе данных которой и принимается решение о возможности предоставления доступа для того или иного клиента в зависимости от ряда параметров, ключевым из которых является баланс абонента, рассматривая применение решения на базе 802.1х в структуре сетей коммерческих операторов связи.

Ключевой идеей стандарта 802.1х являет то, что по умолчанию порт пограничного устройства находится в неактивном состоянии и не обеспечивает передачу данных * (* - исключением является возможность коммутаторов HP ProCurve предоставляет доступ абонентов не поддерживающих 802.1х в "гостевые" VLAN (Guest VLAN) см. (1)).

После успешной аутентификации порт устройства переводится в активное состояние и обеспечивает передачу данных. Таким образом, в зависимости от полномочий абонента, решение на базе 802.1х позволяет управлять непосредственно портами 802.1х совместимого коммутатора на канальном уровне. Порты коммуатора могут динамически менять свое состояние из активного в пассивное и наоборот. Это отличает данное решение от других в которых также применяется RADIUS аутентификация PPPoE соединений коммутатором. Важно понимать, что однажды аутентифицировавшись корректно абонент посредством суппликанта переводит порт в активное состояние (в этом суть класса решений Port Security), что создает определенную уязвимость, называемую "Piggy backing", устранение которой является основной темой второй части этой статьи: будучи переведенным в активное состояние правильной аутнтификацией ("поросенок открывает калитку") порт коммутатора обеспечивает передачу данных всего сетевого сегмента подключенного к нему даже в том случае если используется MAC address lockdown т.к. последний с легкостью подделывается недобропорядочными пользователями ("поросята выходят из загона"). Для реализации Piggy backing достаточно подключить концентратор к 802.1х порту коммутатора (как правило это проделывает сам пользователь) и корректно аутентифицировавшись пользоваться ресурсами сети с поддельного IP адреса, не забыв присвоить правильный MAC адрес компьютеру. В тех случаях когда абонентское устройство не поддерживает 802.1х в коммутаторах HP ProCurve существует возможность провести Web Based Authentication для того, что бы активизировать соответствующий порт коммутатора. В данном случае коммутатор является мини www сервером, обратившись через броузер к которому можно передать атрибуты доступа к сети путем заполнения соответствующей вэб формы.

Комплексное решение по обеспечению безопасности на базе 802.1x, SFlow, агентов LANBilling RADIUS и SFlow
Как было показано выше внедрение схемы 802.1х само по себе не обеспечивает должного уровня защиты от НСД в сетях коммерческих операторов связи, однако комбинирование применения стандарта 802.1х с протоколом экспорта статистической информации SFlow, а также с внешними механизмами контроля доступа, реализованными, например, в агентах АСР LANBilling SFlow и RADIUS позволяет обеспечить должный уровень безопасности. Существует, как минимум два способа решения проблемы Piggy backing.

Суть первого из них в следующем (вариант 1, без поддержки возможностей расширенного контроля доступа со стороны коммутатора): совместить 802.1x аутентификацию доступа к ресурсам сети абонентов через RADIUS агент LANBilling и учет (тарификацию) сгенерированного абонентами трафика при помощи SFlow агента. Данное совмещение позволяет SFlow агенту АСР LANBilling выявлять несоответствия в дэйтаграммах SFlow, и блокировать тот трафик, который сгенерирован абонентами, аутентификация которых не была успешной, но чей трафик проходит через активные порты коммутатора. Признаком по которому осуществляется принятие решение о блокировке трафика является отсуствие корректного значения RADIUS user ID в SFlow дэйтаграммах. В подобных случаях агент запускает внешние процедуры блокировки с соответствующими параметрами, основной из которых это IP адрес с которого был осуществлен доступ. Существует несколько вариантов блокировки паразитного трафика, самый распространенный из которых - внесение соответвующего ACL в коммутатор 3-го уровня (HP ProCurve 5300xl или 9300xl).

Применение данной схемы помимо очевидных плюсов в защите от НСД позволяет осуществить online отключение (и подключение) абонентов от услуги по истечению балансных средств на рассчетном счете абонента, также посредством внешних процедур, оказывающих активное воздействие на, в общем случае, транспортную систему. В частности оба агента, как SFlow, так и RADIUS (который в одном из своих режимов способен тарифицировать услугу доступа по выделенным каналам по объему данных) имеют в своем составе модуль контроля доступа, который обеспечивает запуск внешних процедур блокировки/разблокировки с соответвующими параметрами.

Второй способ защиты от Piggy backng базируется на новых возможностях прошивок (E.09.00 и выше) для коммутаторов 53хх. В которых реализован реализован 802.1X протокол с расширенным контролем доступа, где появилась возможность ограничивать подключение индивидуально для каждого пользователя. Работает этот способ следующим образом. В первоначальном состоянии порт закрыт. После успешной аутентификации 802.1x суппликанта порт активируется, при этом в таблицу MAC адресов на этом порту (первоначально пустую) заносится MAC подключившегося клиента. При попытке обмена данными через этот порт с другого Ethernet-адреса (которого нет в таблице) запустится механизм аутентификации для нового пользователя, после чего его MAC будет добавлен в таблицу (в случае успеха), либо в доступе будет отказано. На данный момент HP Procurve 53xx способен запомнить до 32 адресов на каждом порту, где сконфигурирован 802.1x. Запомненные MAC-адреса удаляются из таблицы по мере истечения таймаута после прекращения передачи кадров с данного адреса. Не исключена возможность подмены MAC-адреса в промежуток времени между выключением "законного владельца" и удалением его MAC'а из таблицы коммутатора. В этом случае злоумышленник сможет завладеть каналом, не проходя аутентификации. Чтобы избежать подобной ситуации, в коммутаторе имеется возможность проведения реаутентификации с заданным промежутком времени, чтобы проверить подлинность работающего клиента. Данная процедура при использовании метода EAP/TLS проходит незаметно для пользователя, т.к. не требуется ввода логинов и паролей.

Создание сертификатов
Для EAP/TLS аутентификации необходимы сертификаты (как на клиентской стороне, так и на сервере), подписанные CA (Certificate Authority) - корневым центром сертификации. Для использования сертификатов внутри организации нет нужды подписывать сертификат в сторонней CA - можно создать свой корневой self-signed сертификат. Для генерирования сертификатов используется утилита openssl. Для быстрого создания всех необходимых сертификатов проще всего воспользоваться скриптами, входящими в дистрибутив FreeRADIUS'а (scripts/certs.sh), либо альтернативными скриптами в составе дистрибутива LB (cert_server.sh, cert_client.sh), которые в интерактивном режиме генерируют все необходимые файлы. Параметры сертификата (название организации, страна, город, email и пр.) определяются внутри скрипта. Нас будут интересовать следующие файлы. Для сервера: cakey.pem, cert_srv.pem - корневой сертификат и сертификат сервера соответственно. Инструкции по установке сертификатов на сервере даны в разделе "Настройка RADIUS агента АСР LANBilling". Для клиента: root.der, cert_clt.p12 - открытый ключ корневого сертификата и клиентский сертификат, содержащий так же закрытый ключ, защищенный паролем. Эти 2 файла вместе с логином (на кого выдан сертификат) и паролем передаются клиенту.

Настройка клиентской машины (supplicant)
Для клиентов под управлением Windows XP подробные инструкции по настройке сетевой карты и установке сертификатов можно найти здесь.

Информацию по конфигурированию 802.1x-суппликанта на Linux можно поискать по ссылкам: www.missl.cs.umd.edu/wireless/eaptls и open1x.sourceforge.net.

Пример конфигурации HP Procurve 5308xl

Running configuration:

; J4819A Configuration Editor; Created on release #E.09.03

hostname "procurve"
no cdp run
flow-control
module 1 type J4821A
module 2 type J4878A
interface A1
flow-control
no lacp
exit

… skipped …

vlan 1
name "DEFAULT_VLAN"
untagged A1-A4
ip address 192.168.0.1 255.255.255.0
exit
aaa authentication num-attempts 10
aaa authentication port-access eap-radius
aaa accounting network start-stop radius
radius-server host 192.168.1.100 key shared-secret auth-port 34009 acct-port 34008
port-security A1 learn-mode port-access
aaa port-access authenticator A1
aaa port-access authenticator A1 reauth-period 120
aaa port-access authenticator A1 client-limit 32
aaa port-access authenticator active
… skipped …

Рассмотрим более детально инструкции касающиеся описываемого механизма защиты.

В данном примере 802.1x настраивается на порту A1. Согласно документации на портах, сконфигурированных как 802.1x-authenticator, должен быть отключен LACP. Для этого в настройке интерфейса A1 указано no lacp.

Далее настройка RADIUS'а:

radius-server host 192.168.1.100 key shared-secret auth-port 34009 acct-port 34008 - данные RADIUS-сервера,

aaa authentication port-access eap-radius - метод аутентификации для доступа к порту (EAP),

aaa accounting network start-stop radius - включение эккаунтинга (стартовый и завершающий пакеты). Если собирать статистику планируется RADIUS-агентом, то потребуются еще update-пакеты, которые можно включить следующим образом:

aaa accounting update periodic 120.

Далее активация 802.1x на портах (в данном примере на A1):

aaa port-access authenticator A1
aaa port-access authenticator active
Включение расширенного контроля доступа (запоминание MAC-адресов):
port-security A1 learn-mode port-access,
размер таблицы MAC адресов на порту (не более 32):
aaa port-access authenticator A1 client-limit 32

Интервал между запросами аутентификации для подключенных пользователей в секундах:

aaa port-access authenticator A1 reauth-period 120

Если повторные запросы аутентификации не применяются, то необходимо указать время жизни неактивных MAC-адресов в таблице: aaa port-access authenticator A1 logoff-period 600

RADIUS-сервер, естественно, должен быть подключен через обычный порт, т.к. аутентифицировать самого себя по 802.1x будет затруднительно. Подробную инструкцию по настройке 802.1x на коммутаторах HP Procurve 5300 можно получить здесь.

Огромную помощь в написании статьи оказали:

  • Вадим Плесский (московское представительство Hewlett Packard, Business Manager HP ProCurve Networking Business)
  • Дмитрий Першин (московское представительство Hewlett Packard, технический консультант)
  • Александр Гуськов (компания Вимком Оптикс, Москва)
  • Ardon Vos (Центр Компетенции HP в Европе)

(1) "Procurve networking security solutions: 802.1x and Guest VLANs" - http://www.hp.com/rnd/pdf_html/guest_vlan_paper.htm

(2) "Open and Free 802.1x" - http://www.interop.com/lasvegas2004/pdf/opensource.pdf

(3) "Узел доступа VPN и тунеллирование" - http://www.lanbilling.ru/vpn_solution.html

 
21.06.2005
Версия для печати Версия для печати Запомнить ссылку Запомнить ссылку
Ваша оценка:  1   2   3   4   5     

 О проектеПерепечаткаАвторамПартнерыО нас пишут
Наверх
©2003—2007. GETINFO.RU. ВСЕ ПРАВА ЗАЩИЩЕНЫ.