- Включение и отключение служб геолокации и GPS на iPhone, iPad или iPod touch
- Предоставление разрешения на использование данных о вашей геопозиции
- Включение и отключение служб геолокации для конкретных приложений
- Как поделиться своей геопозицией
- На что влияет каждая настройка геолокации в iPhone. Какие можно отключить
- На что влияют настройки геолокации в iOS 14
- Итог для тех, кто не читал
- iOS 15 позволяет находить даже выключенный iPhone: как это сделано и есть ли опасность
- Always-on Processor (AOP)
- Запуск приложения Bluetooth, когда iPhone «выключен»
- Связано ли содержимое секретного ключа с чипом U1?
- Передача содержимого секретных ключей
- Влияние на безопасность и конфиденциальность
Включение и отключение служб геолокации и GPS на iPhone, iPad или iPod touch
Узнайте, как включить или выключить службы геолокации и GPS в отдельных приложениях.
Предоставление разрешения на использование данных о вашей геопозиции
Некоторые приложения не работают без включенных служб геолокации. 1 Когда приложению в первый раз требуется доступ к информации служб геолокации, выводится запрос на получение разрешения. Выберите один из следующих вариантов.
- Нажмите «Разрешить», чтобы разрешить приложению использовать информацию служб геолокации по мере необходимости.
- Нажмите «Не разрешать», чтобы запретить доступ. 2 .
- Нажмите «Спросить в следующий раз» и выберите «При использовании приложения», «Разрешить один раз» или «Не разрешать».
На устройствах iOS и iPadOS для определения местоположения может использоваться интерфейс Wi-Fi и Bluetooth. Данные GPS и сотовой сети могут служить для определения местоположения на устройствах iPhone и моделях iPad (Wi-Fi + Cellular).
Включение и отключение служб геолокации для конкретных приложений
- Перейдите в раздел «Настройки» > «Конфиденциальность» > «Службы геолокации».
- Убедитесь, что службы геолокации включены.
- Прокрутите вниз до нужного приложения.
- Нажмите приложение и выберите один из следующих вариантов.
- «Никогда»: доступ к информации служб геолокации запрещен.
- «Спросить в следующий раз»: можно выбрать «При использовании приложения», «Разрешить один раз» или «Не разрешать».
- «При использовании приложения»: доступ к информации служб геолокации разрешен только во время отображения приложения или одной из его функций на экране. Если выбран вариант «При использовании приложения», строка состояния может становиться синей, когда какое-либо приложение активно использует данные о вашем местоположении.
- «Всегда»: доступ к информации о местоположении разрешен даже при работе приложения в фоновом режиме.
При этом могут отображаться пояснения о том, как именно приложения используют информацию о вашем местоположении. Некоторые приложения могу предлагать только два варианта.
Как поделиться своей геопозицией
В iOS 14 и iPadOS 14 некоторые приложения могут использовать функцию «Точная геопозиция» для определения местоположения. Чтобы передавать только ваше приблизительное местоположение (чего может быть достаточно для приложения, которому не требуются точные геоданные), отключите функцию «Точная геопозиция». Вот как использовать эту функцию:
- Выберите «Настройки» > «Конфиденциальность», а затем включите «Службы геолокации».
- Выберите приложение, затем включите или отключите параметр «Точная геопозиция».
Источник
На что влияет каждая настройка геолокации в iPhone. Какие можно отключить
Время автономной работы современных гаджетов откровенно не радует. Постоянно приходится настраивать устройство и отключать неиспользуемые фишки, чтобы подольше находиться вдали от розетки.
Одним из самых энергозатратных модулей в iPhone является GPS. Кроме этого в параметрах предусмотрено множество переключателей и опций для этого датчика.
Сейчас разберемся, за что отвечает каждый тумблер по пути Настройки – Конфиденциальность – Службы геолокации – Системные службы и какие из них можно безболезненно отключить.
На что влияют настройки геолокации в iOS 14
1. Геопредложения – позволяет системе и сторонним сервисам предлагать пользователю более точные предложения в зависимости от его местоположения.
Служба предназначена исключительно для рекламных целей, если надоели постоянные уведомления с акциями от Пятёрочки или Магнита – отключайте данный переключатель.
2. Геопредупреждения – это более важная служба, которая нужна для срабатывания всевозможных сценариев с привязкой к геолокации.
Например, если включили напоминания со срабатыванием по геопозиции или автоматизацию в зависимости от вашего местоположения, данная фишка должна быть включена. Если подобными штуками вы не пользуетесь – смело отключайте.
3. Данные и беспроводн. сети – этот переключатель отвечает за работу чипа U1. Такой модуль есть на борту всех айфонов начиная с моделей iPhone 11/11 Pro, Apple Watch Series 6 и HomePod mini.
Чип необходим для более точного определения местоположения гаджетов в помещениях, для передачи данных между устройствами по протоколу UWB без использования Wi-Fi и для поиска гаджетов поблизости при помощи меток AirTag, которые никак не представят купертиновцы.
Фишка работает только на последних поколениях гаджетов, а в России и вовсе отключена на программном уровне. Смело отключаем тумблер.
4. Идентификация продавца Pay – определяет местоположение пользователя во время оплаты при помощи бесконтактной платежной системы. Это необходимо для поиска и более точного определения идентифицированных продавцов, которые имеют право принимать оплату через Pay.
Другими словами, система позволяет более точно определять продавца на основе вашего местоположения. Крайне бесполезная фишка, отключаем.
5. Калибровка компаса – нужна для тех, кто часто пользуется навигационными приложениями. Без нее системе потребуется время, чтобы определить направление взгляда пользователя для его позиционирования на карте.
Обычно для этого используются данные при движении и калибровка по GPS не нужна. Включаем опцию только при необходимости ориентирования по смартфону в сложных условиях или вдали от цивилизации.
6. Калибровка учета движения – чисто спортивная функция. Она позволяет более точно определять пройденное со смартфоном расстояние, количество шагов пользователя или преодоленных им ступеней.
Нужна фишка только тем, кто использует iPhone в качестве шагомера или нуждается в точной спортивной статистике без Apple Watch и фитнес-браслетов. Остальные могут отключать опцию.
7. Найти iPhone – самая важная фишка в параметрах геолокации. Без нее не получится найти смартфон после потери или кражи. Обязательно включаем и не трогаем это тумблер!
8. Настройка системы – нужна для работы некоторых фишек iOS вроде оптимизированной зарядки, смены темы оформления или NightShift по времени заката/рассвета, а не по заданному расписанию.
Если вы не используете такие настройки – можете отключить переключатель.
9. Поделиться геопозицией – отвечает за работу GPS для возможности поделиться своей геопозицией с друзьями. Без включения переключателя не получится отправить свое местоположения в чате или через приложение Локатор.
10. Поиск сотовой сети – предназначена фишка для сбора статистики о местоположении пользователя относительно вышек сотовой связи. В теории так можно помочь Apple и оператором улучшать покрытие, а на практике лучше отключить этот тумблер.
11. Установка часового пояса – поможет правильно скорректировать время на смартфоне во время пересечения часовых поясов. Те, кто путешествует пару раз в году и реже, могут запросто отключить фишку.
Постоянно летающим и перемещающимся туристам эта опция будет определенно полезна.
12. Экстренные вызовы и SOS – нужна для точного определения местоположения пользователя при активации SOS-режима. При желании найти смартфон получится и через позиционирование по вышкам сотовой связи.
Хорошо работает все это лишь в США и еще небольшом ряде стран. У нас фишка точно бесполезная.
13. DeviceManagement.framework – служба, которая позволяет удаленно конфигурировать гаджет и нужна исключительно для образовательных учреждений.
У нас это вообще вряд ли когда-то заработает, смело отключаем.
14. HomeKit – необходимая фишка для срабатывания сценариев в умном доме, которые настроены на прибытие или уход пользователя. Если умный дом настроен не на базе HomeKit либо в нем нет сценариев на приход/уход, отключаем переключатель.
15. Важные геопозиции – служба, которая банально следит за вами и запоминает любимые посещаемые места. На основе собранных данных система будет предлагать определенные рекомендации.
Долой постоянную слежку! Отключаем переключатель и не забываем очистить собранную статистику в этом меню.
16. Совершенствование продукта – отдельная группа переключателей, которая активирует службы совершенствования продуктов Apple. Тратить заряд батареи на это точно не стоит. Отключаем все переключатели ниже.
Итог для тех, кто не читал
Отключаем все переключатели кроме Найти iPhone.
Внимательно читаем описание переключателей:
? 2. Геопредупреждения;
? 6. Калибровка учета движения;
? 8. Настройка системы;
? 14. HomeKit;
Определяем для себя необходимость каждой фишки и настраиваем соответствующие тумблеры.
Источник
iOS 15 позволяет находить даже выключенный iPhone: как это сделано и есть ли опасность
В iOS 15.0 появилась новая функция: iPhone теперь можно найти при помощи Find My, даже когда iPhone «отключен». Как это работает? Представляет ли функция проблему для безопасности?
Я заметил эту функцию довольно давно на одном из моих iPhone с бетой iOS 15. Вот скриншот, который я сделал в июле. С тех пор интерфейс пользователя немного изменился.
В iOS 15 телефон можно находить, даже когда питание отключено
Я не понимаю, что означает «iPhone можно находить после отключения питания». Похоже, «отключение питания» больше не означает, что телефон «отключен», устройство продолжает работать и выполняет какой-то обмен данными на короткое расстояние с низким энергопотреблением. Пока ещё не понял, как к этому относиться.
Always-on Processor (AOP)
Публичной документации об AOP очень мало. Во всех чипах и различных встроенных устройствах, производимых Apple, работает операционная система реального времени под названием RTKitOS. AOP в iPhone тоже не является исключением. Однако AOP имеет особую роль. Он соединяет почти все остальные чипы iPhone. Для некоторых чипов он выполняет только простейшие задачи наподобие управления питанием, а для других он используется как прозрачный прокси, при необходимости пробуждающий iOS.
Таким образом, постоянно включенный процессор на самом деле экономит энергию. iOS может уйти в сон, пока AOP ждёт аппаратных событий. Примером такого события может быть информация с датчика движения. Экран включается, даже если вы не касаетесь ни одной кнопки iPhone.
Поискав в Интернете, можно узнать, что даже Siri реализована в AOP. Если вам не особо интересны технические подробности, то можете пропустить оставшуюся часть этого раздела. Вам достаточно только знать, что AOP также соединяет чипы беспроводной связи с их интерфейсами управления питанием.
Большинство драйверов ядра iOS имеет простую структуру. Если в чипе работает RTKitOS, то это видно на выводе ioreg . Например, в этом списке встречается Rose — чип U1 на основе Ultra-wideband.
Хоть это происходит и не в ядре iOS, AOP реализует копию этих драйверов. Например, регулирование диапазона U1 имеет дублирующую реализацию, работающую без nearbyd и способную выполняться изолированно в AOP.
Даже если чип не основан на RTKitOS, то AOP всё равно может к нему подключиться. Чип Bluetooth в iPhone 11, 12 и 13 изготовлен Broadcom и основан на операционной системе ThreadX. Тем не менее, AOP iPhone имеет частичный контроль над Bluetooth. Хотя он и не подчиняется той же схеме на основе RTKitOS, но может подавать питание на чип Bluetooth при помощи драйвера spmi-bluetooth .
Стоит заметить, что это очень отличается от ситуации с HomePod mini и Watch. В них используется чип Bluetooth производства Apple с кодовым названием Marconi. AOP может управлять Marconi при помощи драйверов marconi-bluetooth и aop-marconi-bt-control .
Запуск приложения Bluetooth, когда iPhone «выключен»
Всё, что необходимо iPhone для включения Find My, пока телефон «выключен» — простейшее управление питанием, а также чип Bluetooth, способный отправлять advertisements Bluetooth LE. Более того, эти advertisements требуют секретного ключа, привязанного к Apple ID в iPhone.
Чипы Broadcom очень похожи на чипы Cypress. SDK Cypress поддерживают внешние приложения IoT, требующие только чипа Bluetooth без дополнительных хостов. Эти приложения выполняются в потоке ThreadX под названием mpaf . Давайте проверим, есть ли где-то во встроенном ПО Bluetooth поток mpaf . Для этого скачаем IPSW iOS 15.0, смонтируем самый большой файл .dmg и перейдём в /usr/share/firmware/bluetooth . Файлы .bin — это патчи, загружаемые через драйвер Bluetooth PCIe. Начиная с iPhone 11 они содержат несколько отладочных строк. Выполнив grep mpaf * , можно получить такой список совместимости устройств.
- Серия iPhone 11, BCM4378B1 (Hei, Moana, Tala)
- Серия iPhone 12, BCM4387C2 (Almond, Cashew, Hazelnut, Pistachio)
- Серия iPhone 13, BCM4387C2 (Acacia, Camellia, Lilac, Mimosa)
- Серия iPad Air 2020, BCM4387C2 (Pomegranate)
- Некоторые другие серии iPad, BCM4387C2 (Baobab, Boab, Rambutan)
Любопытно, что iPhone SE 2020 под кодовым именем Fiti, тоже содержащий чип BCM4378B1, не имеет патча mpaf . Я обновил iPad Air 2020 до iOS 15.0, и несмотря на наличие патчей для Pomegranate, диалоговое окно Find My не отображается. Кроме того, на другом iPhone, залогиненном в тот же аккаунт, нет обновления местоположения iPad. То есть, вероятно, есть различия между текущими поддерживаемыми устройствами и чипами, теоретически способными поддерживать эту функцию. Возможно, Apple в будущем будет добавлять новые устройства.
Патч mpaf реализует приложение lpm . Вероятно, его название расшифровывается как «low-power mode» («режим низкого энергопотребления») и оно реализует сервис gatt Bluetooth LE. Всё это можно найти в строках и до меня это обнаружил plonk.
Эти патчи были добавлены в iOS 15 и ранее они отсутствовали. Их названия соответствуют ожидаемой функциональности. В этом посте я не буду приводить инструкции о том, как анализировать эти патчи, дампить ПЗУ чипа и т.д. Строк достаточно, чтобы убедиться, что эта функция реализована в чипе Bluetooth.
Связано ли содержимое секретного ключа с чипом U1?
Одна птичка напела мне, что телефон записывает последовательность заранее вычисленных криптографических маяков в чипсет UWB, но птичка — плохая замена документации
В AirTag содержимое ключа хранится в чипе U1. Apple неспроста назвала nRF в AirTag «Durian» («дуриан»). Компания не любит его и не доверяет ему, но он дёшев и потребляет мало энергии. Чаще всего U1 находится в состоянии сна и время от времени пробуждается.
Но в iPhone система другая. В iPhone ключи хранятся в Secure Enclave (SE). В одной из ранних сборок U1 даже присутствовали отладочные строки для обмена содержимыми ключей между U1 и SE, но в последних сборках их уже нет. То есть птичка была права относительно AirTag, но не про iPhone.
Передача содержимого секретных ключей
После установки отладочного профиля Bluetooth на iPhone 12 с iOS 15.1b2 вывод idevicesyslog перед завершением работы выглядит так:
Sep 30 22:02:58 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:58 bluetoothd[89] : BlueTool finished running «hci reset» command — output was «0x0e 0x04 0x01 0x03 0x0c 0x00»
Sep 30 22:02:58 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:58 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x06 . » command — output was » «
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x06 . » command — output was » «
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x06 . » command — output was » «
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x06 . » command — output was » «
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x06 . » command — output was » «
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x07 0x00 0x01» command — output was «0x0e 0x05 . »
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «bcm -s 0x0f,0x00,0x02,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00» command — output was «»
Sep 30 22:02:59 BlueTool[126] : Completed handling of dictionary-xpc event
Sep 30 22:02:59 bluetoothd[89] : BlueTool finished running «hci cmd 0xFE62 0x04» command — output was «0x0e 0x05 0x01 0x62 0xfe 0x00 0x04»
Sep 30 22:02:59 backboardd(libEDR)[66] : ScheduleSetBrightnessIn_block_invoke: enter WaitUntil late 0.126834 millisecond (333 / 333)
Sep 30 22:02:59 backboardd[66] : brightness change:0.67814 reason:BrightnessSystemDidChange options:
Sep 30 22:02:59 SpringBoard(FrontBoard)[62] : Shutdown task «NotifyBluetooth» complete after 1.59s
Sep 30 22:02:59 SpringBoard(CoreUtils)[62] : Invalidate CID 0x2B760001
Sep 30 22:02:59 SpringBoard(FrontBoard)[62] : Shutdown tasks complete.
Sep 30 22:02:59 SpringBoard(CoreUtils)[62] : Invalidated
Sep 30 22:02:59 bluetoothd[89] : BT_FW_OK flag is set. Entering LPM.
Sep 30 22:02:59 bluetoothd(CoreUtils)[89] : LPM entry took 1578ms
Sep 30 22:02:59 bluetoothd[89] : Sending BT Stats to CoreAnalytics for com.apple.BTLpmManagerStats
Sep 30 22:02:59 bluetoothd[89] : PowerManager power state is 0
Sep 30 22:02:59 bluetoothd[89] : PowerManager power state is 0
Sep 30 22:02:59 bluetoothd[89] : PowerManager power state is 0
Sep 30 22:02:59 bluetoothd[89] : PowerManager power state is 0
Последние этапы повторяются множество раз с выводом произвольных чисел. Это маяки, настраиваемые в чипе Bluetooth, поэтому я вырезал их из поста. Затем в конце чип Bluetooth сообщает, что переходит в режим низкого энергопотребления (LPM). Сразу же после этого iPhone «отключается».
Каждое advertisement функции Find My начинается с 0x4c 0x00 0x12 0x19 и эта последовательность байтов также содержится в выводе BlueTool . Суммарно в чип Bluetooth записывается 80 advertisements.
На случай, если вы захотите отладить его самостоятельно, сброс HCI — это последняя информация, видимая в Apple PacketLogger, в то время как idevicesyslog продолжает отображать вывод и команды BlueTool .
Влияние на безопасность и конфиденциальность
Новая функция Find My впервые позволила широкой публике узнать об AOP, а также о возможности автономной работы чипа Bluetooth.
Если предположить, что кто-то взломал ваш iPhone и шпионит за вами, он может и показать экран «отключения питания», но не отключать iPhone. Никогда не считайте, что устройство отключено, пока из него не извлечена батарея или лучше того — его не засунули в блендер. Например, АНБ взломало телевизор Samsung и добавило поддельный режим отключения, чтобы шпионить за людьми.
Протокол Find My имеет пару интересных механизмов для защиты вашей конфиденциальности. Он был подвергнут полному реверс-инжинирингу и существует его реализация в open source. Более того, приложение AirGuard позволяет вам идентифицировать маяки BLE Find My в Android. Если вы опасаетесь утечки своих местоположений через Find My, то можете просто отключить функцию в iPhone.
Учтите, что другие чипы беспроводной связи тоже обеспечивают утечку информации о местоположении. Сотовое подключение позволяет локализовать вас, а поставщик услуг мобильной связи может хранить историю местоположений, Wi-Fi тоже обеспечивает утечку местоположения (хоть с этим помогает справиться рандомизация MAC-адреса), и это ещё не всё. Что бы вы ни делали, смартфон — это устройство для слежки за человеком. Защита конфиденциальности в Find My устраняет только один возможный аспект слежки из множества.
Самое страшное может заключаться в том, что AOP и Bluetooth LPM позволяют создать новый вектор зловредного ПО, постоянно хранящегося в оборудовании.
Источник