Привет! В предыдущей статье, посвященной основам WLAN, вы узнали о беспроводных клиентах, формирующих ассоциации с беспроводными точками доступа (AP) и передающих данные по Wi-Fi. В сегодняшней статье мы рассмотрим анатомию защищенного соединения в беспроводных сетях.
Основы защищенного соединения в беспроводных сетях.
Все клиенты и точки доступа, которые соответствуют стандарту 802.11, могут сосуществовать на одном канале. Однако не всем устройствам, поддерживающим стандарт 802.11, можно доверять. Нужно понимать, что данные передаются не как в проводной сети, то есть непосредственно от отправителя к получателю, а от приемника до ближайшей точки доступа, располагаемой в зоне досягаемости.
Рассмотрим случай, изображенный на рисунке ниже. Беспроводной клиент соединяется с каким-либо удаленным объектом с использованием зашифрованного пароля. В сети так же присутствуют два не доверенных пользователя. Они находятся в пределах диапазона сигнала клиента и могут легко узнать пароль клиента, перехватив данные, отправленные по каналу. Особенности беспроводной связи позволяют легко перехватывать пересылаемые пакеты злоумышленниками.
Если данные передаются по беспроводным каналам, как их можно защитить от перехвата и взлома? В стандарте 802.11 предусмотрены механизмы безопасности, которые используются для обеспечения доверия, конфиденциальности и целостности беспроводной сети. Далее более подробно разберем методы беспроводной безопасности.
Аутентификация.
Для того чтобы начать использовать беспроводную сеть для передачи данных, клиенты сначала должны обнаружить базовый набор услуг (BSS), а затем запросить разрешение на подключение. После чего клиенты должны пройти процедуру аутентификации. Зачем это делать? Предположим, что ваша беспроводная сеть позволяет подключиться к корпоративным ресурсам, располагающим конфиденциальной информацией. В этом случае доступ должен предоставляться только тем устройствам, которые считаются надежными и доверенными. Гостевым пользователям, если они вообще разрешены, разрешается подключиться к другой гостевой WLAN, где они могут получить доступ к не конфиденциальным или общедоступным ресурсам. Не доверенным клиентам, вообще рекомендуется запретить доступ. В конце концов, они не связаны с корпоративной сетью и, скорее всего, будут неизвестными устройствами, которые окажутся в пределах досягаемости вашей сети.
Чтобы контролировать доступ, WLAN могут аутентифицировать клиентские устройства, прежде чем им будет разрешено подключение. Потенциальные клиенты должны идентифицировать себя, предоставив информацию учетных данных для точки доступа. На рисунке ниже показан основной процесс аутентификации клиента.
Существует много методов аутентификации по «воздуху». Есть методы, которые требуют ввода только кодового слова, которое является общим для всех доверенных клиентов и AP. Кодовое слово хранится на клиентском устройстве и при необходимости передается непосредственно в точку доступа. Что произойдет, если устройство будет утеряно или похищено? Скорее всего, любой пользователь, владеющий данным устройством, сможет аутентифицироваться в сети. Другие, более строгие методы аутентификации требуют взаимодействия с корпоративной базой данных пользователей. В таких случаях конечный пользователь должен ввести действительное имя пользователя и пароль.
В обычной жизни, при подключении к любой беспроводной сети, мы неявно доверяем ближайшей точке доступа проверку подлинности нашего устройства. Например, если вы на работе, используя устройство с беспроводной связью, найдете WI-Fi, скорее всего, подключитесь к ней без колебаний. Это утверждение верно для беспроводных сетей в аэропорту, торговом центре, или дома - вы думаете, что точка доступа, которая раздает SSID, будет принадлежать и управляться организацией, в которой вы находитесь. Но как вы можете быть уверены в этом?
Как правило, единственная информация, которой вы владеете- это SSID транслируемый в эфир точкой доступа. Если SSID знаком, вы, скорее всего, подключитесь к ней. Возможно, ваше устройство настроено на автоматическое подключение к знакомому SSID, так что оно подключается автоматически. В любом случае, есть вероятность невольно подключиться к тому же SSID, даже если он рассылается злоумышленником.
Некоторые атаки, организованные злоумышленником, осуществляются посредством подмены точки доступа. «Поддельная» точка доступа, аналогично настоящей, так же рассылает и принимает запросы, и затем осуществляет ассоциацию клиентов с АР. Как только клиент подключается к «поддельной» AP, злоумышленник может легко перехватить все данные передаваемые от клиента к центральному узлу. Подменная точка доступа может также отправлять поддельные фреймы управления, которые деактивируют подключенных клиентов, для нарушения нормального функционирования сети.
Чтобы предотвратить этот тип атаки, называемой «man-in-the-middle», клиент должен сначала идентифицировать точку доступа, и только потом подключиться, используя логин и пароль (пройти аутентификацию). На рисунке ниже показан простой пример данного защищенного подключения. Также, клиент, получая пакеты управления, должен быть уверен, что они отправлены с проверенной и доверенной точки доступа.
Конфиденциальность сообщений.
Предположим, что клиент изображенный на рисунке 3, должен пройти аутентификацию перед подключением к беспроводной сети. Клиент должен идентифицировать точку доступа и её фреймы управления для подключения перед аутентификацией себя на устройстве. Отношения клиента с точкой доступа могли бы быть более доверительными, но передача данных по каналу все еще подвергается опасности быть перехваченной.
Чтобы защитить конфиденциальность данных в беспроводной сети, данные должны быть зашифрованы. Это возможно кодированием полезной нагрузки данных в каждом фрейме, пересылаемым по WI-Fi, непосредственно перед отправкой, а затем декодирования ее по мере поступления. Идея заключается в использование единого метода шифрования/дешифрования как на передатчике, так и на приемнике, чтобы данные могли быть успешно зашифрованы и расшифрованы.
В беспроводных сетях каждый WLAN может поддерживать только одну схему аутентификации и шифрования, поэтому все клиенты должны использовать один и тот же метод шифрования при подключении. Вы можете предположить, что наличие одного общего метода шифрования позволит любому клиенту сети перехватывать пакеты других клиентов. Это не так, потому что точка доступа при подключении к клиенту высылает специальный ключ шифрования. Это уникальный ключ, который может использовать только один клиент. Таким образом точка доступа рассылает каждому клиенту свой уникальный ключ. В идеале точка доступа и клиент- это те два устройства, которые имеют общие ключи шифрования для взаимодействия. Другие устройства не могут использовать чужой ключ для подключения. На рисунке ниже конфиденциальная информация о пароле клиента была зашифрована перед передачей. Только точка доступа может успешно расшифровать его перед отправкой в проводную сеть, в то время как другие беспроводные устройства не могут.
Точка доступа также поддерживает «групповой ключ» (group key), когда ей необходимо отправить зашифрованные данные всем клиентам ячейки одновременно. Каждый из подключенных клиентов использует один и тот же групповой ключ для расшифровки данных.
Целостность сообщения
Шифрование данных позволяет скрыть содержимое от просмотра, при их пересылке по общедоступной или ненадежной сети. Предполагаемый получатель должен быть в состоянии расшифровать сообщение и восстановить исходное содержимое, но что, если кто-то сумел изменить содержимое по пути? Получатель не сможет определить, что исходные данные были изменены.
Проверка целостности сообщений (MIC)- это инструмент безопасности, который позволяет защитить от подмены данных. MIC представляет собой способ добавления секретного штампа в зашифрованный кадр перед отправкой. Штамп содержит информацию о количестве битов передаваемых данных. При получении и расшифровке фрейма устройство сравнивает секретный шифр с количеством бит полученного сообщения. Если количество бит совпадает, то соответственно данные не были изменены или подменены. На рисунке ниже изображен процесс MIC.
На рисунке показано, что клиент отправляет сообщение точке доступа через WLAN. Сообщение зашифровано, «741fcb64901d». Сам процесс MIC заключается в следующем:
- Исходные данные –«P@ssw0rd».
- Затем вычисляется секретный шифр MIC (штамп).
- После вычисления штампа происходит шифрование данных и MIC завершается.
- На стороне получателя следует расшифровка, вычисление MIC и сравнение штампов.