Телефоны Samsung игнорируют намерение Captive Portal (android.net.conn.CAPTIVE_PORTAL)
Когда я выбираю захваченную сеть WiFi, я хочу иметь возможность выбрать свое приложение в качестве обработчика вместо запуска приложения CaptivePortalLogin, которое предустановлено на каждом телефоне Android.
Это работает на Pixel 2 и OnePlus 6t, но не работает ни на одном из телефонов Samsung, которые у меня есть (S10 (9.0.0), S8 (8.0.0), A6 (8.0.0)). На телефонах Samsung мгновенно открывается приложение CaptivePortalLogin.
Приложение CaptivePortalLogin не установлено в качестве приложения по умолчанию на телефонах Samsung.
Я настроил активность стандартным способом:
Есть ли способ заставить телефоны Samsung вести себя так же, как и все остальные телефоны?
Комментарии (1)
Портал авторизации AFAIK работает по-разному для Android от Samsung. Они работают не через перенаправление 302, которое затем использует намерение пользователя, а через доступ к /generate_204. Таким образом, им не нужно полагаться на намерение портала захвата.
How to find Captive Portal Login licences in Samsung Galaxy S21, S21Plus, or S21 Ultra
Источник: reddeveloper.ru
Слетели Google-сервисы после прошивки. Как восстановить (и нужно ли)?
Официальная справка гугла гласит, что сервисы Google Play — нужная и важная вещь в вашем телефоне. В стоковых (глобальных) прошивках они вшиты производителем, а вот авторы кастомных прошивок с 4PDA частенько вырезают гугл сервисы, считая их ненужным мусором. Сервисы Google Play скрыты от посторонних глаз, их иконок вы не найдете на рабочем столе и их так же много, как и споров — нужны ли они в android-смартфонах?
Зачем их вообще удалять?
Основная претензия к гугл сервисам — непомерный жор аккумулятора. Доходит до абсурда, вроде 50% заряда за два часа работы смартфона, где в статистике расхода с большим отрывом лидируют гугл сервисы. Оперативную память они занимать тоже большие мастаки. Выглядит это примерно так:
Еще одна проблема — сервисы гугл активно, что называется, «пробуждают тело», т.е. телефон становится активным. Но и в режиме ожидания все прелести с потерей заряда никуда не деваются. Зачастую, их активность прячется в категории «Система Android» или «Ядро Android»
Причин такого поведения много, причем чаще всего они довольно рандомные. Чаще всего это происходит, когда гугл сервисы получили обновления (а они довольно часто это делают) и после этого начинается их форменное безобразие. Кроме того, огромному количеству сторонних приложений нужны гугл сервисы в своих целях. Например, практически все используют Google Push для отправки уведомлений или вашего местоположения. В общем, для неискушенного пользователя лучше вернуть их на место, т.к. это может повлиять на те программы, которыми вы пользуетесь в своем смартфоне.
com.android.captiveportallogin What is captive portal login How to Fix
Как восстановить гугл сервисы?
План прост, благо Google-сервисы такое же приложение, как и все остальные. Короткий гайд:
- Заходим на портал по поиску приложений https://playmarketapk.net
- Заходим в категорию «Программы» и подкатегорию «Интернет«
- Выбираем сервисы Google Play и находим блок скачивания, где доступен APK-файл последней версии
Для установки .apk-файлов, вам потребуется какой-нибудь файловый менеджер, например Astro File Manager или Root Explorer
Что можно отключить:
Если вы всё-таки решились избавиться от некоторых гугл сервисов и ряда ненужных встроенных приложений, то вот список, что, в принципе, можно отключить без проблем для дальнейшего функционирования телефона.
- CheckinService — оставляет отметки там, где вы бываете на картах, даже если вы этого не хотите. Параноикам вырубать в обязательном порядке
- PlaceDetectionService — тоже самое, что и выше. Off!
- KidsApiService — ведь ты уже взрослый (с)
- EventLogService — телефон пишет логи. Нам это нужно? Нам это не нужно
- DeviceConnectionServiceBroker — если не вдаваться в подробности, то модуль слежения за устройством
- GmsCoreStatsService — из той же категории, т.е. «не нужно от слова совсем»
- com.android.phasebeam — сервис живых обоев. Это было можно году так в 2005. Но на дворе уже 2021.
- com.android.wallpaper.livepicker — тоже самое, что и выше
- com.google.android.feedback — служба отправки отчетов в Google об ошибках или использовании гугл плея. Нам-то это зачем?
- com.android.printspooler — если ты ничего не отправляешь на печать с телефона — в топку.
- com.mediatek.atci.service — пожалуй, самая ненужная вещь в вашем телефоне — доступ к FMRadio приложению GN_MMITest. Что, простите?
- com.android.cellbroadcastreceiver — это приложение отвечает, внимание, за «оповещение населения»
- com.facebook.system, com.facebook.appmanager, com.facebook.services — если у вас нет аккаунта в этой социальной сети (еще бы, с таким-то интерфейсом), то удаляем не мучаясь
- com.android.wallpaperbackup — это, как ни странно, бэкап обоев. Ну конечно, только бэкапа обоев нам и не хватало.
- com.xiaomi.joyose, com.xiaomi.mipicks — специально для владельцев Xiaomi. Первый отвечает за рекламу в вашем телефоне (спасибо, не нужно). Второй — магазин приложений от Xiaomi. Это правда вам нужно?
Что желательно оставить:
Это лучше не трогать:
- AnalyticsService — Отвечает за некую «дополнительную аутентификацию». Возможно имеется ввиду разблокировка по отпечатку пальца, т.е. работоспособность сканера.
- LocationSharingSettingInjectorService — сервис обрабатывает голосовые команды (окей, гугл) и показывает их на карте в приложениях, которые, собственно, эти запросы используют. Так что лучше оставить.
- com.android.defcontainer — отвечает за распаковку приложений при установке. Нужен, чтобы инсталлить .apk-файлы. Сюда же можно отнести com.google.android.packageinstaller
- com.google.android.googlequicksearchbox — приложение Google-поиска. В принципе, если вы не используете виджет поиска в телефоне, можно и удалить
- com.google.android.gsf.login — тотальная синхронизация всего, что связано с гугл-аккаунтом. Если ты авторизован в телефоне под ним, то лучше не трогай
- com.android.location.fused — нужен для работы GPS, оставьте
- com.mediatek.thermalmanager — контролирует температуру жизненно важных компонентов в телефоне
- com.android.providers.userdictionary — подсказки и автонабор слов на клавиатуре. Сюда же com.android.inputdevices (это схемы раскладки)
- com.android.captiveportallogin — штука, которая запускает механизм аутентификации при подключении к wi-fi сетям, где требуется сделать какое-то действие, чтобы начать работу (зайти на страницу, ввести номер телефона, посмотреть рекламу и т.п.). Вы много раз видели такое в автобусах или в метро . Если её вырубить, то возможно, вы не сможете использовать такие общественные сети
- com.mediatek.batterywarning — чекает напряжение при зарядке, бьет тревогу при высоком напряжении, низком заряде или затянувшейся зарядке.
Как вам статья?
Источник: storedigital.ru
Captiveportallogin что это за программа
Можно выбрать загрузку приложения в виде APK (доступно по ссылкам ниже), однако следует помнить, что при такой установке вы не сможете получать уведомления об обновлениях, и что это менее безопасный способ скачивания. Советуем установить приложение F-Droid и использовать его.
Версия 0.2 (2) предложен Добавлено 2017-04-23
Для этой версии требуется Android 6.0 или новее. Собрано и подписано F-Droid, и гарантированно соответствует исходному коду из архива.
неограниченный доступ к Интернету
Приложение сможет создавать сетевые сокеты и использовать различные сетевые протоколы. Так как браузер и другие приложения обеспечивают средства для отправки данных в Интернет, это разрешение необязательно для отправки данных в Интернет.
просмотр сетевых подключений
Приложение сможет просматривать информацию о сетевых подключениях, например о том, какие сети доступны и к каким из них вы подключены.
Версия 0.1 (1) — Добавлено 2017-04-08
Для этой версии требуется Android 6.0 или новее. Собрано и подписано F-Droid, и гарантированно соответствует исходному коду из архива.
неограниченный доступ к Интернету
Приложение сможет создавать сетевые сокеты и использовать различные сетевые протоколы. Так как браузер и другие приложения обеспечивают средства для отправки данных в Интернет, это разрешение необязательно для отправки данных в Интернет.
просмотр сетевых подключений
Приложение сможет просматривать информацию о сетевых подключениях, например о том, какие сети доступны и к каким из них вы подключены.
Источник: f-droid.org
Настройка Captive Portal для авторизации пользователей
Captive Portal – сетевой сервис авторизации и идентификации пользователей. Наиболее часто используемый при построении общественных Wi-Fi сетей, где необходимо ограничивать права доступа в сеть Интернет или взымать дополнительную плату за её использование. По сути своей представляет веб-портал где пользователю предлагается указать учетные данные для дальнейшей идентификации в сети.
С точки зрения информационной безопасности, Captive Portal необходимая мера при использовании корпоративной Wi-Fi сети. И с реализацией его прекрасно справляются межсетевые экраны нового поколения (NGFW) Palo Alto Networks.
Далее мы рассмотрим подробную инструкцию по установке и настройке Captive Portal для использования в корпоративной Wi-Fi сети. А так же наиболее часто возникающие проблемы, с которыми приходится сталкиваться системному администратору.
Настройка шаг за шагом.
Шаг 1. Необходимо определить по какому из интерфейсов будут инициироваться запросы от пользователей на авторизацию и дать ему права на данную процедуру.
В нашем случае это ethernet1/5. Для того чтобы разрешить данному интерфейсу авторизацию Captive Portal, необходимо в Network – Network Profiles – Interface Mgmt создать или использовать уже имеющийся профиль, в котором разрешить сервисы Response Pages и User-ID.
Далее на вкладке Network – Interfaces выбрать нужный нам интерфейс и в Advanced – Other Info указать ранее созданный профиль:
Шаг 2. Необходимо сгенерировать или использовать сертификат, подписанный третьей стороной, для идентификации самого Captive Portal и дальнейшего безопасного с ним соединения. В этой статье мы будем рассматривать первый вариант. На вкладке Device – Certificate Management – Certificates нажимаем кнопку Generate. В появившемся окне нам необходимо внести данные для генерации корневого сертификата.
Certificate Name – произвольное имя сертификата
Common Name – IP или FQDN адрес интерфейса, который будет использоваться для Captive Portal
Certificate Authority – установить галку, для того чтобы сертификат был корневым
Теперь нам нужно сгенерировать сертификат непосредственно самого портала, подписанного корневым. Для этого еще раз нажимаем кнопку Generate и вводим следующие данные:
Certificate Name – произвольное имя сертификата
Common Name – IP или FQDN адрес Captive Portal
Signed By – указываем ранее созданный корневой сертификат
IP – добавляем IP атрибут Captive Portal
Host Name – в случае если у Captive Portal имеется FQDN адрес, то указываем и его
После нажатия на кнопку Generate в списке сертификатов у нас должен появится наш новый, подписанный корневым.
Шаг 3. Создаем SSL/TLS профиль, который будет использоваться для авторизации пользователей.
Переходим на вкладку Device – Certificate Management – SSL/TLS Service Profile и нажимаем Add.
Name – произвольное имя профиля
Certificate – выбираем ранее созданный сертификат (подписанный корневым)
Min Version – рекомендуется использовать наиболее защищенный TLSv1.2
Шаг 4. Переходим к настройкам непосредственно самого CaptivePortal.
Enable Captive Portal – включаем портал
Idle Timer (min) – таймер бездействия пользователя, по окончанию которого портал потребует повторного введения учетных данных
Timer (min) – общий таймер, по окончанию которого пользователю будет предложено заново ввести учетные данные
Mode – во избежание ошибки сертификата в браузере пользователей, рекомендуется использовать режим Redirect, таким образом будет происходить перенаправление на страницу Captive Portal. В случае же с Transparent, шлюз будет подменять запрашиваемый сайт пользователем на страницу Captive Portal, что может быть расценено браузером как попытка кражи конфиденциальных информации
SSL/TLS Service Profile – выбираем ранее созданный нами профиль шифрования
Authentication Profile – выбираем профиль, который указывает на список пользователей, для которых разрешена авторизация с помощью Captive Portal
Session Cookie (опционально) – использовать куки вместо повторного ввода учетных данных
Redirect Host – IP или FQDN интерфейса шлюза Palo Alto, на который будет производиться перенаправление пользователей
Шаг 5. Далее настроим правило авторизации, которое бы перенаправляло все HTTP запросы от неизвестных пользователей на портал авторизации.
Для этого переходим на вкладку Policies – Authentication и нажимаем Add для добавления нового правила. Выбираем зону нашей Wi-Fi сети в качестве источника и зону INTERNET (Untrust) в качестве назначения. Т.к. пользователь нам еще неизвестен, то в качестве User выбираем Any. И наконец на вкладке Actions нужно указать действие default-web-form, в нашем случае это отправлять пользователей на Captive Portal.
В итоге должно получиться так:
Шаг 6. Завершающим шагом нам необходимо создать правило, которое бы разрешало всем авторизированным пользователям доступ в интернет. Следуя рекомендациям по безопасности мы выбираем web-browsing и ssl в качестве приложений для доступа в интернет, а также назначаем используемые по умолчанию порты (80 и 443).
Разрешающее правило создаем в Policies – Security и в итоге оно должно выглядеть следующим образом:
На данном этапе вы можете создавать сколь угодно различные правила доступа для пользователей, так как после авторизации сетевой шлюз уже знает от кого конкретно исходит тот или иной трафик. Вы можете разрешить или запретить доступ к определенным сайтам, или же ограничить использование таких приложений как WhatsApp, Viber, Telegram для одних пользователей и дать разрешение другим. Все зависит лишь от ваших потребностей.
Главное придерживаться концепции, что чем более детально мы описываем условия правил, тем меньше возможностей для атак злоумышленников мы оставляем.
На этом настройку Captive Portal можно считать оконченной!
Как быть с HTTPS?
После настройки Captive Portal вы возможно столкнетесь с проблемой, что в отличи от HTTP запросов, HTTPS не обрабатываются для перенаправления на страницу авторизации. И даже если явно указать в правиле авторизации на обработку таких запросов, то это все равно не решит проблему.
Дело в том в отличии от HTTP, HTTPS пакеты являются зашифрованными и шлюз просто не в состоянии определить какому сайту предназначен тот или иной пакет, и уж тем более изменить его для перенаправления на свою страницу авторизации.
Но межсетевые экраны (NGFW) Palo Alto Networks способны решить и эту проблему. Благодаря аппаратной функции дешифровки, шлюз способен проникать в зашифрованные пакеты и читать их содержимое. Данная возможность будет также полезна для мониторинга и отслеживания передачи конфиденциальной информации третьей стороне.
Для включения дешифрации нам необходимо на вкладке Policies – Decryption создать два правила. Первое включает эту функцию для всех неизвестных пользователей, которые еще не авторизовались на портале. Второе отключает дешифрацию, если авторизация пройдена.
В качестве Decryption Profile используем профиль встроенные по умолчанию:
В итоге должно получиться так:
Незабываем указать HTTPS трафик для авторизации в ранее созданном нами правиле на вкладке Policies – Authentication:
После всех описанных выше действий попытка зайти на любой сайт будет переадресована шлюзом на страницу авторизации Captive Portal.
Источник: meliorit.ru
Конкурс Fake Captive Portal на Android для хищения конфиденциальных данных пользователей.
Хочу раскрыть ещё не особо заежженую тему для получения конфиденциальной информации в виде данных для авторизации в социальных сетях, почтовых ящиках и т.д. (Зависит от реализации и конечной цели).
- Не нужно таскать с собой громоздкой ноут.
- После настройки от вас никаких действий не требуется, просто ожидать пока жертвы будут вам сами сливать свои данные.
Captive Portal
Captive portal — сетевой сервис, требующий от подключившегося к Сети пользователя выполнить некоторые действия для получения доступа в Интернет.
- Телефон на Android OS с root доступом.
- Окружение Nethunter, так как в нём по умолчанию установлен сервер Apache2.
- Приложение для редактирования iptables
- Проводник с root доступом для редактирования системных директорий
Шаг 1. Открываем приложение Nethunter, заходим в Kali Services, и запускаем Apache.
Убедимся что наш сервер запущен — заходим в браузер и переходим по локальному адресу 127.0.0.1, у наш должна отобразится страница приветствия Apache.
Шаг 2. Создание формы авторизации.
Либо сами создаёте если разбираетесь в html и php, либо используем исходники созданные мной которые я прикрепил. Берём исходники и перемещаем их в директорию нашего веб сервера, а именно:
Директория
/data/local/nhsystem/kali-armhf/var/www/html/
и соглашаемся на замену. Теперь убедимся что все удачно скопировалось, ещё раз переходим по локальному адресу 127.0.0.1, у нас теперь должна отобразится домашняя страница авторизации Captive Portal:
Шаг 3. Редактирование правил iptables.
Заходим в настройки телефона, открываем раздел «Беспроводные сети» -> «Режим модема» -> Настраиваем под себя точку доступа и запускаем.
Теперь нам нужно узнать ip адрес нашей точки доступа и соответственно это будет адрес на который мы будем перенаправлять пользователей. Открываем приложение «Терминал» и в консоль пишем «ifconfig», находим имя наше сетевой карты «wlan0» и запоминаем наш ip адрес.
Далее скачиваем и устанавливаем приложение iptables2 с Play Market Запускаем, и в поле ввода вставляем код предварительно заменив ip адрес на свой:
iptables -A FORWARD -p udp —dport 53 -j ACCEPT iptables -A FORWARD -p udp —sport 53 -j ACCEPT iptables -t nat -A PREROUTING -p tcp —dport 80 -j DNAT —to-destination 192.168.43.1 iptables -P FORWARD DROP
нажимаем «Execute».
Теперь у нас все настроено, проверяем работоспособность с другого устройства. Подключаемся к поднятой wi-fi сети, запускаем браузер, и в строку ввода пишем адрес любого сайта. Запрос должен перенаправлятся на наш сервер. Когда жертва заполнит данные логин пароль и нажмёт «продолжить», введенные им данные сохранятся в users.txt расположенном в директории нашего сервера:
Директория
/data/local/nhsystem/kali-armhf/var/www/html/
а жертва получит ответ:
Хочу ещё добавить: проект находится в стадии разработки, перенаправление пока что работает только для http, если пробовать перейти по https то страница будет недоступна (если кто знает как реализовать перенаправление https с помощью iptables напишите в коментах или в личку), так же планирую реализовать проверку введенных данных на почтовом сервере (если это возможно), ещё нужно привести в порядок форму авторизации, что б была более привлекательной на вид.
P.S. Особо не пинайте, разработкой на php и html никогда не занимался, и вникать начал только второй день.
Всем спасибо за внимание.
Источник: codeby.net