Технологии защиты информации в Wi-Fi сетях
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Иркутский государственный университет путей сообщения
Институт информационных технологий и моделирования
Кафедра «Информационная безопасность»
КУРСОВАЯ РАБОТА
По дисциплине «Основы информационной безопасности»
на тему:
«Технологии защиты информации в Wi-Fi сетях»
Выполнил студент БИ.4-11-1
Малых В. Ю.
Научный руководитель, к. э. н.
Глухов Н. И.
Иркутск, 2012
Содержание
Содержание 2
Введение. Безопасность беспроводных сетей 3
Обзор систем шифрования 4
Векторы инициализации 6
Режимы с обратной связью 7
Кодирование по стандарту 802.11 7
Механизмы аутентификации стандарта 802.11 10
Аутентификация с использованием МАС-адресов 12
Уязвимость системы защиты стандарта 802.11 13
Уязвимость открытой аутентификации 13
Уязвимость аутентификации с совместно используемым ключом 13
Уязвимость аутентификации с использованием МАС-адресов 15
Уязвимость WEP-шифрования 15
Проблемы управления статическими WEP-ключами 19
Защищенные LAN стандарта 802.11 19
Первая составляющая: базовая аутентификация 20
Вторая составляющая: алгоритм аутентификации 25
Третья составляющая: алгоритм защиты данных 25
Четвертая составляющая: целостность данных 28
Усовершенствованный механизм управления ключами 29
Шифрование по алгоритму AES 30
Заключение 32
Литература 33
Введение. Безопасность беспроводных сетей
Рассматривая сферы применения беспроводных технологий, нельзя не заметить, что последние годы активно набирала популярность технология создания беспроводных сетей Wi-Fi. Это объясняется тем, что беспроводные технологии значительно повышают мобильность людей. Мобильность изменяет способы ведения бизнеса организациями. Для людей в реальном времени, мгновенный обмен сообщениями, голосовые сервисы, доступ к сети во время поездок и в реальном времени в условиях офиса стали обычным положением дел. Сегодня беспроводные сети приобретают исключительно важное значение для бизнеса. Организации внедряют беспроводные сети, чтобы повысить продуктивность сотрудников, создать более благоприятные условия для совместной работы и обеспечить более оперативное реагирование на обращения клиентов. Таким образом, технологии Wi-Fi оказались эффективным решением корпоративных задач. Будучи активно используемым сегментом корпоративной сети, беспроводные сети передают потоки конфиденциальной информации. А в виду кардинального отличия среды передачи данных беспроводных сетей по
сравнению с проводными сегментами и ограниченных возможностей по технической защите беспроводных клиентов, существенно возрастает риск несанкционированного доступа злоумышленника к передаваемой информации.
Устройства стандарта 802.11 связываются друг с другом, используя в качестве переносчика данных сигналы, передаваемые в диапазоне радиочастот. Данные передаются по радио отправителем, полагающим, что приемник также работает в выбранном радиодиапазоне. Недостатком такого механизма является то, что любая другая станция, использующая этот диапазон, тоже способна принять эти данные.
Если не использовать какой-либо механизм защиты, любая станция стандарта 802.11 сможет обработать данные, посланные по беспроводной локальной сети, если только ее приемник работает в том же радиодиапазоне. Для обеспечения хотя бы минимального уровня безопасности необходимы следующие компоненты.
- Средства для принятия решения относительно того, кто или что может использовать беспроводную LAN. Это требование удовлетворяется за счет механизма аутентификации, обеспечивающего контроль доступа к LAN.
- Средства защиты информации, передаваемой через беспроводную среду. Это требование удовлетворяется за счет использования алгоритмов шифрования.
На рис.1 показано, что защита в беспроводных сетях обеспечивается как за счет аутентификации, так и благодаря шифрованию. Ни один из названных механизмов в отдельности не способен обеспечить защиту беспроводной сети.
Рис. 1. Защита в беспроводных сетях обеспечивается за счет аутентификации и шифрования |
В спецификации стандарта 802.11 регламентировано применение механизма аутентификации устройств с открытым и с совместно используемым ключом и механизма WEP, обеспечивающего защищенность данных на уровне проводных сетей. Оба алгоритма аутентификации, с открытым и с совместно используемым ключом, основаны на WEP-шифровании и применении WEP-ключей для контроля доступа. Поскольку алгоритм WEP играет важную роль в обеспечении безопасности сетей стандарта 802.11, в следующем разделе будут рассмотрены основы шифрования и шифры.
Обзор систем шифрования
Механизмы шифрования основаны на алгоритмах, которые рандомизируют данные. Используются два вида шифров.
- Поточный (групповой) шифр.
- Блочный шифр.
Шифры обоих типов работают, генерируя ключевой поток (key stream), получаемый на основе значения секретного ключа. Ключевой поток смешивается с данными, или открытым текстом, в результате чего получается закодированный выходной сигнал, или зашифрованный текст. Названные два вида шифров отличаются по объему данных, с которыми они могут работать одновременно.
Поточный шифр генерирует непрерывный ключевой поток, основываясь на значении ключа. Например, поточный шифр может генерировать 15-разрядный ключевой поток для шифрования одного фрейма и 200-разрядный ключевой поток для шифрования другого. На рис. 2 проиллюстрирована работа поточного шифра. Поточные шифры — это небольшие и эффективные алгоритмы шифрования, благодаря которым нагрузка на центральный процессор оказывается небольшой. Наиболее распространенным является поточный шифр RC4, который и лежит в основе алгоритма WEP.
Блочный шифр, наоборот, генерирует единственный ключевой поток шифрования фиксированного размера. Открытый текст делится на блоки, и каждый блок смешивается с ключевым потоком независимо. Если блок открытого текста меньше, чем блок ключевого потока, первый дополняется с целью получения блока нужного размера. На рис. 3 проиллюстрирована работа блочного шифра. Процесс фрагментации, а также другие особенности шифрования с использованием блочного шифра вызывают повышенную, по сравнению с поточным шифрованием, нагрузку на центральный процессор. В результате производительность устройств, применяющих блочное шифрование, снижается.
Рис. 2. Так осуществляется поточное шифрование |
Рис. 3. Так осуществляется блочное шифрование |
Процесс шифрования, описанный нами для поточных и блочных шифров, называется режим шифрования с помощью книги электронных кодов (Electronic Code Book, ЕСВ). Режим шифрования ЕСВ характеризуется тем, что один и тот же открытый текст после шифрования преобразуется в один и тот же зашифрованный текст. Этот фактор потенциально представляет собой угрозу для безопасности, поскольку злоумышленники могут получать образцы зашифрованного текста и выдвигать какие-то предположения об исходном тексте.
Некоторые методы шифрования позволяют решить эту проблему.
- Векторы инициализации (initialization vectors, IV).
- Режимы с обратной связью (feedback modes).
Векторы инициализации
Вектор инициализации — это номер, добавляемый к ключу, конечным результатом этого является изменение информации ключевого потока. Вектор инициализации связывается с ключом до того, как начнется генерация ключевого потока. Вектор инициализации все время изменяется, то же самое происходит с ключевым потоком. На рис. 4 показаны два сценария. Первый относится к шифрованию с использованием поточного шифра без применения вектора инициализации. В этом случае открытый текст DATA после смешения с ключевым потоком 12345 всегда преобразуется в зашифрованный текст AHGHE. Второй сценарий показывает, как тот же открытый текст смешивается с ключевым потоком, дополненным вектором инициализации для получения другого зашифрованного текста. Обратите внимание на то, что зашифрованный текст во втором случае отличается от такового в первом. Стандарт 802.11 рекомендует изменять вектор инициализации пофреймово (on a per-frame basis). Это означает, что если один и тот же фрейм будет передан дважды, весьма высокой окажется вероятность того, что зашифрованный текст будет разным.
1. Шифрование
с использованием поточного
1. Шифрование
с использованием поточного
2. Шифрование
с использованием поточного
Рис. 4. Шифрование и векторы инициализации
Режимы с обратной связью
Режимы с обратной связью представляют собой модификации процесса шифрования, выполненные во избежание того, чтобы один и тот же открытый текст преобразовывался в ходе шифрования в одинаковый зашифрованный текст.
Кодирование по стандарту 802.11
Спецификация стандарта 802.11 предусматривает обеспечение защиты данных с использованием алгоритма WEP. Этот алгоритм основан на применении симметричного поточного шифра RC4. Симметричность RC4 означает, что согласованные WEP-ключи размером 40 или 104 бит статично конфигурируются на клиентских устройствах и в точках доступа. Алгоритм WEP был выбран главным образом потому, что он не требует объемных вычислений. Хотя персональные компьютеры с беспроводными сетевыми картами стандарта 802.11 сейчас широко распространены, в 1997 году ситуация была иной. Большинство из устройств, включаемых в беспроводные LAN, составляли специализированные устройства (application-specific devices, ASD). Примерами таких устройств могут служить считыватели штрих-кодов, планшетные ПК (tablet PC) и телефоны стандарта 802.11. Приложения, которые выполнялись этими специализированными устройствами, обычно не требовали большой вычислительной мощности, поэтому ASD оснащались слабенькими процессорами. WEP - простой в применении алгоритм, для записи которого в некоторых случаях достаточно 30 строк кода. Малые непроизводительные расходы, возникающие при применении этого алгоритма, делают его идеальным алгоритмом шифрования для специализированных устройств.
Чтобы избежать шифрования в режиме ЕСВ, WEP использует 24-разрядный вектор инициализации, который добавляется к ключу перед выполнением обработки по алгоритму RC4. На рис. 5 показан фрейм, зашифрованный по алгоритму WEP с использованием вектора инициализации.
Рис. 5. Фрейм, зашифрованный по алгоритму WEP |
Вектор инициализации должен изменяться пофреймово во избежание IV-коллизий. Коллизии такого рода происходят, когда используются один и тот же вектор инициализации и один и тот же WEP-ключ, в результате чего для шифрования фрейма используется один и тот же ключевой поток. Такая коллизия предоставляет злоумышленникам большие возможности по разгадыванию данных открытого текста путем сопоставления подобных элементов. При использовании вектора инициализации важно предотвратить подобный сценарий, поэтому вектор инициализации часто меняют. Большинство производителей предлагают пофреймовые векторы инициализации в своих устройствах для беспроводных LAN.
Спецификация стандарта 802.11 требует, чтобы одинаковые WEP-ключи были сконфигурированы как на клиентах, так и на устройствах, образующих инфраструктуру сети. Можно определять до четырех ключей на одно устройство, но одновременно для шифрования отправляемых фреймов используется только один из них.
WEP-шифрование используется только по отношению к фреймам данных и во время процедуры аутентификации с совместно используемым ключом. По алгоритму WEP шифруются следующие поля фрейма данных стандарта 802.11.
- Данные или полезная нагрузка (payload).
- Контрольный признак целостности (integrity check value, ICV).
Значения всех остальных полей передаются без шифрования. Вектор инициализации должен быть послан незашифрованным внутри фрейма, чтобы приемная станция могла получить его и использовать для корректной расшифровки полезной нагрузки и ICV. На рис. 6 схематично представлен процесс шифрования, передачи, приема и расшифровки фрейма данных в соответствии с алгоритмом WEP.
В дополнение к шифрованию данных спецификация стандарта 802.11 предлагает использовать 32-разрядное значение, функция которого — осуществлять контроль целостности. Этот контрольный признак целостности говорит приемнику о том, что фрейм был получен без повреждения в процессе передачи.
Контрольный
признак целостности
Фрейм данных с открытым текстом Фрагментатор Фрагмент фрейма с открытым текстом ICV Фрагмент фрейма с открытым текстом и с ICV Ключ IV WEP Ключевой проток XOR Фрагмент фрейма с зашифрованным текстом и с ICV
Процесс шифрования
|
открытым текстом ICV Фрагмент фрейма с открытым текстом и с ICV Ключ IV WEP Ключевой проток XOR Фрагмент фрейма с зашифрованным текстом и с ICV
Процесс дешифрирования
Отброшенный плохой ICV-фрейм
|
Рис. 6. Процесс шифрования и дешифрования |
ICV CRC32 Фрагмент фрейма с открытым текстом
32-разрядный ICV К механизму шифрования WEP
|
Рис. 7. Диаграмма функционирования механизма ICV |
Механизмы аутентификации стандарта 802.11
Спецификация стандарта 802.11 оговаривает два механизма, которые могут применяться для аутентификации клиентов WLAN.
- Открытая аутентификация (open authentication).
- Аутентификация с совместно используемым ключом (shared key authentication).
Открытая аутентификация по сути представляет собой алгоритм с нулевой аутентификацией (null authentication algorithm). Точка доступа принимает любой запрос на аутентификацию. Это может быть просто бессмысленный сигнал, используемый для указания на применение именно этого алгоритма аутентификации, тем не менее, открытая аутентификация играет определенную роль в сетях стандарта 802.11. Столь простые требования к аутентификации позволяют устройствам быстро получить доступ к сети.
Контроль доступа при открытой аутентификации осуществляется с использованием заранее сконфигурированного WEP-ключа в точке доступа и на клиентской станции. Эта станция и точка доступа должны иметь одинаковые ключи, тогда они могут связываться между собой. Если станция и точка доступа не поддерживают алгоритм WEP, в BSS невозможно обеспечить защиту. Любое устройство может подключиться к такому BSS, и все фреймы данных передаются незашифрованными.
После выполнения открытой аутентификации и завершения процесса ассоциирования клиент может начать передачу и прием данных. Если клиент сконфигурирован так, что его ключ отличается от ключа точки доступа, он не сможет правильно зашифровывать и расшифровывать фреймы, и такие фреймы будут отброшены как точкой доступа, так и клиентской станцией. Этот процесс предоставляет собой довольно-таки эффективное средство контроля доступа к BSS (рис. 8).
Рис. 8. Процесс открытой аутентификации при различии WEP-ключей |
В отличие от открытой аутентификации, при аутентификации с совместно используемым ключом требуется, чтобы клиентская станция и точка доступа были способны поддерживать WEP и имели одинаковые WEP-ключи. Процесс аутентификации с совместно используемым ключом осуществляется следующим образом.
1. Клиент посылает точке доступа запрос на аутентификацию с совместно используемым ключом.
2. Точка доступа отвечает фреймом вызова (challenge frame), содержащим открытый текст.
3. Клиент шифрует вызов и посылает его обратно точке доступа.
4. Если точка доступа может правильно расшифровать этот фрейм и получить свой исходный вызов, клиенту посылается сообщение об успешной аутентификации.
5. Клиент получает доступ к WLAN.
Предпосылки, на которых основана аутентификация с совместно используемым ключом, точно такие же, как и те, которые предполагались при открытой аутентификации, использующей WEP-ключи в качестве средства контроля доступа. Разница между этими двумя схемами состоит в том, что клиент не может ассоциировать себя с точкой доступа при использовании механизма аутентификации с совместно используемым ключом, если его ключ не сконфигурирован должным образом. На рис. 9 схематично представлен процесс аутентификации с совместно используемым ключом.
Рис. 9. Процесс аутентификации с совместно используемым ключом |
Аутентификация с использованием
МАС-адресов
Аутентификация с использованием МАС-адресов не специфицирована стандартом 802.11. но обеспечивается многими производителями. В ходе аутентификации с использованием МАС-адресов проверяется соответствие МАС-адреса клиента локально сконфигурированному списку разрешенных адресов или списку, хранящемуся на внешнем аутентификационном сервере (рис. 10). Аутентификация с использованием МАС-адресов усиливает действие открытой аутентификации и аутентификации с совместно используемым ключом, обеспечиваемыми стандартом 802.11, потенциально снижая тем самым вероятность того, что неавторизованные устройства получат доступ к сети. Например, администратор сети может пожелать ограничить доступ к определенной точке доступа для трех конкретных устройств. Если все станции и все точки доступа BSS используют одинаковые WEP-ключи, при использовании открытой аутентификации и аутентификации с совместно используемым ключом такой сценарий реализовать трудно. Чтобы усилить действие механизма аутентификации стандарта 802.11, он может применить аутентификацию с использованием МАС-адресов.
Рис. 10. Процесс аутентификации с использованием МАС-адресов |
Уязвимость системы защиты стандарта 802.11
В предыдущем разделе рассказывалось о том, как осуществляются аутентификация и шифрование при использовании устройств стандарта 802.11. Не секрет, что система зашиты, специфицированная в стандарте 802.11, несовершенна. Вскоре после утверждения стандарта 802.11 появились статьи, в которых указывались слабые места механизма аутентификации стандарта 802.11 и шифрования по алгоритму WEP.
Уязвимость открытой аутентификации
При использовании
механизма открытой аутентификации
точка доступа не имеет возможности
проверить правомочность
Уязвимость аутентификации с совместно используемым ключом
В случае аутентификации с совместно используемым ключом необходимо, чтобы клиент использовал заранее выделенный для совместного использования ключ и шифровал текст вызова, полученного от точки доступа. Точка доступа аутентифицирует клиента путем расшифровки зашифрованного с помощью совместно используемого ключа ответа и проверки того, что полученный текст вызова полностью соответствует отправленному.
Процесс обмена текстом вызова осуществляется по беспроводному каналу связи и является уязвимым для атаки, возможной при знании открытого текста. Эта уязвимость в случае аутентификации с совместно используемым ключом обусловлена математическими методами, лежащими в основе шифрования. Ранее в этой главе говорилось о том, что процесс кодирования состоит в перемешивании открытого текста с ключевым потоком и получении в результате зашифрованного текста. Процесс перемешивания представляет собой выполнение двоичной математической операции, которая называется "исключающее ИЛИ" (XOR). Если открытый текст перемешать с соответствующим зашифрованным текстом, в результате выполнения этой операции будет получена следующая пара: ключевой поток, используемый для WEP-ключа, и вектор инициализации (рис. 11).
Злоумышленник может захватить как открытый, так и зашифрованный текст ответа. Выполнив над этими значениями операцию "исключающее ИЛИ", он может получить действующий ключевой поток. Затем злоумышленник может использовать этот ключевой поток для расшифровки фреймов, имеющих такой же размер, как и ключевой поток, поскольку вектор инициализации, используемый для получения ключевого потока, такой же, как и у расшифрованного фрейма. На рис. 12 показано, как атакующий сеть злоумышленник может проследить процесс аутентификации с совместно используемым ключом и заполучить ключевой поток.
Рис. 11. Извлечение ключевого потока |
Рис. 12. Уязвимость механизма аутентификации с совместно используемым ключом |
Уязвимость аутентификации с использованием МАС-адресов
МАС-адреса пересылаются с помощью незашифрованных фреймов стандарта 802.11, как и оговорено в спецификации этого стандарта. В результате беспроводные LAN. в которых применяется аутентификация с использованием МАС-адресов, уязвимы для атак, в ходе которых злоумышленник "подкапывается" под аутентификацию с использованием МАС-адресов путем имитации "законного" МАС-адреса.
Имитация МАС-адреса возможна для сетевых карт стандарта 802.11, которые позволяют заменять универсально-назначаемый адрес (universally administered address, UAA) локально-назначаемым (locally administered address, LAA). Универсальный адрес — это МАС-адрес, жестко закодированный для сетевой карты производителем. Атакующий может использовать анализатор протокола для определения разрешенного в BSS МАС-адреса и сетевую карту, допускающую локальное назначение адреса, для имитации разрешенного МАС-адреса.
Уязвимость WEP-шифрования
Наиболее
серьезные и непреодолимые
Уязвимость обусловлена как раз тем, как механизм WEP применяет алгоритм составления ключа (key scheduling algorithm, KSA) на основе поточного шифра RC4. Часть векторов инициализации (их называют слабые IV — weak IV) могут раскрыть биты ключа в результате проведения статистического анализа. Исследователи компании AT&T и университета Rice воспользовались этой уязвимостью и выяснили, что можно заполучить WEP-ключи длиной 40 или 104 бит после обработки 4 миллионов фреймов. Для первых беспроводных LAN стандарта 802.11b это означает, что они должны передавать фреймы примерно один час, после чего можно вывести 104-разрядный WEP-ключ. Подобная уязвимость делает WEP неэффективным механизмом обеспечения защиты информации.
Атака считается пассивной, если атакующий просто прослушивает BSS и накапливает переданные фреймы. В отличие от уязвимости аутентификации с совместно используемым ключом, атакующий, как показали Флурер, Мантин и Шамир, может заполучить действующий WEP-ключ, а не только ключевой поток. Эта информация позволит атакующему получить доступ к BSS в качестве аутентифицированного устройства без ведома администратора сети.
Если атаки такого типа окажется недостаточно, можно, как показывает теория, провести на механизм WEP и другую (правда, на практике атаки такого рода не проводились). Эта логически возможная атака может быть основана на методах, применяемых для преодоления защиты, обеспечиваемой механизмом аутентификации с совместно используемым ключом: для получения ключевого потока используются открытый текст и соответствующий ему зашифрованный текст.
Как уже говорилось, выведенный ключевой поток можно использовать для дешифровки фреймов для пары "вектор инициализации —WEP-ключ" и для определенной длины. Умозрительно можно предположить, что атакующий будет прослушивать сеть с целью накопления как можно большего числа таких ключевых потоков, чтобы создать базу данных ключ поток, взломать сеть и получить возможность расшифровывать фреймы. В беспроводной LAN, в которой не используется аутентификация с совместно используемым ключом, атака с применением побитовой обработки фрейма позволяет злоумышленнику вывести большое количество ключевых потоков за короткое время.
Атаки с использованием побитовой обработки (или "жонглирования битами", bit flipping) основаны на уязвимости контрольного признака целостности (ICV). Данный механизм базируется на полиномиальной функции CRC-32. Но эта функция неэффективна как средство контроля целостности сообщения. Математические свойства функции CRC-32 позволяют подделать фрейм и модифицировать значение ICV, даже если исходное содержимое фрейма неизвестно.
Хотя размер полезных данных может быть разным для различных фреймов, многие элементы фреймов данных стандарта 802.11 остаются одними и теми же и на одних и тех же позициях. Атакующий может использовать этот факт и подделать часть фрейма с полезной информацией, чтобы модифицировать пакет более высокого уровня. Сценарий проведения атаки с использованием побитовой обработки может быть следующим (рис. 13).
- Атакующий захватывает фрейм беспроводной LAN.
- Атакующий изменяет случайные биты (flips random bits) полезной нагрузки фрейма.
- Атакующий модифицирует ICV (подробнее об этом — ниже).
- Атакующий передает модифицированный фрейм.
- Приемник (клиент или точка доступа) получает фрейм и вычисляет ICV по содержимому фрейма.
- Приемник сравнивает вычисленный ICV со значением, хранящимся в поле ICV фрейма.
- Приемник принимает модифицированный фрейм.
- Приемник передает модифицированный фрейм на устройство более высокого уровня (повторитель или хост-компьютер).
- Поскольку в пакете уровня 3 биты изменены, контрольная сумма для уровня 3 оказывается неправильной.
- Протокол IP приемника выдаст сообщение об ошибке.
- Атакующий получает сведения о беспроводной LAN, анализируя незашифрованное сообщение об ошибке.
- Получая сообщение об ошибке, атакующий выводит ключевой поток, как в случае атаки с повторением IV.
Основой такой атаки является несоответствие ICV требуемому значению. Значение ICV находится в зашифрованной с помощью WEP части фрейма; как атакующий может изменить ее, чтобы согласовать изменения, вызванные жонглированием битами, с фреймом? На рис. 14 проиллюстрирован процесс "жонглирования битами" и изменения ICV.
1. Пусть фрейм (F1) имеет ICV, значение которого равно С1.
2. Генерируется новый фрейм (F2) той же длины, какую имеет набор битов фрейма F1.