Портал авторизации wi fi hotspot что это

Обновлено: 07.07.2024

При организации гостевого подключения к интернету в конференц-залах, публичных библиотеках и кафе особое внимание следует уделить обеспечению безопасности и максимально простой аутентификации. Технология под названием Captive Portal призвана в этом помочь.

WARNING

Администраторы точек доступа обычно разрешают все DNS-запросы из внутренней сети во внешнюю. Это можно использовать для несанкционированного выхода в интернет при помощи технологии DNS tunneling, реализованной в таких решениях, как Dnscat, Ozyman, NameServer Transfer Protocol (NSTX), Dns2tcp, и других.

Как работает Captive Portal

Все пользователи, которые хотят подключиться к публичной Wi-Fi-сети и выйти в интернет, вначале проходят через шлюз, который представляет собой комп с несколькими сетевыми интерфейсами. Шлюз действует как маршрутизатор и брандмауэр, а для возможности авторизации пользователя при помощи браузера он содержит еще и веб-сервер. Для аутентификации клиентов может использоваться внутренняя база данных или внешний RADIUS-сервер. Все пакеты от «неавторизованных» пользователей помечаются на брандмауэре, и посетитель переправляется на специальную веб-страницу (Captive Portal), где он может ознакомиться с условиями подключения и ввести логин/пароль (либо код доступа). После аутентификации пользователя производится идентификация компьютера, за которым он работает, его МАС- и IP-адреса заносятся в белый список брандмауэра. В самом простом случае пользователь может вообще не проходить аутентификацию, Captive Portal автоматически получает IP- и MAC-адреса компьютера, которые сразу подставляются в правилах брандмауэра. В последующем все пакеты проходят через маршрутизатор без ограничений. Дополнительно, в зависимости от роли, могут устанавливаться ограничения по скорости, времени, трафику или посещаемым ресурсам.

В настоящее время существует несколько проектов, позволяющих быстро развернуть Captive Portal: Wifidog, PacketFence, ChilliSpot и веб-интерфейс EasyHotspot, KATTIVE, PepperSpot и jkaptive. Выбор конкретного решения зависит от необходимых функций и поддерживаемых ОС. Например, ChilliSpot официально поддерживает несколько дистрибутивов Linux, FreeBSD, OpenBSD и OpenWRT. К слову, это единственное приложение, пакет которого доступен в официальном репозитории Ubuntu, и установить его просто:

Кроме этого, ряд дистрибутивов-роутеров предлагает возможность быстрого создания Captive Portal буквально парой щелчков мышки: Untangle, pfSense, Zeroshell, m0n0wall, ClearOS и Zentyal. Но при желании или если невозможно изменить текущую конфигурацию сети нужные скрипты легко создать самостоятельно. Этим мы и займемся.

Настраиваем Captive Portal в Linux

Разобравшись, как работает Captive Portal, легко реализовать его штатными средствами Linux. Причем доступно несколько способов — маркировка и блокировка пакетов, пришедших от неавторизованных пользователей, использование цепочки правил или шаманство с NAT. Дополнительно на лету можно перенастраивать правила прокcи-сервера Squid или контент-фильтра DansGuardian, что позволит управлять выходом в интернет на уровне групп пользователей, да и просто кешировать и фильтровать информацию, блокируя доступ к нежелательным ресурсам. И кстати, именно такой подход применяется в специализированных дистрибутивах.

Для примера разберем вариант использования отдельной цепочки и DansGuardian. Первым делом создаем правила пакетного фильтра:

Не забываем разрешить специфические низкоуровневые протоколы:

То же пишем и для LENGTH, и IPv4. Теперь создаем правила для iptables:

Не забываем разрешить ICMP, DNS, DHCP и прочие необходимые протоколы. Здесь, кстати, есть один важный момент: многие админы не заморачиваются и разрешают весь DNS-трафик. Этим пользуются некоторые юзвери для получения доступа в Сеть при помощи технологии DNS tunneling. Конечно, итоговая скорость небольшая, но вполне достаточная, чтобы сидеть в аське, писать в твиттер или отдавать команды по SSH. И главное — при этом везде засветится IP твоей сети, а в логах какие-либо записи о несанкционированной деятельности будут отсутствовать, ведь не каждый админ пишет все запросы в журнал DNS-сервера. Поэтому лучше строго указать разрешенные серверы.

Настраиваем Captive Portal в Zentyal

Если под Captive Portal выделяется новый сервер и все настройки нужно произвести в короткое время, то лучше обратиться к специализированным решениям, где все необходимое делается буквально парой нажатий клавиш. Яркий пример — серверный дистрибутив Zentyal, ориентированный на малые и средние корпоративные сети. Он может выступать в любой из четырех ролей сетевого шлюза, Office Server, сервера коммуникаций и инфраструктуры. Для поддержки Captive Portal следует во время установки активировать одноименный модуль (активируется роль Gateway и все сопутствующие пакеты). Затем в мастере первичной настройки правильно указываем на LAN-интерфейс. Создаем учетные записи пользователей и группы. Далее в интерфейсе настройки Zentyal переходим в меню Captive Portal и отмечаем в поле «Captive-интерфейсы» нужный, выбираем группу, участники которой будут иметь доступ, и указываем порт, на который будут перенаправляться пользователи. Вот и все. Теперь любой, кто желает подключиться к сети, вводит свои учетные данные, если аутентификация проходит успешно, появляется всплывающее окно, которое нужно держать открытым. Чтобы отключиться, достаточно нажать кнопку «Выйти» или просто закрыть окно браузера.

Если имеем шлюз, построенный на Ubuntu, то для установки связанных с Zentyal приложений проще использовать специальный репозиторий:

После чего команда sudo apt-cache search zentyal покажет более 20 модулей Zentyal.

Выбираем пакеты для установки Captive Portal в Zentyal

Выбираем пакеты для установки Captive Portal в Zentyal

В принципе, на этот момент ничего особенного нет. Суть Captive Portal заключается в добавлении нужных правил на лету. Для этого понадобится скрипт, который будет получать IP/MAC и передавать их пакетному фильтру. Полностью HTML-страницу приводить здесь нет смысла, поэтому ограничимся ключевыми моментами с нужным функционалом. На странице, куда перенаправляется пользователь, должен быть следующий код, получающий IP- и MAC-адреса:

В Zentyal настройки Captive Portal производятся простой установкой значений

В Zentyal настройки Captive Portal производятся простой установкой значений

При необходимости добавляем поле для проверки логина и пароля, нужные примеры легко найти в интернете. Далее в этом же скрипте подставляем полученные данные в правила iptables и DansGuardian, после чего перезапускаем последний:

После подключения клиента запись в /etc/dansguardian/lists/authplugins/ipgroups будет выглядеть так:

Параметр filter1 указывает на группу фильтров, так мы можем устанавливать специфические настройки для всех пользователей, подключающихся посредством Captive Portal. При необходимости так же легко в DansGuardian подставляется и логин пользователя, для реализации индивидуальных правил. Не забываем разрешить фильтр IP в dansguardian.conf:

Так как используемые системные команды может выполнять только root, немного подправим sudoers, чтобы их мог запускать и веб-сервер:

Новые правила iptables, появляющиеся в Zentyal после активации Captive Portal

Новые правила iptables, появляющиеся в Zentyal после активации Captive Portal

Вот мы и реализовали простейший Captive Portal. Если хотспот будет работать сутками, следует побеспокоиться, чтобы через некоторое время таблица очищалась. Здесь можно придумать несколько вариантов. Например, параллельно создавать задание для cron, которое будет срабатывать через определенное время, убирая правило. Другой вариант — прописывать данные сессии в отдельный файл, а затем при помощи cron или при каждом вызове PHP-скрипта анализировать время создания файла и удалять устаревшие записи. В Zentyal, например, после регистрации пользователя открывается отдельное окно, а в каталоге /var/lib/zentyal-captiveportal/sessions создается файл, содержащий все данные сессии (IP- и MAC-адрес). Как только пользователь закрывает Popup, вся информация и правила очищаются.

Интерфейс настройки Captive Portal в pfSense

Интерфейс настройки Captive Portal в pfSense

Настройка Captive Portal в FreeBSD

Понимая, как работает пакетный фильтр, и владея навыками разработки на языке, используемом в веб, легко организовать Captive Portal в любой ОС. И *BSD здесь не исключение, причем реализация при помощи IPFW выглядит даже проще. Принцип остается тем же, что и ранее. Все пакеты от неавторизованных пользователей блокируем и перенаправляем на веб-страницу. После того как гость подтверждает информацию, разрешаем выход в Сеть. Для удобства всю информацию об авторизованных IP будем сохранять в базу данных (в примере текстовый файл). Заносим в системный файл вроде /etc/rc.local (а лучше в отдельный, чтобы было легче искать) необходимые переменные:

В веб-страницу добавляем следующий код. В примере пользователь в чекбоксе просто подтверждает некие условия, результат отправляется Perl-скрипту access.pl.

Мастер настройки Antamedia HotSpot

Мастер настройки Antamedia HotSpot

Здесь Perl выбран исключительно для разнообразия, при желании можно переработать PHP-код, показанный выше. Сам скрипт:

Создание тарифного плана в Antamedia HotSpot

Создание тарифного плана в Antamedia HotSpot

При желании дополняем скрипт проверкой МАС-адреса и перестройкой правил прокси-сервера. Вызвав функцию time(), мы также можем сохранить время соединения (в секундах), которое затем использовать для сброса старых соединений.

Captive Portal на Windows

Организовать Captive Portal на Windows штатными средствами проблематично из-за особенностей работы брандмауэра (который, кстати, начал контролировать исходящие соединения только с Vista), поэтому в любом случае придется обращаться к сторонним решениям. Выбор здесь не особенно велик — DNS Redirector, FirstSpot, PacketFence, myWIFIzone, работает под WinXP/2k), Wifidog и Antamedia HotSpot. Из них бесплатны PacketFence и Wifidog. Первый требует некоторой подготовки, а используемые во втором компоненты, такие как Apache, PHP, PostgreSQL, удобнее разворачивать на *nix-системе.

Из перечисленных наиболее функционален Antamedia HotSpot, который позволяет организовать свободный и предоплаченный доступ (по трафику, времени или скорости), управлять пропускной способностью, гарантируя нужную скорость разным клиентам, блокировать нежелательные сайты, получать статистику и многое другое. Развертывание Antamedia HotSpot не представляет особой сложности, в режиме простой установки все компоненты (хотспот, интерфейс оператора и база данных) устанавливаются на один компьютер. Разобраться с первоначальными установками помогает визард, интерфейсы настраиваются автоматически, пользователь может также выбрать внешний вид страницы регистрации. Дальнейшее управление производится при помощи понятного интерфейса.

Заключение

Организовать точку доступа с различными вариантами использования не так уж и сложно. Выбор конкретного решения зависит от наличия времени на подготовку и желания копаться в настройках. Все представленные схемы можно легко развить до требуемого уровня.

Мы привыкли к тому, что Wi-Fi есть практически везде. Казалось бы, что можно улучшить в беспроводном интернете? Оказывается, довольно много. В нашем совместном с «МаксимаТелеком» тексте мы рассказываем о технологии Hotspot 2.0, которая призвана упростить для пользователей работу с публичными беспроводными сетями.

Мобильный интернет сейчас

Когда смартфон включен — он в интернете. Мы сами того не замечая привыкли к этой модели потребления мобильного контента. Данные, профиль, гигабайты — все это привязано к сим-карте, она — основной идентификатор пользователя в сети.

Если у вас есть рабочая сеть или дома стоит роутер, то в целом это схоже с использованием сотовой связи: есть настроенное подключение, а с ним и Wi-Fi. Вы открываете ноутбук, и вот, без всяких дополнительных действий, вы уже в интернете.

Публичный Wi-Fi — это совершенно другая история. Когда мы хотим подключиться к сети в метро, кафе, на остановке общественного транспорта, мы обычно открываем в смартфоне раздел с доступными сетями и ищем подходящую. Подходящая — это чаще всего значит «что-то похожее на то место, где мы сейчас».

Например, в кафе «Огонек» мы можем увидеть OGONEK_WIFI или OGONEK_FREE или даже OGONEK_GUEST. Или даже все сразу. И здесь скрывается одна из опасностей публичных сетей — среди них может притаиться фишинговая, то есть такая, у которой SSID (service set identifier) будет как у настоящей (подобная практика называется evil twin attack, то есть «атака злобного близнеца»).

С публичными Wi-Fi-сетями связан еще один интересный момент. У всех устройств, способных подключаться к сети, есть MAC-адрес — если совсем упрощенно, то это физический адрес устройства. Когда-то в дешевых смартфонах, в основном китайских, придумали менять MAC-адрес случайным образом. Это было связано с недостаточным на тот моментом пулом официальных адресов у производителей.

Однако, как выяснилось, рандомизация адресов, то есть их регулярная смена, — это важный элемент защиты пользователя от трекинга, и Google объявил о внедрении рандомизации в ОС Андроид. Но в результате рандомизации сети не могут запомнить ваше устройство и вам приходится всякий раз заново проходить процесс авторизации.

Улучшать публичные сети еще есть куда.

Что такое стек технологий Hotspot

Стек технологий Hotspot 2.0 создали для улучшения работы публичных беспроводных сетей — в частности, для решения тех проблем, о которых мы говорили выше.

Сейчас опубликовано три релиза Hotspot 2.0 (они все называются 2.0). В основе первого — спецификация IEEE 802.11u . Второй релиз (наиболее содержательный) развил идею стандартизации передачи учетных данных на устройство.

С точки зрения пользователя, технология Hotspot 2.0 по сравнению с существующими публичными сетями имеет два важных преимущества. Первое — это повышенная безопасность, включающая в себя шифрование трафика на «радиочасти» канала связи — между устройством пользователя и точкой доступа.

Второе — это защита от автоматического подключения к фишинговым точкам доступа, так как технология предусматривает аутентификацию и клиента, и сервера. Это означает, что та самая «атака злобного близнеца», о которой мы говорили выше, перестает работать: фишинговая сеть с SSID, копирующим SSID настоящей сети, не пройдет аутентификацию.

Подобный подход позволяет организовывать своего рода роуминг: при попадании в зону действия незнакомой, но партнерской сети аппарат пользователя может автоматически к ней подключаться. При этом мобильный оператор может организовать выгрузку данных, то есть часть информации будет идти через Wi-Fi партнеров, разгружая основную мобильную сеть.

Последний факт, кстати, сыграл важную роль в развитии стандарта. Первой компанией, которая приняла на вооружение Hotspot 2.0, стала AT&T. Именно эта возможность — выгрузка данных из мобильной сети — стала для американского гиганта решающей.

Этичный хакинг и тестирование на проникновение, информационная безопасность

Что такое Captive Portal

С перехватывающим порталом (Captive Portal) вы можете столкнуться в аэропорту, гостинице, кондо, бизнес-центрах, также сейчас некоторые мобильные операторы организуют Wi-Fi точки доступа используя перехватывающие порталы – hotspot с авторизацией на web-интерфейсе.

Если вы не совсем понимаете, о чём идёт речь, то посмотрите на скриншот:


Имеется открытая сеть Wi-Fi, к которой можно подключиться без пароля (точка доступа без шифрования), но при попытке зайти на любой сайт, нас будет перебрасывать на страницу, где нужно ввести учётные данные, сделать оплату, подтвердить номер телефона с помощью СМС или что-то похожее.

Перехватывающий Портал – это альтернативный способ (вместо пароля от сети Wi-Fi) ограничить круг пользователей. Благодаря такому подходу, имеется возможность гибко регулировать доступ к Интернет-сети (например, выдать учётные данные, которые действуют заданный промежуток времени), и мониторить активность конкретного пользователя.

Быстрый взлом хот-спота с авторизацией на web-интерфейсе

Мы будем использовать hack-captive-portals – скрипт для взлома любых перехватывающих порталов (Captive Portal), использующий технику спуфинга MAC.

Если у вас Kali Linux, Ubuntu, Linux Mint, Debian или любые их производные, то установите пару пакетов:

Сам скрипт вы можете скачать следующим образом:

Но я немного доработал этот скрипт (на некоторых сетях разницы в работе не будет, но на некоторых работа будет намного стабильнее и намного быстрее за счёт пропуска явных пустышек).

Чтобы использовать мою версию, создайте файл hack-captive-mial.sh:

И скопируйте туда:

Сделайте файл исполняемым:

Или (если используете оригинальную версию):

И дожидайтесь результата.


Как только увидите строку

Значит для вас уже открыт интернет доступ!

Вновь проверяем пинг:



Как сделать сигнал Перехватывающего Портала (Captive Portal) доступным для других устройств

Независимо от того, как вы получили доступ (легально или не совсем), можно расшарить ваше Интернет-соединение для нескольких устройств. Можно даже открыть интернет доступ из виртуальной машины реальному компьютеру…

В принципе, я использую метод описанный в статье «Усиление сигнала Wi-Fi».

Само-собой, нам понадобится 2 Wi-Fi адаптера – один подключён к Перехватывающему Порталу, второй – раздаёт Интернет для «своих».

На предыдущем этапе – когда мы взламывали Перехватывающий Портал, вполне возможно, что мы использовали подключение с помощью Network Manager. Мы сократим количество непонятных зависаний и сбережём свои нервы, если будем выполнять последующие действия без использования NetworkManager.

Устанавливаем дополнительные пакеты, если у вас их ещё нет:

Теперь останавливаем NetworkManager:

Если вы работаете из виртуальной машины, то нужно отключить (виртуальное) проводное соединение, чтобы скрипт не запутался, когда будет искать дефолтный шлюз (если нужно, поменяйте eth0 на имя вашего ПРОВОДНОГО сетевого интерфейса):

Есть некоторые отличия от подключения к Точке Доступа из командной строки, описанного в статье «Усиление сигнала Wi-Fi», поскольку там мы подключались к точке доступа с шифрованием (с паролем), а теперь мы будем подключаться к открытой точке доступа (без пароля).

Создайте конфигурационный файл, к примеру, с именем wpa_sup.conf:

Скопируйте в него следующее (замените i_spac_5FL-2.4GHz на имя сети Перехватывающего Портала):

Подключаемся (замените wlan0 на имя вашего беспроводного интерфейса, используемого для подключения к перехватывающему порталу, если вы выбрали другое имя для конфигурационного файла, то напишите его вместо wpa_sup.conf):

Дождитесь появления примерно такой строки (должны быть слова CTRL-EVENT-CONNECTED - Connection to):

Поскольку мы не перевели процесс в фон, то откройте новое окно консоли (предыдущее не закрывайте – иначе пропадёт подключение к Перехватывающему Порталу), в новом окне введите (это нужно, чтобы нашему беспроводному интерфейсу присвоился IP адрес):

В этом месте запустите скрипт для взлома Captive Portal:

Дождитесь успешного завершения.

Теперь нам нужно поднять свою собственную точку доступа, которая в качестве источника Интернет-доступа будет использовать интерфейс с перехватывающим порталом. Смотрим имена наших сетевых интерфейсов:


Запускается create_ap следующим образом:

Я хочу создать ТД с именем «HackWare» на интерфейсе wlan1, используя для Интернет-доступа интерфейс wlan0, тогда моя команда:


Если появилась строка

значит всё прошло успешно.

Командой выше создаётся ТД, подключение к которой не защищено паролем, если вы хотите создать защищённую паролем ТД, то используйте команду вида:

Например, чтобы моя ТД имела пароль MiAlrules я использую команду:

Если ваш беспроводной адаптер поддерживает IEEE 802.11n, то можно дополнительно использовать опцию --ieee80211n, которая включает IEEE 802.11n:

Поскольку все операции я выполнял в виртуальной машине, к которой подключены два USB Wi-Fi адаптера, то у виртуальной машины теперь Интернет есть, а у реального компьютера его нет. Но поскольку виртуальная машина запущена в ноутбуке со встроенной Wi-Fi картой, то мой реальный компьютер подключается к Точке Доступа, которую создаёт виртуальный компьютер:


Подключение произошло успешно и теперь на основном компьютере также есть Интернет:


Мне это кажется забавным: не существующий, виртуальный компьютер обеспечивает Интернетом реальный железный компьютер!

Также подключаю другие свои устройства (мобильные телефоны) к точке доступа из виртуальной машины:


Как работает Captive Portal (Перехватывающий Портал)

Чтобы понять, почему так легко обойти Перехватывающий Портал, а также увидеть другие способы обхода, нужно понять, как именно работает Captive Portal.

Как можно было уже увидеть – это открытая Точка Доступа, к которой может подключиться кто-угодно. Запомним это – у нас без всяких взломов уже имеется доступ к локальной сети. Если при словосочетании «локальная сеть» вам сразу приходит в голову слово «сниффинг» - то вы правы!

Чтобы пользователи не догадались использовать нестандартные порты (например, для подключения к VPN, использовать браузер Tor или прокси), то весь трафик на всех портах блокируется. Кроме трафика UDP на 53 порту – это необходимо чтобы пропускать запросы к DNS-серверу.

После того, как пользователь ввёл верные учётные данные, для его MAC-адреса и IP адреса открывается неограниченный доступ. Привязка идёт именно к MAC-адресу (либо к паре MAC-адрес и IP адрес), поскольку по-другому проблематично реализовать доступ для всего устройства. Современным компьютерам, а особенно мобильным устройствам, недостаточно браузера: телефоны используют разнообразные мессенджеры, многие программы пользуются сетью: онлайн игры, антивирусы для обновления баз, почтовый клиенты и т.д. Т.е. невозможно ограничится кукиз в веб-браузере или чем-то подобным: необходимо открывать полный доступ для сетевого интерфейса клиента, какой бы трафик и на каком бы порту ему не понадобился. Сетевые интерфейсы обладают уникальным идентификатором – MAC-адресом. Именно на основе него и «запоминается» устройство, которому разрешён доступ. Перехватывающий Портал может оставлять кукиз в веб-браузере, но они носят вспомогательный характер: например, для ускорения повторной аутентификации.

Здесь описана «сильная» конфигурация перехватывающего портала – с защитой «по полной». Конкретные реализации могут быть ещё слабее: например, для перенаправления на страницу Портала может использоваться DNS сервер, который на все запросы будет отвечать IP адресом Captive Portal, и при этом не будет должной фильтрации трафика. Как результат, такой Портал можно обойти просто использованием обычного VPN соединения, либо установкой в настройках DNS сервера в паре с браузером Tor и т.п.

Как обойти Captive Portal (Перехватывающий Портал)

Теперь, когда мы понимаем, на каких принципах основывается работа Captive Portal, очень хорошо видны его слабые места.

Первый метод обхода Captive Portal: кража MAC и IP адреса

Именно этот метод использует скрипт hack-captive-portals: он перехватывает IP и MAC от кого-либо, кто уже подключён и авторизован в перехватывающем портале.

Принцип работы очень простой – скрипт находит все «живые» хосты в локальной сети и по очереди «примеряет» их MAC и IP – сразу после примерки делается проверка – доступна ли глобальная сеть. Если доступна – скрипт останавливает работу, а мы можем наслаждаться чудесами сети Интернет. Если внешняя сеть недоступна – просто пробуются следующие MAC и IP и т.д.

Очень просто, но при этом ОЧЕНЬ эффективно. Обязательное требование – в локальной сети должен быть кто-нибудь, кто уже авторизовался в Перехватывающем Портале. В принципе, можно выписать несколько рабочих пар MAC-IP и подключаться даже когда «хозяев нет дома», но такие пары могут «протухать» - они могут быть действительны, например, только в течение суток (с момента аутентификации легитимным пользователем, а не с момента, когда мы узнали о них).


Тем не менее, это очень эффективный и самый универсальный метод.

Вы также можете взломать Перехватывающий Портал даже без скрипта: с помощью arp-scan исследуйте локальную сеть Портала, смену MAC делайте как описано в этой статье, а подменять IP можно прямо в графическом интерфейсе Network Manager. В нём же установите DNS сервер 8.8.8.8.

Второй метод обхода Captive Portal: использование UDP VPN на 53 порту

И т.д. – если результаты различные (а не, например, каждый раз 192.168.88.1 или другой локальный IP адрес), значит DNS запросы свободно проходят – порт 53 UDP открыт.

Через этот 53 порт можно настроить UDP прокси, VPN или другой туннель. Бесплатные UDP VPN на 53 порту можно найти прямо в Гугле.

Правда, у меня этот способ не получился на находящимся в непосредственной близости ко мне перехватывающем портале – возможно, я что-то не совсем верно делал, возможно, проблема в конкретном поставщике услуг VPN, или, всё-таки, мой Перехватывающий Портал каким-то образом ограничивал/блокировал трафик и на 53 UDP порту. У кого есть успешный опыт или свои мысли по этому поводу (UDP VPN на 53 порту, туннелизация через порт UDP 53) – пишите в комментариях, будет интересно узнать и мне и другим читателям.

Огромный плюс данного метода – нам не нужен клиент, который успешно аутентифицирован в Портале. Мы можем выполнять этот обход даже если мы подключены к Captive Portal в полном одиночестве. При первом методе, наш трафик учитывается и засчитывается в качестве израсходованного легитимным пользователем. Если трафик безлимитный – то никаких проблем нет. Если же трафик оплачивается по мегабайтам – то наши действия перестают быть простой шалостью и причиняют вполне конкретный имущественный вред конкретному человеку…

При использовании порта 53 UDP, прокаченный трафик не «вешается» ни на какого пользователя.

Третий метод обхода Captive Portal: кража учётных данных легитимных пользователей

  • подключаемся к открытой сети
  • запускаем ARP спуфинг
  • запускаем сниффинг
  • анализируем полученные данные: ищем в них логин и пароль

На практике, из-за особенностей построения сети Порталов (он может быть «заполнен» фейковыми пользователями, и эти фантомы сводят с ума такие программы как Bettercap) атака не всегда проходит успешно.

Менее инвазивный (и намного более удобный) метод предложен человеком с ником user100 на форуме Античат (соответствующая тема – авторский кейс в первом посту).

Мы воспользуемся фактом, что в открытых сетях трафик передаётся без шифрования. Т.е. мы не будем подключаться к сети, а будем использовать Airodump-ng для прослушивания трафика.

Останавливаем Network Manager и убиваем процессы, которые могут нам помешать:

Далее в командах, если нужно, замените имя wlan0 на имя вашего беспроводного интерфейса.

Переводим карту в режим монитора

Запускаем airodump-ng, чтобы узнать, на каком канале работает интересующая нас Точка Доступа:


Как можно увидеть на скриншоте имеется сразу несколько открытых ТД на разных частотах. Я выбираю ту, у которой сильнее сигнал (поскольку она и её клиенты должны быть ближе ко мне).

Теперь, когда мы увидели нужную информацию, запускаем airodump-ng ещё раз со следующими опциями:

  • -w /root/open – эта опция для сохранения захваченных данных в файл
  • --channel 10 – мы устанавливаем определённый канал, чтобы airodump постоянно прослушивала только его и не прыгала по другим каналам

Теперь просто ждите, когда накопится достаточное количество данных. Нам нужно чтобы в сети не просто присутствовал аутентифицированный пользователь, нам нужно дождаться того момента, когда аутентифицированный пользователь введёт свои учётные данные. В зависимости от количества пользователей сети, может понадобится несколько часов или более.

Для анализа полученных данных, открываем файл захвата (у меня он называется /root/cap-01.cap) в программе Wireshark:


Для ускорения поиска используйте фильтры Wireshark.

Чтобы ускорить процесс, я подключился с другого устройства и выполнил вход с произвольными данными: в качестве имени пользователя я указал 11111111, а в качестве пароля - 22222222.


Там различная полезная информация, но главной является строка:

К сожалению, вместо пароля там хеш 15b4c47a3e0e44b9e40db20ac1225023. Причём не просто хеш, в исходном коде видно, что к паролю перед преобразованием добавляется соль:


Т.е., видимо, пароль сначала преобразовывается в бинарную строку, затем считается его MD5 хеш, затем бинарная строка преобразовывается в шестнадцатеричную.

Можно сказать, что мне не повезло. Если вам удалось перехватить пароль в открытом виде – то всё отлично. Если же у вас похожая ситуация – когда пароль хешируется, то его всё равно можно использовать! Хотя это требует лишних действий с нашей стороны.

Более того, чтобы каждый раз не использовать curl, можно создать простой HTML файл с правильной формой, которая будет отправлять все нужные данные, в том числе хеш. Этот файлик можно закинуть на телефон и выполнять вход в Портал и с него.

В любом случае необходимо будет правильно определить все передаваемые поля (удобно делать с помощью Burp Suite), в том числе скрытые, указывать правильного реферера, в случае необходимости, и т.д. Все эти проблемы являются решаемыми.

Минус данного метода:

  • необходимо не только наличие легитимного пользователя, выполнившего вход в портал, но и застать тот момент, когда он выполняет вход
  • если разрешено использовать учётные данные только для одного устройства, то возникнут проблемы, если вы и легитимный пользователь одновременно пытаетесь выходить в Интернет через Портал
  • пароль может передаваться в виде хеша, что усложняет его использование

Плюсы данного метода:

  • после захвата учётных данных, можно использовать Интернет в Портале даже если в нём нет легитимных пользователей
  • если разрешено использовать учётные данные на нескольких устройствах, то можно выполнить вход сразу с нескольких компьютеров/телефонов

Заключение

Рассмотрены самые часто встречающиеся конфигурации Captive Portal – хот-спотов с авторизацией через веб-интерфейс. В заметке собраны самые эффективные методы их обхода. Тем не менее, имеются и другие варианты Перехватывающих Порталов, использующих для идентификации пользователей больше данных – для таких случаев описанные здесь методы взлома открытых хот-спотов могут не сработать.

Отлично во взломе хот-спотов с веб-входом себя показал скрипт hack-captive-portals: полная автоматизация и хорошие результаты.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Как он работает?

На самом деле ничего сложного нет. Давайте разберём работу этого устройства по шагам.

  1. Сначала устройство получает извне интернет пакеты. То есть он подключен к глобальной сети интернет. Доступ к которой предоставляет провайдер. Подключиться он может разными способами, как по проводу, так и по воздуху.
  2. На устройстве настроена вай-фай сеть. К ней можно подключить любые аппараты с Wi-Fi модулем: ноутбуки, телефоны, планшеты, телевизор и т.д. В настройках есть ключ, с помощью которого и подключается внешнее устройство.
  3. После коннекта, подключившийся клиент может иметь доступ как к интернету, так и к локальной сети Wi-Fi.

Разновидности

Если говорить строго, то хотспотов бывает три вида:

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Стационарный — это ваш обычный домашний или рабочий роутер, который раздаёт Wi-Fi. С собой его никуда не возьмешь, и он постоянно стоит на одном месте. Данные коробочки имеют более серьезную производительность чем остальные.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Переносной — это роутеры, которые работают на аккумуляторной батарее. А интернет получают от мобильного провайдера по стандартам 2G, 3G, 4G, LTE и скоро появится 5G. Те же стандарты, которые используются у вас на мобильнике.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Более подробно про мобильный

Представьте себе, что у вас есть ноутбук, на котором вы хотите посмотреть сериал или фильм. А провайдер как на зло задерживается и проведет к вам интернет-провод только завтра. А вам скучно, и вы хотите себя занять. Но у вас есть мобильный телефон с интернетом.

Настройка

Чуть ниже я кратко приведу инструкции по настройке этой функции на телефонах, планшетах и ноутбуках. Для начала убедитесь, что на устройстве, которое будет выступать как хот-спот включен и работает интернет. После того как вы всё настроите, уже можно будет подключаться к сети этого устройства. Но будьте готовы, что скорость может немного упасть.

Android

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. «Сеть и интернет» или любой раздел, связанный с интернетом.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Теперь надо запустить точку доступа Wi-Fi. И ниже нажимаем на настройки.

IPhone, IPad с iOS

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Выбираем первый вариант, если у вас был отключен Wi-Fi.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Вы увидите пароль от сети. Но можно его спокойно поменять, просто нажав на него и введя новое значение.

Windows 10

Для ноутбуков или компьютеров с Wi-Fi адаптером.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Теперь просто устанавливаем имя и пароль. Но можно эти значения поменять.

Что такое Хот-спот (Hotspot) и как раздать интернет с телефона?

  1. Вверху надо будет запустить службу с помощью бегунка, а также выбрать соединение, по которому идёт интернет: кабель, беспроводная сеть или 3G/4G модем.

Другие версии Windows

Читайте также: