Смекни!
smekni.com

Алгоритмы защиты информации в беспроводных сетях стандарта IEEE 802.11 (стр. 2 из 8)

Рис 1.2 Пакет после WEP-шифрования

В августе 2004 года хакер КоrеК написал новый статистический криптоана-лизатор, который позволял взламывать 40- и 104-битные ключи, используя 200 и 500 тыс. пакетов соответственно. Созданный им алгоритм был использован в утилите aircrack, обновленная версия которой и сегодня является основным инструментом для взлома ключей WEP.

Протокол WEP также выполняет функцию аутентификации, однако ее нельзя назвать полноценной, так как она основана на задаваемом пользователем пароле и на предположении, что его знают лишь легитимные отправитель и получатель. Эту проблему пытались решить за счет использования списка МАС-адресов допустимых клиентских устройств (фильтрация по MAC). Но МАС-адреса пе­редаются в открытом виде, они могут быть перехвачены и использованы для подмены МАС-адреса устройства нарушителя.

Второй проблемой аутентификации в протоколе WEP является его односто­ронность, т. е. аутентифицируются только клиентские устройства, которые не могут определить легитимность точки доступа. Это позволяет использовать ата­ки с фальшивыми точками доступа.

Проблему могло решить существенное удлинение ключа шифрования, что привело бы к неоправданному снижению пропускной способности сети. Поэтому разработчики не стали модифицировать этот алгоритм, в более поздних реа­лизациях просто увеличив ключ до 256 бит и приступив к разработке нового стандарта безопасности WPA.

WEP протокол-процесс шифрования:

Этот протокол должен обеспечить защиту данных в момент их передачи по сети. В его основе лежит шифрование передаваемых пакетов с помощью особого ключа k. Рассмотрим процесс шифрования:

Контрольное суммирование: первый этап. Вычисляется контрольная сумма c(M) сообщения (M). Затем контрольная сумма добавляется к самому сообщению P = (M, c(M)), что является исходными данными для второго этапа. Заметьте - ни c(M), ни P не зависят от ключа k. Шифрование: второй этап. Текст P шифруется по алгоритму RC4. Пусть стартовый вектор будет (IV) . Алгоритм RC4 генерирует keystream - т.е. последовательность случайных байт зависящих от IV v и ключа k. Обозначим этот keystream как RC4(v,k). Затем сообщение по методу XOR накладывается на keystream, и получаем зашифрованное сообщение:

C = P xor RC4(v,k).

Передача: последний этап. Происходит передача IV и зашифрованного сообщения по сети.

Все это можно представить таким образом:

A - B: v, (P xor RC4 (v, k)), где P = (M, c (M)).

Введем следующие сокращения для дальнейшего использования: сообщение (M) - исходные данные для шифрования; текст (P) - сумма сообщения и его контрольной суммы; пакет (С) - зашифрованный текст, передаваемый по сети.

Для декодирования полученных данных получатель проводит обратные действия. Во-первых: генерируется keystream RC4(v,k) и с помощью операции XOR превращает пакет в текст.

P' = C xor RC4(v,k) = (P xor RC4(v,k)) xor RC4(v,k) = P.

Затем получатель проверяет контрольную сумму декодированного текста P', исходя из (M', c'), пересчитывает ее c(M'), и проверяет, совпадает ли она с полученной C'. Это подразумевает то, что пользователь получает только пакеты с правильной контрольной суммой.

Стандарт WPA.

Стандарт WPA (Wi-Fi Protected Access) представляет собой подмножество спе­цификаций из принятого в 2004 году стандарта IEEE 802.11i. Весь же набор спецификаций стандарта IEEE 802.11i. Wi-Fi Alliance называется WPA2. Спе­цификации WPA были призваны дать пользователям альтернативу для WEP и стали переходной ступенью между ним и новым стандартом IEEE 802.11i, разработка которого сильно затянулась. Структуру WPA можно представить в виде формулы WPA = IEEE 802.1Х + ЕАР + TKIP + MIC, т. е. WPA является суммой нескольких элементов, рассмотренных ниже.

Протоколы IEEE 802.1X и ЕАР (Extensible Authentication Protocol — на­ращиваемый протокол аутентификации) обеспечивают механизм аутентифика­ции пользователей, которые должны предъявить мандат или свидетельство для доступа в сеть. В больших корпоративных сетях для аутентификации часто используют сервер RADIUS. В иерархии сети он находится выше точки до­ступа и содержит базу данных со списком пользователей, которым разрешен доступ к сети. Такая система сетевой безопасности называется Enterprise (кор­поративная). Для небольших фирм и домашних пользователей ее применение не оправдано, для них предусмотрен режим с предварительно распределяемым клю­чом PSK (Preshared Key). В этом режиме на каждом устройстве беспроводной сети вводится одинаковый пароль, и аутентификация происходит средствами точки доступа без использования сервера RADIUS.

Рис. 1.3. Алгоритм шифрования по протоколу TKIP

Протокол TKIP (Temporal Key Integrity Protocol — протокол временной целостности ключа) выполняет функции обеспечения конфиденциальности и це­лостности данных. Функционально TKIP является расширением WEP (рис. 1.3). Аналогично WEP, он использует алгоритм шифрования RC-4, но более эффек­тивный механизм управления ключами. Протокол TKIP генерирует новый се­кретный ключ для каждого передаваемого пакета данных, и один статический ключ WEP заменяется на, примерно 500 миллиардов возможных ключей, кото­рые могут использоваться для шифрования данного пакета данных. Изменен и сам механизм генерации ключа. Он получается из трех компонентов: базового ключа длиной в 128 бит (ТК), номера передаваемого пакета (TSC) и МАС-адреса устройства-передатчика (ТА). Также в TKIP используется 48-разрядный вектор инициализации, чтобы избежать повторного использования IV, на котором осно­вана выше описанная атака FMS. Алгоритм TKIP использует сквозной счетчик пакетов (TSC) длиной 48 бит. Он постоянно увеличивается, сбрасываясь в 1 только при генерации нового ключа. Младшие 16 бит TSC включаются в новый IV (рис. 1.4). Таким образом формируется механизм, препятствующий так называемым атакам с воспроизве­дением.

Рис.1.4. Пакет после шифрования по TKIP.

Атаки с воспроизведением используют специальные инструменты, которые внедряют новый трафик для ускорения взлома или даже сканируют порты беспроводных хостов. Такую атаку в рамках WEP остановить невозможно, поскольку стандарт ничего не говорит о том, как должен выбираться IV. В боль­шинстве случаев выбор производится (псевдо?) случайно. Напротив, в TKIP IV увеличиваются последовательно (вместе с TSC), причем те пакеты, где по­рядок IV (TSC) нарушен, отбрасываются. Это смягчает остроту проблемы воспроизведения трафика, но зато вступает в некоторое противоречие с одним усовершенствованием, направленным на повышение качества обслуживания, ко­торое было предложено группой по разработке стандарта IEEE 802.11e. Дело в том, что подтверждать каждый принятый кадр, как описано в ал­горитме CSMA/CA, неэффективно. Поэтому было предложено улучшение, на­званное групповым подтверждением (burst-АСК). Смысл его в том, чтобы под­тверждать не каждый отдельный кадр, а группу из 16 кадров. Если один из 16 посланных кадров не дошел до получателя, то применяется селективное подтверждение (аналогичное селективному АСК в опциях TCP), требующее повторно передать только потерянный кадр, а не все 16. Разумеется, из-за по­рядкового счетчика TKIP повторно переданный кадр будет отвергнут, если уже получены кадры с большими номерами IV. Чтобы решить эту проблему, в протоколе TKIP применяется окно воспроизведения (replay window), в кото­ром хранятся последние 16 принятых IV, и проверяется, присутствует ли среди них кадр-дубль. Если это так и если этот кадр не был получен ранее, он прини­мается. Не менее важен механизм MIC (Message Integrity Check или Michael). Он обес­печивает проверку целостности сообщений вместо очень простого и небезопас­ного вектора проверки целостности ICV в WEP. Он также строится на основе CRC-32, но длина MIC — 64 бита (два 32-разрядных слова), посредством чего препятствует изменению содержимого передаваемых пакетов. В отличие от ICV, механизм MIC использует мощную хэш-функцию, которую применяют отправи­тель и получатель, а затем сравнивают результат. Если он не совпадает, то данные считаются ложными и пакет отбрасывается. Более того, в алгоритм за­ложены меры противодействия атакам. Если приемник обнаружит две ошибки в MIC в период не более 60 с, соединение будет разорвано и восстановлено не ранее чем через 60 с со сменой всех ключей. Тем не менее, несмотря на все меры, в ноябре 2008 года была опубликована работа, в которой описывался алгоритм атак на протокол TKIP. Повысить степень криптозащиты призван стандарт IEEE 802.11i (WEP2). Несмотря на все нововведения, WPA поддерживается ранее выпущенным оборудованием спецификаций IEEE 802.Ha/b/g, и для его использования в боль­шинстве случаев достаточно обновить драйвер и сменить прошивку программы процессора устройства. Для использования же нового стандарта IEEE 802.11i (WPA2 по обозначению комитета Wi-Fi Alliance) необходимо новое оборудова­ние, так как в нем на смену шифрованию RC4 пришел стандарт AES.

2. Архитектура стандарта IEEE 802.11i.

Принятый в июне 2004 года, стандарт IEEE 802.11i во многом сходен с WPA, од­нако предлагает более высокий уровень безопасности. В IEEE 802.11i определена концепция надежно защищенной сети — Robust Security Network (RSN). Стан­дарт использует протокол ССМР (Counter-Mode СВС MAC Protocol) на основе блокового шифра стандарта AES (Advanced Encryption Standard). Для протоко­ла ССМР алгоритм AES играет ту же роль, что и RC4 для протокола TKIP. Оба протокола работают с одним и тем же механизмом управления ключами. Как и TKIP, ССМР использует 48-битные IV и несколько измененный алгоритм MIC. Благодаря использованию стойкого шифра AES отпала необходимость в гене­рации пакетных ключей (новый ключ для каждого пакета), и теперь один ключ, создаваемый при каждой ассоциации клиента с сервером, используется для ши­фрования трафика и для генерации контрольной суммы. В целом, в архитектуре IEEE 802.11i можно выделить два «рубежа»: улучшенные протоколы шифрования и протокол контроля доступа на базе портов (IEEE 802.IX). IEEE 802.11i предусматривает наличие трех участников процесса аутентифи­кации. Это сервер аутентификации (Authentication Server, AS), точка доступа (Access Point, АР) и рабочая станция (Station, STA). В процессе шифрования данных участвуют только АР и STA (AS не используется).