На недавней хакерской сходке или, если хотите по культурнее, на конференции пентестеров Defcon 2016 специалистами в информационной безопасности Алексом Чапманом и Полом Стоуном была представлена уязвимость WPAD. Данная брешь позволяет получить доступ к защищенным с помощью HTTPS и VPN данным.
Применив атаку «Человек по середине (Man in the midle)» злоумышленник может получить полный доступ к пользовательским данным таким как: фотографии, документы, доступ к аккаунтам, история веб-поиска и т.д.
Сегодня я расскажу как отключить WPAD, но для начала давайте разберемся, что это за зверь такой этот WPAD и как осуществляется эксплуатация уязвимости.
Кстати, для тех кто в танке. Когда-то в статье «Отключение WebRTC» мы рассказывали о схожей проблеме которая позволяет деанонимизировать пользователей VPN. Почитайте если что на досуге.
Содержание
- Предисловие
- Что такое WPAD
- Уязвимость WPAD
- Как отключить WPAD
- Видео: Эксплуатация уязвимости WPAD
WPAD
Что такое WPAD?
Web Proxy Auto-Discovery Protocol (WPAD) — это протокол автоматической настройки Proxy. Данный протокол используется клиентами (браузером) для определения места (URL) расположения конфигурационного файла с использованием технологий DHCP и/или DNS.
Во время совершения запроса браузером вызывается специальная функция FindProxyForURL из PAC-файла, куда и передается URL и хост. Ожидаемый ответ — список прокси, через которые будет осуществляться выход на этот адрес.
Уязвимость WPAD
Размещение конфигурационного PAC-файла можно определить с использованием DHCP (Dynamic Host Configuration Protocol), DNS (Domain Name System) или LLMNR (Link-Local Multicast Name Resolution). Киберпреступники при желании могут использовать уязвимость в WPAD, указав размещение специально сконфигурированного PAC-файла, который направит запрос браузера через прокси-серверы, находящиеся под контролем злоумышленников.
Этого можно добиться в открытой беспроводной сети, скомпрометировав роутер или точку доступа, или открыв для всех желающих доступ к собственной точке доступа, сконфигурированной специальным образом.
Компрометировать собственную сеть атакуемого компьютера совершенно не нужно, поскольку система будет использовать WPAD для обнаружения прокси в случае подключения по открытой беспроводной сети. При этом WPAD используется и в корпоративном окружении, данная «полезная» функция по умолчанию включена на всех компьютерах операционной системы Windows, как я уже об этом говорил выше.
Свой прокси-сервер дает возможность хакерам перехватывать и модифицировать незашифрованный HTTP-трафик. Это не дает слишком многое злоумышленникам, поскольку многие сегодняшние сайты работают по HTTPS (HTTP Secure).
Но, поскольку PAC-файлы обеспечивают возможность задавать разные адреса прокси для определенных веб-адресов, и для этих адресов можно принудительно выставить DNS lookup. Этичные хакеры создали скрипт, который позволяет получать все защищенные HTTPS URL на свой сервер.
В статье «Безопасность Proxy» я уже рассказывал и показывал как другие товарищи с конференции Defcon перехватывали пароли и логины пользователей публичных прокси-серверов.
Полный адрес HTTPS URL должен быть скрыт, потому что он содержит токены аутентификации и другую личную информацию. Но хакер может восстановить адрес. Например, example.com/login?authtoken=ABC1234 может быть с легкостью восстановлен путем использования DNS-запроса https.example.com.login.authtoken.ABC1234.leak и восстановлен на сервере злоумышленника.
Используя данный метод хакер может получить список всех поисковых запросов жертвы или просмотреть, какие сайты жертва сейчас просматривает. Это конечно же не очень хорошо с точки зрения информационной безопасности и на первый взгляд не слишком страшно. Но это только на первый взгляд. Неприятности несчастной жертвы на этом не заканчиваются.
Пентестеры разработали еще один тип атаки, который может быть использован для перенаправления пользователя открытой беспроводной точки доступа на левую фейковую страницу точки доступа.
Некоторые, хотя пожалуй большинство беспроводных сетей собирают данные о пользователях при помощи специальных страниц. После ввода личных данных юзер получает доступ к интернету (довольно часто данная схема используется провайдерами беспроводной связи в аэропортах).
Созданная хакерами Фейк страница загружает в фоне привычные пользователю страницы Google или Facebook, а после чего выполняет 302 HTTP редирект на другие адреса при условии аутентификации пользователя.
Если пользователь уже совершил вход в свою учетную запись, а многие, как правило, не выходят из своих учетных записей на различных ресурсах работая со своего компьютера или ноутбука, то в таком случае злоумышленник может с легкостью заполучить идентификационные данные жертвы.
Как отключить WPAD
Для тех кто еще не спит или уже проснулся, продолжим. Теперь я вам расскажу про отключение WPAD.
Существует несколько способов отключения WPAD: с помощью реестра и с помощью редактора групповых политик. Я расскажу о первом. Это на мой взгляд самый удобный метод, так как не на всех версиях Windows есть редактор групповой политики gpedit.
Отключение WPAD с помощью реестра
Запускаем редактор реестра. Делается это одновременным нажатием на рабочем столе комбинации клавиш WIN + R.
И вводом команды «regedit».
После этого ищем ветку:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\WpadВ каталоге WPAD создаем новый параметр DWORD (32-Бит).
Называем его «WpadOverride»
Нажимаем на нем двойным кликом и изменяем его значение с «0» на «1»
После чего нажимаем «ОК» и перегружаем компьютер. На этом настройка WPAD завершена.
На самом деле об эксплуатации WPAD уже давно говорили. Наш земляк Сергей Рублев из Positive Technologies в статье «Слабые стороны технологии WPAD» в подробностях все разжевывал еще в далеком 2009 году. Но тогда этому особого внимания не уделили, а сейчас после Defcon поднялась шумиха.
Вот вроде и все. Теперь вы знаете как отключить WPAD. Всем удачи друзья и информационной безопасности!
Видео: эксплуатация уязвимости WPAD
на каких портах сидит vpn?
Не совсем понял вопрос, но вам наверное надо это 500 4500 1723
Здравствуйте! А если при открытии всей ветки в конце нет папки WPAD как быть?
Создать её. Как с любыми политиками, недостающий путь создается.