ЗАЩИТА сетей MESH Защита С Подтверждением • • • • AES-CCMP ШИФРОВАНИЕ, осуществленное аппаратными средствами чипсета Динамически формируемый Ключ длинной 128 бит, генерируемый во время установки связи. Распределение ключей через безопасный канал AES Каждое подтверждение подключения (backhaul) использует новый ключ, постоянно изменяемый. Подключаемый Узел Основной Узел 802.11 запрос связи содержащий MeshDinamics I.E 802.11 ответ, содержащий зашифрованный временный AES-CCMP Ключ • Все узлы в сети MESH используют 128-битные AES Ключи o • Механизм Шифрования с Контролем пакетов 128-bit AES-CCMP Ключ используется совместно с общедоступным AES Ключом Контроль Доступа • ИСПОЛЬЗОВАНИЕ СТАНДАРТА 802.11i То, есть WPA версии 2 Шифрование и расшифровка реализована аппаратными средствами • Унаследована поддержка 40 и 64-битного WEP шифрования • Идентификация Клиентов с использованием 802.1x встроенная поддержка RADIUS (RFC 3139) • WPA ПЕРСОНАЛЬНЫЙ 802.1x идентификация не используется 256-битный общий мастер ключ для Точки Доступа (AP) и клиентов (PSK [pre-shared key]) • WPA Предприятие Нет общих ключей 802.1x идентификация с генерацией 256-битных Мастер Ключей (то есть PMK [pairwise master key]) 1 Работа 802.1x Определения: SUPPLICANT – Клиент (1) AUTHENTICATOR – AP (2) AUTHENTICATION SERVER –RADIUS Сервер (3) Расширенный Протокол Идентификации В соответствии с RFC 3748 Множество Методов Идентификации Выполняется напрямую по PPP или IEEE 802 3 независимых уровня Методы EAP • PEAP (Защищенный EAP) Использует сертификат со стороны сети, и пароль или сертификат со стороны клиента Подразумевает взаимную идентификацию Поддерживается Windows 2000 (SP4 или позже), Windows XP, и другими программами сторонних разработчиков. • EAP-TLS (EAP с Transport Level Security) RFC 2716 Использует сертификат со стороны сети, и сертификат со стороны клиента Подразумевает взаимную идентификацию Поддерживается Windows 2000 (SP4 или позже), Windows XP, и другими программами сторонних разработчиков. • EAP-TTLS (EAP с Tunneled Transport Layer Security) Использует Сертификат со стороны сети, и пароль, маркер или Сертификат со стороны клиента Подразумевает взаимную идентификацию Обмен данными полностью Зашифрован - включая имя пользователя Поддерживается программами сторонних разработчиков, но не Microsoft • • • • • Supplicant (Клиент) связывается с сервером идентификации используя удостоверение Используемый протокол - EAP Authenticator (Точка доступа) перенаправляет EAP сообщения от клиента по RADIUS обмену и отсылает на AUTHENTICATION SERVER (сервер идентификации) Authenticator (Точка доступа) получит сообщение RADIUS в случае успешной идентификации или ошибки. Подробности обмена зашифрованы и таким образом неизвестны для точки доступа 2 Работа EAP • • • В беспроводных сетях EAP обмен обеспечивается с использованием EAPOL протокола (EAP поверх LAN) -EAPOL, определенный в части спецификации 802.1x EAPOL работает между клиентом и точкой доступа EAPOL сообщения конвертируются в сообщения RADIUS на обратной стороне для связи между точкой доступа и сервером идентификации EAP-TTLS ПРИМЕР • AUTHENTICATION SERVER (Сервер идентификации) является держателем Сертификатов Это такая же концепция как SSL – сертификат должен быть подписан клиентом или его уполномоченным представителем. Сертификат точки доступа должен быть подтверждён мандатом. Если точка доступа имеет неправильный сертификат, клиенту будет отказано в подключении. • Клиент, как правило, не владеет исходной информацией, используя только пароль подключения. Имя пользователя и пароль клиента должны быть идентифицированы. В случае, если они идентифицированы неверно, клиенту будет отказано в подключении точке доступа. Клиент также может использовать сертификат, маркер карты и т.п. Запрос Идентификации Подтверждение мандата Ответ Идентификации (анонимный) TTLS Старт Сертификации СЕРВЕР КЛИЕНТ Клиент обменивается ключами. Верификация сертификата ТОЧКА ДОСТУПА Ответ Идентификации (анонимный) Запрос Мандата Успешная идентификация EAPOL • RADIUS Процесс состоит из двух стадий Устанавливается сквозной туннель Обмен мандатами происходит в зашифрованном туннеле. Генерация PMK • Пользователь подтверждает подлинность использования 802.1x Тип EAP не имеет значения - конечный результат одинаков Подтверждение подлинности происходит между supplicant (клиент) и сервером идентификации (RADIUS) - точка доступа - просто устройство передачи и "привратник" (gatekeeper) в этой ситуации • • После успешной идентификации сервер RADIUS получает большое случайное число.Независимо от этого, клиент также получает то же самое большое случайное число. Это большое случайное число называют “Парный Главный Ключ” (PMK) 3 • сервер RADIUS передает PMK через 802.1x Точке доступа(authenticator) – здесь есть риск перехвата PMK! Значение передается через атрибут RADIUS 802.1x Заключение • • AS и STA установили сеанс AS и STA обладают взаимно подтверждённым Главным Ключом Главный Ключ позволяет принять решение предоставить доступ, основанный на идентификации. • STA и AS получили PMK PMK - маркер разрешения, для принятия решения контролем доступа • AS распределил PMK точке доступа WPA В этом варианте оба (клиент и точка доступа) имеют PMK. Задача для обеих сторон это получить PTK, чтобы начать шифрование данных. В дополнение к получению PTK, обе стороны должны подтвердить друг другу, что они знают PMK. Если этого не произошло (возможно, что одна из сторон могла иметь не тот ключ) - шифрование данных будет невозможно и сетевое подключение не установится. Процесс получения PTK и доказательства знания PMK на другой стороне известен как 4-х сторонний обмен (4-WAY HANDSHAKE) Вводит пользователь P PS SK K Персональный KEK (128 бит) P PT TK K KSK (128 бит) TK (256 бит) 802.1х P PM MK K Парный Временный Ключ (512 бит) Предприятие KEK – KCK – TK – Основной Ключ Шифрования (KEY ENCRYPTION KEY) Ключ подтверждения Ключа (KEY ENCRYPTION KEY) Временный Ключ (TEMPORAL KEY) 4 Генерация PTK • “Nonce” – это случайное число основанное на динамически изменяющейся информации, например времени дня. Теоретически “nonce” – это значение, которое будет использоваться только один раз и никогда не будет сгенерировано повторно • Nonce 1 – генерируется Точкой Доступа (AP). Nonce 2 – генерируется Клиентом. 4-х Сторонний Обмен (4-WAY HANDSHAKE). Сообщение 1: Точка Доступа - Клиент Отсылает сообщение EAPOL которое содержит Nonce 1. Это сообщение не шифруется или не производится проверка его надежности. После того, как это сообщение послано клиент получает все части, необходимые для генерации PTK. Сообщение 2: Клиент - Точка Доступа Отсылает сообщение EAPOL которое содержит Nonce 2. Это сообщение не зашифровано, но содержит MIC (Message Integrity Check – Проверка Целостности Сообщения) рассчитанное с использованием KCK. После того, как это сообщение послано точка доступа сможет вычислить PTK. После чего проверяет MIC, используемого недавно сгенерированным KCK. Результат проверки будет считаться успешным, если точка доступаустановила, что клиент имеет правильный PMK и PTK, и что подключение установлено напрямую, без посредника (то есть ключи обмена не перехвачены) Сообщение 3: Точка Доступа - Клиент Это сообщение говорит клиенту, что точка доступа готова начать шифрование. Сообщение не зашифровано, но содержит MIC (Message Integrity Check – Проверка Целостности Сообщения) рассчитанное с использованием KCK. Результат проверки будет считаться успешным, если клиент установил, что Точка доступа имеет правильный PMK и PTK, и что подключение установлено напрямую, без посредника (то есть ключи обмена не перехвачены) Сообщение 4: Клиент - Точка Доступа Заканчивается установление связи. Это означает, что клиент готов начать шифрование данных. После того, как это сообщение послано, обе стороны устанавливают PTK и начинают его использовать для шифрования данных. 5 Групповой Ключ Спаренные (pairwise) ключи используются для связи передачи в один адрес Шифрование одного и того же сообщения для каждого клиента в отдельности является неэффективным, следовательно, групповое вещание и широковещательный трафик используют групповой ключ Иерархия Групповых ключей подобна иерархии Спаренных ключей • • • GMK (Ключ Хозяина Группы - Group Master Key) GTK (Временный Ключ Группы – Group Transient Key) • • • • • Групповые Ключи выдаются после получения Спаренных ключей. Это упрощает процедуру распределение ключей. Точка доступа генерирует 256-битный GMK, основанный на случайных числах Точка доступа получает GTK После того, как клиент подключится к сети, точка доступа сообщает GTK каждому клиенту, использующему Спаренные ключи Когда изменяется Групповой ключ точка доступа только создает новый и распределяет его заново. VLAN-ы • Множественные (Multiple) SSIDs - каждый VLAN может иметь свой собственный уникальный SSID - каждый VLAN может иметь 802.1q маркировку пакета - помогает распределению трафика подтверждения • Множественные профили Защиты (один для VLAN) -WEP, PSK, 802.1x определенный в VLAN - Смесь из открытых, WEP, WPA сетей с возможностью использовать одними и теме же устройствами. Олег Бекетов, 2 ноября 2006г. 6