Пентестирование WLAN с шифрованием LEAP
Lightweight Extensible Authentication Protocol (LEAP) - это устаревший протокол аутентификации на базе Cisco, который использует внешний сервер RADIUS для аутентификации пользователей. Он выполняет псевдовзаимную аутентификацию как беспроводного клиента, так и сервера аутентификации с использованием функций хеширования - MS-CHAP и MS-CHAPv2.
Уязвимость LEAP заключается в том, что -
Имя пользователя отправляется в виде открытого текста - поэтому хакеру нужно только получить пароль пользователя, используя, например, социальную инженерию.
Пароль пользователя взломан с помощью MS-CHAPv2 - алгоритм уязвим для офлайн-атаки по словарю.
Так же, как и в предыдущих случаях, давайте начнем с airodump-ng, чтобы узнать, какие WLAN транслируются в среде.
Как видите, WLAN «LAB-test» отображается как сеть WPA2. Этот тип режима аутентификации изменяется на "MGT" - это означает, что нет статического предварительного общего ключа (PSK), но службы аутентификации перемещаются на внешний сервер аутентификации (например, RADIUS). На этом этапе вы не можете сказать, основана ли конкретная сеть WLAN на LEAP, PEAP, EAP-TLS, EAP-TTLS или на какой другой технологии EAP.
Следующий шаг - включить Wireshark, чтобы разобраться в деталях пакета - он дает тестеру на проникновение много ценной информации.
Как видите, сервер аутентификации сначала пытался согласовать EAP-TTLS, но клиент отказался. В следующих 2 сообщениях они согласились использовать LEAP.
В первых двух сообщениях сервер аутентификации запрашивает имя пользователя (Identity), а клиент отвечает - как вы можете видеть, ответ клиента передается в виде открытого текста.
На этом этапе мы уже знаем, что действительное имя пользователя беспроводного клиента - «LAB_user». Чтобы узнать пароль, посмотрим наRequest/Response обмен.
Внизу заголовка 802.1x Authentication вы можете заметить, что сервер аутентификации запросил беспроводного клиента с текстом запроса «197ad3e4c81227a4». Затем в фоновом режиме беспроводной клиент использовал алгоритм MS-CHAPv2 в сочетании с паролем LAB_user и получил хэш значения - «ef326a4844adb8288712a67e2dc659c4f9597dc4a7addc89», который был отправлен обратно на сервер аутентификации. Как вы знаете из предыдущих глав, к счастью для нас, MS-CHAPv2 уязвим для офлайн-атак по словарю. Для этого мы будем использовать очень распространенный инструмент для взлома пароля LEAP, который называетсяasleap.
Как видите, на основе захвата пакетов asleapсмог получить всю информацию об обмене пакетами 802.1X и взломать хеширование MS-CHAPv2. Пароль для пользователя: «LAB_user» - «f8be4a2c».
Опять же, есть большая вероятность, что вы никогда не увидите аутентификацию LEAP в производственной среде - по крайней мере, теперь у вас есть очень хорошее доказательство того, почему.