Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS...

100
Безопасность iOS iOS 11 Январь 2018 г.

Transcript of Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS...

Page 1: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

Безопасность iOSiOS 11

Январь 2018 г.

Page 2: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

2Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Содержание

Стр. 4 ВведениеСтр. 6 Безопасность системы

Безопасная последовательность загрузкиАвторизация системного ПО Secure Enclave Touch IDFace ID

Стр. 15 Шифрование и защита данныхАппаратные функции безопасности Защита данных в файлахКод-пароли Классы защиты данныхЗащита данных связки ключейДоступ к паролям, сохраненным в SafariХранилища ключейСертификаты и программы обеспечения безопасности

Стр. 29 Безопасность программПодпись кода программ Безопасность в процессе выполнения Расширения Группы программЗащита данных в программах Аксессуары HomeKitSiriKitHealthKitReplayKitСекретные заметкиОбщие заметкиApple Watch

Стр. 45 Безопасность сетиTLS VPN Wi-Fi Bluetooth Единый вход Безопасность AirDropПредоставление паролей к Wi-Fi

Стр. 51 Apple PayКомпоненты Apple PayКак в Apple Pay используется Secure ElementКак в Apple Pay используется контроллер NFCПодготовка кредитных, дебетовых и предоплаченных картАвторизация платежей

Page 3: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

3Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Динамический код безопасности, назначаемый каждой транзакцииБесконтактные платежи с использованием Apple PayОплата покупок в программах с помощью Apple PayОплата покупок в Интернете с помощью Apple Pay или HandoffСкидочные картыApple Pay CashКарты SuicaПриостановка действия, удаление и стирание карт

Стр. 64 Интернет-службы Apple ID iMessage FaceTime iCloudСвязка ключей iCloud Siri НепрерывностьПредложения Safari, предложения Siri при поиске, Поиск, #images, программа News и виджет News в странах, где недоступна программа News

Стр. 83 Средства управления устройствамиЗащита код-паролемМодель создания пары iOSПринудительное применение конфигурацииУправление мобильными устройствами (MDM)Общий iPadApple School ManagerРегистрация устройствApple Configurator 2КонтрольОграниченияУдаленное стираниеРежим пропажиБлокировка активации

Стр. 91 Настройки конфиденциальностиСлужбы геолокацииДоступ к персональным даннымПолитика конфиденциальности

Стр. 93 Вознаграждение за обнаружение уязвимостей Apple

Стр. 94 ЗаключениеВсегда на страже безопасности

Стр. 95 Глоссарий

Стр. 98 История правок документа

Page 4: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

4Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Функции обеспечения безопасности встроены в ядро платформы iOS. Задавшись целью создать наилучшую мобильную платформу, мы воспользовались накопленным за десятилетия опытом для построения совершенно новой архитектуры. Мы подумали о том, какие опасности подстерегают пользователей в среде персональных компьютеров, и при разработке iOS приняли новый подход к безопасности. Мы разработали и встроили инновационные функции, которые повышают безопасность мобильных устройств и по умолчанию защищают всю систему. В результате iOS демонстрирует значительный прогресс в плане безопасности мобильных устройств.

Каждое устройство iOS сочетает в себе программное обеспечение, оборудование и службы, идеальная совместимость которых позволяет гарантировать максимальную безопасность и прозрачность работы пользователей. iOS защищает не только само устройство и хранящиеся на нем данные, но и всю цифровую среду, включая локальные действия пользователей, использование сетей и основных интернет-служб.

iOS и устройства iOS предоставляют расширенные функции безопасности, но при этом их очень легко использовать. Многие из этих функций включены по умолчанию, поэтому ИТ-отделам не нужно выполнять сложную настройку. Кроме того, основные функции безопасности, например шифрование устройств, не имеют никаких параметров, так что пользователи не могут случайно их отключить. Другие функции, например Face ID, облегчают процесс использования устройства, позволяя проще и удобнее обеспечивать его защиту.

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

Этот документ состоит из следующих тематических разделов:

• Безопасность системы. Интегрированные и безопасные программы и оборудование, которые являются платформой для iPhone, iPad и iPod touch.

• Шифрование и защита данных. Архитектурные и проектные решения, которые защищают данные пользователя в случае потери или кражи устройства, а также в случае, если их пытается использовать или изменить несанкционированное лицо.

• Безопасность программ. Системы, которые обеспечивают возможность безопасной работы программ без нарушения целостности платформы.

• Безопасность сети. Стандартные отраслевые сетевые протоколы, которые обеспечивают надежную аутентификацию и шифрование данных во время передачи.

Введение

Ключ устройства Групповой ключ

Корневой сертификат Apple

Модуль шифрования

Ядро

Раздел ОС

SecureEnclave

Secure Element

Раздел пользователя (зашифрован)

Класс защиты данны�

«Песочница» для программ

Файловая система

Программное обеспечение

Аппаратное обеспечение и прошивка

На данной схеме архитектуры безопасности iOS показаны различные технологии, которые рассматриваются в данном документе.

Page 5: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

5Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• Apple Pay. Разработанная компанией Apple технология безопасных платежей.

• Интернет-службы. Сетевая инфраструктура Apple для отправки сообщений, синхронизации и резервного копирования.

• Средства управления устройствами. Средства, которые обеспечивают возможность управления устройствами iOS, предотвращают несанкционированное использование устройств и позволяют выполнить удаленное стирание в случае потери или кражи устройства.

• Настройки конфиденциальности. Функции iOS, которые можно использовать для контроля доступа к службам геолокации и данным пользователей.

Page 6: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

6Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Безопасность системы

Концепция безопасности системы обеспечивает безопасность программного обеспечения и оборудования всех основных компонентов каждого устройства iOS. Сюда входит процесс загрузки, обновление программного обеспечения и Secure Enclave. Эта архитектура является центром безопасности iOS и не оказывает какого-либо влияния на удобство использования устройства.

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

Безопасная последовательность загрузкиНа каждом этапе загрузки используются компоненты, которые подписаны Apple с использованием криптографических методов для гарантии целостности и выполняются только после проверки цепочки доверия. Эти компоненты включают загрузчики системы, ядро, расширения ядра и прошивку радиомодуля. Эта безопасная последовательность загрузки гарантирует, что низкие уровни программного обеспечения не подделаны.

Сразу после включения устройства iOS процессор программ исполняет код загрузочного ПЗУ, которое доступно только для чтения. Этот неизменяемый код, называемый аппаратным корнем доверия, закладывается в процессе изготовления микросхемы и считается безоговорочно достоверным. Код загрузочного ПЗУ содержит открытый ключ корневого сертификата Apple. Используя этот ключ, перед выполнением загрузки устройство убеждается, что загрузчик системы iBoot подписан Apple. Этот этап является первым звеном цепочки доверия, в которой каждое звено убеждается в том, что следующее звено подписано Apple. Когда iBoot завершает свои задачи, он проверяет и запускает ядро iOS. На устройствах с процессором S1, A9 или более старым процессором серии А добавляется еще один этап: загрузочное ПЗУ загружает и проверяет низкоуровневый загрузчик, который, в свою очередь, загружает и проверяет iBoot.

Если загрузочному ПЗУ не удается загрузить низкоуровневый загрузчик (на более старых устройствах) или iBoot (на более новых устройствах), устройство переходит в режим обновления прошивки. Если низкоуровневому загрузчику или iBoot не удается загрузить или проверить следующий этап, процесс загрузки останавливается и на устройстве отображается сообщение о необходимости подключения к iTunes. Это называется режимом восстановления. В любом из этих случаев необходимо подключить устройство к iTunes через USB и восстановить заводские настройки.

Переход в режим обновления прошивки устройства (DFU) При восстановлении устройства после перехода в режим DFU выполняется возврат в известное исправное состояние, в котором гарантированно присутствует только неизмененный код, который подписан компанией Apple. Переход в режим DFU можно выполнить вручную.

Сначала подключите устройство к компьютеру, используя кабель USB.

Затем:

На iPhone X, iPhone 8 или iPhone 8 Plus: нажмите и сразу же отпустите кнопку увеличения громкости. Нажмите и сразу же отпустите кнопку уменьшения громкости. Затем нажмите и удерживайте боковую кнопку, пока не отобразится экран режима восстановления.

На iPhone 7 или iPhone 7 Plus: одновременно нажмите и удерживайте боковую кнопку и кнопку уменьшения громкости. Продолжайте удерживать их, пока не отобразится экран режима восстановления.

На iPhone 6s и более ранних версиях, iPad или iPod touch: одновременно нажмите и удерживайте кнопку «Домой» и верхнюю (или боковую) кнопку. Продолжайте удерживать их, пока не отобразится экран режима восстановления.

Примечание: в режиме DFU на экране устройства ничего не отображается. Если появляется логотип Apple, то боковая кнопка или кнопка «Сон/Пробуждение» удерживалась слишком долго.

Page 7: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

7Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

На устройствах с Secure Enclave сопроцессор Secure Enclave также задействует процесс безопасной загрузки, который гарантирует, что его специализированное программное обеспечение проверено и подписано Apple. См. раздел «Secure Enclave» данного документа.

Подробнее о том, как вручную перевести устройство в режим восстановления, см. в статье https://support.apple.com/ru-ru/HT1808

Авторизация системного ПОApple регулярно выпускает обновления программного обеспечения в ответ на возникающие проблемы безопасности и разрабатывает новые функции; обновления предоставляются для всех поддерживаемых устройств одновременно. Пользователь получает уведомление о наличии обновления iOS на устройстве и в iTunes. Обновления передаются через беспроводную сеть, что ускоряет их установку и устранение обнаруженных проблем безопасности.

Вышеописанный процесс загрузки гарантирует, что на устройство может быть установлен только код, подписанный Apple. Чтобы предотвратить возможность возврата к предыдущим версиям системы, в которых отсутствуют новейшие обновления системы безопасности, в iOS используется так называемая авторизация системного ПО. Если бы возврат был возможен, злоумышленник мог бы установить на устройство более раннюю версию iOS и задействовать уязвимость, уже устраненную в текущей версии.

На устройствах с Secure Enclave сопроцессор Secure Enclave также использует авторизацию системного ПО для проверки целостности своего программного обеспечения и для защиты от возврата к предыдущим версиям. См. раздел «Secure Enclave» данного документа.

Обновления iOS можно установить на устройство через iTunes или через беспроводную сеть. При использовании iTunes загружается и устанавливается полная копия iOS. При беспроводном обновлении загружаются только те компоненты, которые необходимы для обновления системы — тем самым оптимизируется расход трафика. Кроме того, обновления ПО могут кэшироваться на компьютере Mac под управлением macOS High Sierra с включенной функцией кэширования содержимого, чтобы устройствам iOS не пришлось заново загружать необходимые обновления из Интернета. Для завершения процесса обновления им нужно лишь связаться с серверами Apple.

При обновлении iOS программа iTunes (или само устройство, если выполняется беспроводное обновление) подключается к серверу авторизации установки Apple и отправляет ему список криптографических показателей для каждой части установочного пакета, которую предстоит установить (например, iBoot, ядро, образ ОС), случайное значение (nonce) для функции антиповтора и уникальный идентификатор устройства (ECID).

Page 8: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

8Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Сервер авторизации сверяет полученные значения с теми, для которых разрешена установка. Если соответствие найдено, сервер добавляет ECID к показателям и подписывает результат. В процессе обновления сервер передает на устройство полный комплект подписанных данных. Добавление ECID необходимо, чтобы сделать авторизацию запрашивающего устройства уникальной. Выполняя авторизацию и выдавая подпись на основе известных значений показателей, сервер гарантирует, что обновление будет происходить именно так, как предусмотрено Apple.

Проверка цепочки доверия в момент загрузки позволяет убедиться, что подпись исходит от Apple, а значения показателей объекта, загруженного с диска, в сочетании с ECID устройства, совпадают с теми, на которые распространяется подпись.

Все эти этапы гарантируют, что авторизация выполнена для данного конкретного устройства, а более старую версию iOS нельзя будет скопировать с одного устройства на другое. Значение nonce не позволяет злоумышленнику сохранить ответ сервера и использовать его для взлома устройства или какого-либо изменения системного ПО.

Secure EnclaveSecure Enclave — это сопроцессор, встроенный в процессоры Apple T1, Apple S2, Apple S3, Apple A7 и более новые версии процессоров серии А. Secure Enclave использует шифрованную память и включает в себя аппаратный генератор случайных чисел. Secure Enclave обеспечивает выполнение всех криптографических операций для управления ключами защиты данных и гарантирует целостность системы защиты данных даже в случае нарушения безопасности ядра. Обмен данными между Secure Enclave и процессором программ ограничен почтовым ящиком, который управляется прерываниями, и общими буферами данных в памяти.

В Secure Enclave используется версия микроядра L4, которая была доработана компанией Apple. Это микроядро подписывается Apple, проверяется для вхождения в безопасную последовательность загрузки iOS и обновляется в процессе индивидуального обновления ПО.

Во время загрузки устройства создается динамический ключ, который связан с UID устройства. С помощью этого ключа выполняется шифрование области памяти устройства, которая предназначена для Secure Enclave. На всех процессорах, кроме Apple A7 динамический ключ также используется для аутентификации памяти Secure Enclave. В процессоре Apple A11 используется дерево целостности, предотвращающее повторную передачу критической для безопасности памяти Secure Enclave. Аутентификация этого дерева выполняется с помощью динамического ключа и значений nonce, хранящихся в памяти SRAM на микросхеме.

Кроме того, все данные, сохраняемые сопроцессором Secure Enclave в файловой системе, шифруются с помощью ключа, который связан с UID и счетчиком антиповтора. Службы антиповтора в Secure Enclave используются для аннулирования данных за пределами событий, обозначающих границы антиповтора, включая, помимо прочего, следующие:

Page 9: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

9Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• изменение код-пароля;• включение/отключение Touch ID или Face ID;• добавление/удаление отпечатка пальца;• сброс Face ID;• добавление/удаление карты Apple Pay;• стирание всего контента и настроек.

Secure Enclave также отвечает за обработку данных, получаемых датчиками Touch ID и Face ID. Он сверяет полученные данные с зарегистрированными отпечатками пальцев или лицами и разрешает доступ или покупку от имени пользователя.

Touch IDTouch ID — это система считывания отпечатков пальцев, которая ускоряет и упрощает процесс безопасного доступа к iPhone и iPad. Эта технология считывает отпечатки пальцев под любым углом. При каждом использовании датчик выявляет дополнительные перекрывающиеся узловые точки, расширяя базу данных об отпечатках пальцев пользователя.

Face IDФункция Face ID безопасно разблокирует iPhone X: для этого пользователю достаточно посмотреть на экран. Интуитивно понятная безопасная аутентификация выполняется с помощью камеры TrueDepth, которая точно распознает геометрию лица, задействуя передовые технологии. Face ID подтверждает внимание пользователя, определяя направление его взгляда, а затем задействует нейросети для сопоставления лица и предотвращения несанкционированного доступа. Это дает возможность разблокировать телефон взглядом. Face ID автоматически адаптируется к изменениям внешности пользователя и тщательно сохраняет конфиденциальность и безопасность биометрических данных.

Touch ID, Face ID и код-паролиДля использования Touch ID или Face ID необходимо настроить устройство таким образом, чтобы для его разблокировки требовался код-пароль. Если Touch ID или Face ID успешно находит соответствие, устройство разблокируется, не запрашивая код-пароль. Это повышает рациональность использования более длинного и сложного код-пароля, поскольку его не нужно будет вводить слишком часто. Touch ID и Face ID не заменяют код-пароль, но обеспечивают легкий доступ к устройству в разумных границах и с ограничениями по времени. Это важно, поскольку надежный код-пароль служит основанием для криптографической защиты устройства iOS.

В любой момент вместо использования Touch ID или Face ID можно ввести код-пароль. Также код-пароль требуется в следующих ситуациях:• устройство только что включено или перезапущено;• устройство не разблокировалось более 48 часов;• код-пароль не использовался для разблокировки устройства более

156 часов (шести с половиной дней), а Face ID — более четырех часов;

Page 10: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

10Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• устройство получило команду удаленной блокировки;• выполнено пять неудачных попыток сопоставления;• выполнено выключение с запуском функции «Экстренный вызов —

SOS».

Когда включена функция Touch ID или Face ID, устройство немедленно блокируется при нажатии боковой кнопки и блокируется каждый раз при переходе в режим сна. Для Touch ID и Face ID требуется успешное сопоставление (либо ввод код-пароля) каждый раз при выходе из режима сна.

Вероятность того, что случайный человек взглянет на экран iPhone X и разблокирует его с помощью функции Face ID, составляет приблизительно 1 к 1 000 000 (для Touch ID эта вероятность составляет 1 к 50 000). Для дополнительной защиты функции Touch ID и Face ID разрешают выполнить только 5 безуспешных попыток сопоставления, прежде чем для доступа к устройству потребуется ввести код-пароль. При использовании Face ID вероятность ошибочного сопоставления отличается для близнецов, братьев и сестер, похожих на пользователя, а также для детей младше 13 лет, поскольку черты их лица еще не сформировались полностью. Тем, кто беспокоится о таком ошибочном сопоставлении, Apple рекомендует использовать код-пароль для аутентификации.

Безопасность Touch IDДатчик отпечатков пальцев активируется, только когда окружающее кнопку «Домой» емкостное сенсорное кольцо из нержавеющей стали распознает прикосновение пальца; затем усовершенствованная матрица сканирует палец и отправляет изображение в Secure Enclave. Датчик Touch ID обменивается данными с процессором по шине последовательного периферийного интерфейса. Процессор не может прочитать эти данные, а просто перенаправляет их сопроцессору Secure Enclave. Для шифрования и аутентификации этих данных используется ключ сеанса, который согласовывается с помощью общего ключа, выделяемого при производстве для каждого датчика Touch ID и соответствующего ему сопроцессора Secure Enclave. Общий ключ является надежным, случайно сгенерированным и уникальным для каждого датчика Touch ID. При обмене ключом сеанса используется алгоритм защиты ключа AES: обе стороны предоставляют случайный ключ, который задает ключ сеанса и использует транспортное шифрование AES-CCM.

Это растровое изображение временно сохраняется в зашифрованном участке памяти Secure Enclave, векторизируется для анализа, а затем удаляется. Анализ использует угловое представление дактилоскопического узора, которое намеренно создается с потерями, чтобы нельзя было восстановить фактический отпечаток пальца пользователя. Полученная схема узловых точек сохраняется без какой-либо идентифицирующей информации в зашифрованном формате, который может быть прочитан только Secure Enclave. Эта схема никогда не передается в Apple и не включается в резервные копии iCloud или iTunes.

Безопасность Face IDФункция Face ID создана для подтверждения внимания пользователя, надежной аутентификации с низкой долей ошибок и предотвращения электронных и физических способов несанкционированного доступа.

Page 11: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

11Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Камера TrueDepth автоматически находит лицо пользователя, когда он выводит iPhone X из режима сна, поднимая его или касаясь экрана, либо когда iPhone X пытается идентифицировать пользователя для отображения входящего уведомления или при запросе аутентификации Face ID от поддерживаемой программы. Когда лицо распознано, Face ID подтверждает внимание пользователя и его намерение разблокировать устройство, распознавая открытые глаза, направленные на устройство. Для поддержки Универсального доступа эта функция отключается при активации VoiceOver, а при необходимости ее можно отключить отдельно.

Когда Face ID подтверждает присутствие лица и внимание пользователя, камера TrueDepth проецирует и считывает более 30 000 инфракрасных точек для составления карты глубины лица, а также двумерное инфракрасное изображение. На основе этих данных создается последовательность двумерных изображений и карт глубины, которые защищаются цифровой подписью и отправляются в Secure Enclave. Для предотвращения электронных и физических способов мошенничества камера TrueDepth располагает последовательность двумерных изображений и снимков карт глубины в случайном порядке, а также проецирует случайную схему, уникальную для данного устройства. Один из элементов нейронного модуля процессора A11 Bionic, надежно защищенный в Secure Enclave, создает математическое представление этих данных и сравнивает его с данными зарегистрированного лица. Эти данные являются математическим представлением лица пользователя, сфотографированного под различными углами.

Сопоставление лица выполняется внутри Secure Enclave с использованием нейросетей, специально обученных для этой задачи. Компания Apple разработала нейросети для сопоставления лиц на основе более чем миллиарда изображений, включая инфракрасные изображения и карты глубины, собранные в ходе исследований, проведенных с информированного согласия участников. Работая с добровольцами со всего мира, компания Apple собрала репрезентативную группу людей на основе пола, возраста, этнического происхождения и других факторов. При необходимости охват исследований расширялся, чтобы обеспечить высокую степень точности для любых пользователей. Функция Face ID распознает пользователей в головных уборах, шарфах, с контактными линзами, в солнечных и обычных очках различных видов. Кроме того, она работает в помещении, на открытом воздухе и даже в полной темноте. Дополнительная нейросеть, обученная для распознавания и предотвращения мошенничества, защищает от попыток разблокировать iPhone X при помощи фотографий или масок.

Данные Face ID, в том числе математические представления лица пользователя, зашифрованы и доступны только модулю Secure Enclave. Эти данные никогда не покидают устройства. Они не отправляются в Apple и не включаются в резервные копии устройства. При обычном использовании устройства следующие данные Face ID сохраняются в зашифрованном виде только для использования Secure Enclave:• математические представления лица пользователя, рассчитанные

при регистрации;• математические представления лица пользователя, рассчитанные

во время некоторых попыток разблокировки, если Face ID считает их полезными для повышения точности сопоставления в будущем.

Page 12: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

12Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Фотографии лица, сделанные в ходе обычного использования устройства, не сохраняются; они немедленно удаляются после расчета математического представления в целях регистрации или сравнения с зарегистрированными данными Face ID.

Каким образом Touch ID или Face ID разблокирует устройство iOSПри отключенной функции Touch ID или Face ID, когда устройство блокируется, ключи высшего класса защиты данных, хранящиеся в Secure Enclave, удаляются. Файлы и элементы связки ключей этого класса недоступны, пока пользователь не разблокирует устройство, введя код-пароль.

Когда функция Touch ID или Face ID включена, при блокировке устройства ключи не удаляются; они защищаются с помощью ключа, выделенного для подсистемы Touch ID или Face ID в Secure Enclave. Если пользователь пытается разблокировать устройство и оно распознает успешное сопоставление, оно предоставляет ключ для доступа к ключам защиты данных, и устройство разблокируется. Эта процедура обеспечивает дополнительную защиту, поскольку для разблокировки устройства требуется взаимодействие подсистемы защиты данных с подсистемой Touch ID или Face ID.

При перезапуске устройства ключи, необходимые Touch ID или Face ID для разблокировки устройства, теряются. Secure Enclave удаляет эти ключи при возникновении любых условий, требующих ввода код-пароля: например, если устройство не разблокировалось в течение 48 часов или после 5 неудачных попыток сопоставления.

Чтобы повысить эффективность разблокировки и следить за естественными изменениями внешнего вида пользователя, Face ID периодически дополняет сохраненные математические представления. После успешной разблокировки Face ID может использовать заново рассчитанное математическое представление (если его качество достаточно высоко) в течение ограниченного числа дополнительных разблокировок, после чего эти данные удаляются. Однако, если Face ID не распознает пользователя, но качество сопоставления выше определенного порога, а сразу после неудачного сопоставления пользователь вводит код-пароль, Face ID делает новый снимок и дополняет зарегистрированные данные Face ID заново рассчитанным математическим представлением. Эти новые данные Face ID удаляются при прекращении сопоставления с ними и после ограниченного числа разблокировок. Благодаря таким процедурам дополнения Face ID продолжает работать с минимальным числом ошибок после значительных изменений прически и макияжа пользователя.

Touch ID, Face ID и Apple PayTouch ID и Face ID можно также использовать с Apple Pay для легкого и безопасного совершения покупок в магазинах, программах и в Интернете. Подробнее о Touch ID и Apple Pay рассказано в разделе данного документа, посвященном Apple Pay.

Чтобы авторизовать платеж в магазине посредством Face ID, пользователь сначала должен подтвердить свое намерение произвести оплату, дважды нажав боковую кнопку. Затем пользователь проходит аутентификацию посредством Face ID, прежде чем поднести iPhone X к устройству считывания для бесконтактной оплаты. Если после

Page 13: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

13Руководство по безопасности iOS — информационный документ | Январь 2018 г.

аутентификации посредством Face ID пользователь желает выбрать другой способ оплаты через Apple Pay, он должен повторно пройти аутентификацию, но без повторного двойного нажатия боковой кнопки.

Для платежей в программах и в Интернете пользователь подтверждает свое намерение произвести платеж, дважды нажимая боковую кнопку, а затем проходит аутентификацию посредством Face ID, чтобы авторизовать платеж. Если транзакция Apple Pay не производится в течение 30 секунд после двойного нажатия боковой кнопки, пользователь должен повторно подтвердить свое намерение произвести платеж, дважды нажав боковую кнопку снова.

Диагностика Face IDДанные Face ID не покидают устройства и никогда не включаются в резервные копии iCloud и в любые другие резервные копии. Диагностические данные Face ID передаются с устройства только в том случае, если пользователь желает предоставить их службе AppleCare для технической поддержки. Для включения Диагностики Face ID требуется авторизация Apple с цифровой подписью. Она не отличается от авторизации, используемой в процессе персонализации обновлений ПО. После авторизации пользователь может включить Диагностику Face ID и начать процесс настройки в программе «Настройки» на iPhone X.

В процессе настройки Диагностики Face ID существующая регистрация Face ID удаляется, а пользователю предлагается заново зарегистрироваться в Face ID. Затем iPhone X начинает записывать изображения Face ID, сделанные при попытках аутентификации, в течение следующих 10 дней. После этого iPhone X автоматически прекращает сохранять изображения. Функция «Диагностика Face ID» не отправляет данные в Apple автоматически. Пользователь может просмотреть и одобрить данные Диагностики Face ID, в том числе изображения, сделанные при регистрации и разблокировке (как успешной, так и неудачной) и собранные в режиме диагностики, прежде чем они будут отправлены в Apple. Функция «Диагностика Face ID» выгрузит только те изображения Диагностики Face ID, которые одобрил пользователь. Перед выгрузкой данные шифруются, а после завершения выгрузки они немедленно удаляются с iPhone X. Изображения, отклоненные пользователем, удаляются автоматически.

Если пользователь не завершил сеанс Диагностики Face ID, просмотрев изображения и выгрузив одобренные изображения, функция «Диагностика Face ID» автоматически завершает работу через 40 дней, а все изображения диагностики удаляются с iPhone X. Пользователь также может отключить Диагностику Face ID в любой момент. В таком случае все локальные изображения немедленно удаляются, а в Apple не отправляются никакие данные Face ID.

Другие способы использования Touch ID и Face IDПрограммы сторонних разработчиков могут использовать API, предоставленные системой, чтобы запрашивать у пользователя аутентификацию посредством Touch ID или Face ID либо ввод код-пароля. Для программ, поддерживающих Touch ID, поддержка Face ID добавляется автоматически без необходимости каких-либо изменений. При использования Touch ID или Face ID программа просто получает уведомление об успешном или неудачном прохождении аутентификации; она не имеет доступа к Touch ID, Face ID или данным, которые связаны с зарегистрированным пользователем. Touch ID и

Page 14: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

14Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Face ID также можно использовать для защиты элементов связки ключей — в этом случае Secure Enclave будет разблокировать элементы связки ключей только в случае успешного сопоставления или ввода код-пароля устройства. Разработчики программ должны требовать от API подтверждения того, что пользователь установил код-пароль, прежде чем требовать разблокировки элементов связки ключей посредством Touch ID, Face ID или ввода код-пароля. Разработчикам программ доступны следующие возможности.• Запрещать применение пароля программы или код-пароля

устройства для выполнения операций, использующих API аутентификацию. Они могут запрашивать подтверждение регистрации пользователя, разрешая использование Touch ID или Face ID в качестве второго фактора аутентификации в программах, требующих особых мер безопасности.

• Генерировать и использовать ключи эллиптической криптографии (ECC) внутри Secure Enclave, которые могут быть защищены посредством Touch ID или Face ID. Операции с этими ключами всегда производятся внутри Secure Enclave после того, как Secure Enclave авторизует их использование.

Можно также настроить Touch ID или Face ID для авторизации покупок в iTunes Store, App Store и iBooks Store, чтобы пользователю не приходилось вводить пароль Apple ID. В iOS 11 или новее ключи ECC внутри Secure Enclave, защищенные с помощью Touch ID или Face ID, используются для авторизации покупки путем подписания запроса магазина.

Page 15: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

15Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Шифрование и защита данных

Безопасная последовательность загрузки, подпись кода и функции обеспечения безопасности в процессе выполнения помогают следить за тем, чтобы на устройстве запускались только надежные программы и фрагменты кода. В iOS также реализованы дополнительные функции шифрования и защиты данных для обеспечения безопасности данных пользователей даже в случае компрометации других частей системы безопасности (например, на устройстве с несанкционированными модификациями). Это имеет большое значение для пользователей и ИТ-администраторов, поскольку такой подход обеспечивает постоянную защиту личной и корпоративной информации, а также предоставляет средства для мгновенного и полного удаленного стирания в случае потери или кражи устройства.

Аппаратные функции безопасностиВ мобильных устройствах решающее значение имеют скорость и энергоэффективность. Криптографические операции требуют значительных ресурсов и могут снижать время работы от аккумулятора или производительность устройства, если при разработке и реализации не уделить этим аспектам должного внимания.

В каждом устройстве с iOS имеется специализированный криптографический модуль AES-256, который встроен непосредственно в канал DMA между флеш-памятью и основной системной памятью для повышения эффективности шифрования файлов. На устройствах с процессором A9 или более новым процессором серии A подсистема флеш-памяти находится на изолированной шине, которая получает доступ к памяти с пользовательскими данными только через криптографический модуль DMA.

Уникальный идентификатор устройства (UID) и идентификатор группы устройств (GID) — это 256-битные ключи AES, вшитые (UID) или скомпилированные (GID) в процессор программ и Secure Enclave на этапе производства. Ни одна программа или микропрограмма не может прочитать их напрямую; им доступны только результаты операций шифрования и дешифрования, выполненных специализированными модулями AES микросхемы с использованием UID или GID в качестве ключа. Кроме того, UID и GID подсистемы Secure Enclave могут быть использованы только специализированным AES-модулем Secure Enclave. Идентификаторы UID и GID также недоступны через JTAG и другие интерфейсы отладки.

На процессорах T1, S2, S3 и A9, а также более новых процессорах серии A каждый сопроцессор Secure Enclave генерирует собственный UID (уникальный идентификатор). Поскольку UID уникален для каждого устройства и генерируется полностью внутри Secure Enclave, а не в производственной системе за пределами устройства, компания Apple и любые ее поставщики не могут получать доступ к UID или сохранять его. Программное обеспечение, работающее в Secure Enclave, задействует UID для защиты данных на устройстве.

Стирание всего контента и настроек Команда «Стереть контент и настройки» в Настройках вызывает уничтожение всех ключей в стираемом накопителе, в результате чего все пользовательские данные на устройстве становятся криптографически недоступными. Следовательно, этот вариант является идеальным способом надежного удаления всей персональной информации с устройства перед его передачей другому пользователю или в службу поддержки.

Внимание! Не выбирайте «Стереть контент и настройки», пока не создана резервная копия устрой-ства, поскольку восстановить стер-тые данные будет невозможно.

Page 16: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

16Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Например, UID входит в иерархию ключей, используемых для защиты файловой системы, поэтому при физическом перемещении микросхем памяти из одного устройства в другое файлы будут недоступны. UID не связан ни с каким другим идентификатором устройства.

GID является общим для всех процессоров в определенном классе устройств (например, для всех устройств с процессором Apple A8).

За исключением UID и GID, все остальные криптографические ключи создаются системным генератором случайных чисел с использованием алгоритма на основе CTR_DRBG. Источником энтропии системы являются колебания времени при загрузке, а также колебания времени обработки прерываний после загрузки устройства. Для генерирования ключей внутри Secure Enclave используется аппаратный генератор истинно случайных чисел: в его основе лежат несколько кольцевых генераторов, сигнал которых обрабатывается генератором CTR_DRBG.

Надежное стирание сохраненных ключей так же важно, как их генерирование. Особую сложность представляет стирание содержимого флеш-памяти: например, из-за алгоритма нивелирования износа может потребоваться стереть несколько копий данных. Для решения этой проблемы в устройствах с iOS предусмотрена специальная функция, предназначенная для надежного стирания данных. Она называется «Стираемый накопитель». Эта функция обращается к базовой технологии накопителя (например, NAND), чтобы получить прямой доступ и очистить небольшое количество блоков на очень низком уровне.

Защита данных в файлахПомимо функций аппаратного шифрования, встроенных в устройства iOS, Apple использует специальную технологию для более надежной защиты данных, хранящихся во флеш-памяти на устройстве. Технология защиты данных позволяет устройству реагировать на обычные события, такие как поступление телефонного вызова, а также обеспечивает более высокий уровень шифрования данных пользователей. Основные системные программы, такие как Сообщения, Почта, Календарь, Контакты, Фото и Медданные, используют технологию защиты данных по умолчанию, а программы сторонних разработчиков, установленные в iOS 7 или более поздней версии, получают ее автоматически.

Защита данных осуществляется путем построения и контроля иерархии ключей и основана на технологиях аппаратного шифрования, встроенных в каждое устройство iOS. Защита данных организована на уровне файлов: каждому файлу назначается один из классов защиты, а доступность определяется разблокированием ключей класса. С появлением файловой системы Apple (APFS) файловая система стала способна к дальнейшему разделению ключей по интервалам (различные фрагменты файла могут иметь разные ключи).

Page 17: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

17Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Обзор архитектурыПри создании файла в разделе данных функция защиты данных создает новый 256-битный ключ («ключ файла») и передает его аппаратному модулю AES, который использует этот ключ для шифрования файла при записи во флеш-память в режиме AES CBC. (На устройствах с процессором A8 или более новым процессором используется AES-XTS.) В начало файла добавляется вектор инициализации (IV), после чего файл шифруется с использованием хэша SHA-1 ключа файла.

Ключ файла (или интервала) защищается с помощью одного из нескольких ключей классов в зависимости от условий, при которых файл должен быть доступен. Как и в других случаях защиты ключей, эта процедура выполняется с помощью шифрования NIST AES по алгоритму RFC 3394. Защищенный ключ файла хранится в метаданных файла.

Устройства, работающие под управлением файловой системы Apple, могут поддерживать клонирование файлов (технология копирования при записи обеспечивает копирование с нулевыми затратами). Если файл клонируется, каждая из половин клона получает новый ключ для приема входящих операций записи, поэтому новые данные записываются на носитель с новым ключом. Со временем файл может разделиться на несколько диапазонов (или фрагментов), каждый из которых связан с отдельным ключом. Однако все диапазоны, составляющие файл, будут защищены одним и тем же ключом класса.

При открытии файла выполняется дешифрование его метаданных с помощью ключа файловой системы, которое приводит к раскрытию защищенного ключа файла и обозначения класса его защиты. Ключ файла (или диапазона) дешифруется с помощью ключа класса, а затем передается аппаратному модулю AES, который выполняет дешифрование файла при чтении из флеш-памяти. Вся обработка защищенного ключа файла выполняется в Secure Enclave; ключ файла никогда не раскрывается непосредственно процессору программ. При загрузке Secure Enclave согласовывает динамический ключ с модулем AES. Ключи файла расшифровываются в Secure Enclave, а затем снова защищаются с помощью динамического ключа и отправляются обратно процессору программ.

Метаданные всех файлов файловой системы шифруются с помощью случайного ключа, который создается при первой установке iOS или при стирании данных на устройстве пользователем. На устройствах, поддерживающих файловую систему Apple, ключ метаданных файловой системы защищается с помощью ключа UID в Secure Enclave для долгосрочного хранения. Аналогично ключам файлов и диапазонов, ключ метаданных никогда не раскрывается процессору программ напрямую; вместо этого Secure Enclave предоставляет динамическую версию для каждой загрузки. Во время хранения зашифрованный ключ файловой системы дополнительно защищается с помощью «стираемого ключа», хранящегося на стираемом накопителе. Этот ключ не обеспечивает дополнительную конфиденциальность данных. Он предназначен для быстрого стирания по запросу (запрос может быть инициирован пользователем с помощью пункта «Стереть контент и настройки» или администратором с помощью команды удаленного стирания

Page 18: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

18Руководство по безопасности iOS — информационный документ | Январь 2018 г.

от системы MDM, сервера Exchange ActiveSync или iCloud). Такой способ стирания ключа делает все файлы криптографически недоступными.

Содержимое файла

Метаданные файла

Ключ файла

Ключ файловой системы

Ключ класса

Код-пароль

Аппаратный ключ

Содержимое файла может шифроваться с помощью одного или нескольких ключей файла (или диапазонов), которые защищаются с помощью ключа класса и сохраняются в метаданных файла, которые, в свою очередь, шифруются с помощью ключа файловой системы. Ключ класса защищен аппаратным UID. Кроме того, ключи некоторых классов защищены код-паролем пользователя. Такая иерархия обеспечивает и гибкость, и эффективность. Например, для изменения класса файла достаточно еще раз защитить его с помощью ключа файла, а изменение код-пароля приводит просто к повторной защите ключа класса.

Page 19: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

19Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Код-паролиУстановив на устройстве код-пароль, пользователь автоматически включает защиту данных. iOS поддерживает код-пароли из четырех или шести цифр и буквенно-цифровые код-пароли произвольной длины. Помимо разблокирования устройства, код-пароль является источником энтропии для некоторых ключей шифрования. Это означает, что злоумышленник, завладевший устройством, не сможет получить доступ к данным определенных классов защиты, не зная код-пароля.

Код-пароль привязывается к UID устройства, поэтому попытки перебора должны выполняться непосредственно на атакуемом устройстве. Для замедления каждой попытки используется большое число повторений. Число повторений настроено таким образом, что одна попытка занимает примерно 80 миллисекунд. Это означает, что для перебора всех сочетаний шестизначного буквенно-цифрового код-пароля, состоящего из строчных букв и цифр, потребуется больше 5,5 лет.

Чем надежнее код-пароль пользователя, тем надежнее ключ шифрования. А благодаря Touch ID и Face ID пользователь может установить гораздо более надежный код-пароль, чем это было бы возможно при отсутствии данной технологии. Это повышает эффективное количество энтропии, используемое для защиты ключей шифрования системы защиты данных, без ущерба для удобства пользователей, которым приходится по несколько раз в день разблокировать устройство iOS.

Чтобы дополнительно усложнить атаки методом перебора, после ввода неправильного код-пароля на экране блокировки временные задержки увеличиваются. Если параметр «Настройки» > «Touch ID и код-пароль» > «Стирать данные» включен, все данные на устройстве будут автоматически стерты после 10 неудачных попыток ввода код-пароля подряд. Эта функция также доступна при настройке политики администрирования через MDM и Exchange ActiveSync. Кроме того, можно установить более низкий порог ее срабатывания.

На устройствах с Secure Enclave за применение задержек отвечает сопроцессор Secure Enclave. Если в течение заданного времени задержки устройство перезапускается, задержка применяется еще раз, а таймер запускается заново.

Классы защиты данныхКогда программа создает новый файл на устройстве с iOS, она назначает ему класс. Каждый класс использует различные политики для определения условий доступа к данным. Основные классы и политики описаны в следующих разделах.

Полная защита(NSFileProtectionComplete). Ключ класса защищается с помощью ключа, полученного из код-пароля пользователя и UID устройства. Вскоре после того, как пользователь заблокирует устройство (через 10 секунд, если параметр «Запрос пароля» имеет значение «Сразу»), расшифрованный ключ класса удаляется, в результате чего все данные этого класса остаются недоступны, пока пользователь снова не введет код-пароль или не разблокирует устройство с помощью Touch ID или Face ID.

Рекомендации по код-паролямЕсли введен длинный пароль, содержащий только цифры, вместо полной клавиатуры на экране блокировки отображается цифровая клавиатура. При аналогичном уровне безопасности вводить более длинный цифровой код-пароль может быть проще, чем короткий буквенно-цифровой.

Задержки между попытками ввода код-пароляЧисло попыток Принудительная задержка1–4 нет5 1 минута6 5 минут7–8 15 минут9 1 час

Page 20: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

20Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Защищено, если не открыто(NSFileProtectionCompleteUnlessOpen). Иногда требуется записать определенные файлы, когда устройство заблокировано. В качестве примера можно привести загрузку почтового вложения в фоновом режиме. Такое действие становится возможным благодаря использованию асимметричной эллиптической криптографии (ECDH по Curve25519). Для защиты обычного ключа файла используется ключ, полученный в результате однопроходного согласования ключей Диффи-Хеллмана, как описано в документе NIST SP 800-56A.

Динамический общий ключ для согласования хранится вместе с защищенным ключом файла. В качестве KDF используется функция формирования ключа сцеплением (утвержденная альтернатива 1) согласно пункту 5.8.1 документа NIST SP 800-56A. AlgorithmID опускается. PartyUInfo и PartyVInfo — это динамический и статический общие ключи соответственно. В качестве функции хэширования используется SHA-256. Сразу после закрытия файла его ключ удаляется из памяти. Для повторного открытия файла снова создается общий ключ на основе личного ключа класса «Защищено, если не открыто» и динамического общего ключа; они используются для снятия защиты с ключа файла, который затем используется для дешифрования файла.

Защищено до первой аутентификации пользователя(NSFileProtectionCompleteUntilFirstUserAuthentication). Действие этого класса аналогично классу «Полная защита», однако расшифрованный ключ класса не удаляется из памяти при блокировке устройства. Защита этого класса похожа на шифрование дисков настольных систем и защищает данные от атак, которые используют перезагрузку устройства. Этот класс по умолчанию используется для всех программ сторонних разработчиков, которым не назначен класс защиты данных.

Без защиты(NSFileProtectionNone). Ключ этого класса защищен только с помощью UID и хранится в стираемом накопителе. Поскольку все ключи, необходимые для дешифрования файлов в этом классе, хранятся на устройстве, единственным преимуществом такого шифрования является возможность быстрого удаленного стирания. Даже если файлу не назначен класс защиты данных, он все равно хранится в зашифрованном виде (как и все данные на устройстве iOS).

Ключ класса защиты данныхКласс A Полная защита (NSFileProtectionComplete)

Класс B Защищено, если не открыто (NSFileProtectionCompleteUnlessOpen)

Класс C Защищено до первой (NSFileProtectionCompleteUntilFirstUserAuthentication)

аутентификации пользователя

Класс D Без защиты (NSFileProtectionNone)

Page 21: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

21Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Защита данных связки ключейМногим программам для работы необходимы пароли и другие короткие, но конфиденциальные фрагменты данных, например ключи и токены входа. Связка ключей iOS предоставляет безопасный способ хранения этих элементов.

Связка ключей реализована в виде базы данных SQLite, которая хранится в файловой системе. Существует только одна база данных, и демон securityd определяет, к каким элементам связки ключей может обращаться каждый процесс или программа. API доступа к связке ключей выдают вызовы демону, который запрашивает заданные для программы права «keychain-access-groups» (группы доступа к связке ключей), «application-identifier» (идентификатор программы) и «application-group» (группа программы). Группы доступа не ограничивают доступ одним процессом, а позволяют нескольким программам совместно использовать элементы связки ключей.

Элементы связки ключей могут использоваться совместно только программами одного и того же разработчика. Для этого программы сторонних разработчиков обязаны использовать группы доступа с префиксом, который был выделен им через программу Apple Developer Program путем распределения по группам программ. Для принудительного использования префиксов и уникальных групп программ используется подпись кода, профили обеспечения и программа Apple Developer Program.

Для защиты данных связки ключей используется структура классов, аналогичная структуре, используемой для защиты данных в файлах. Работа этих классов эквивалентна работе классов защиты данных в файлах, но эти классы используют отдельные ключи и входят в состав API с другими именами.

Доступность Защита данных в файлах Защита данных связки ключей

В разблокированном состоянии

NSFileProtectionComplete kSecAttrAccessibleWhenUnlocked

В заблокированном состоянии

NSFileProtectionCompleteUnlessOpen Недоступно

После первой разблокировки

NSFileProtectionCompleteUntilFirstUserAuthentication

kSecAttrAccessibleAfterFirstUnlock

Всегда NSFileProtectionNone kSecAttrAccessibleAlways

При включении код-пароля

Недоступно kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly

Если программа пользуется службами фонового обновления, она может использовать класс kSecAttrAccessibleAfterFirstUnlock для элементов связки ключей, которые необходимы во время фонового обновления.

Класс kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly работает так же, как и kSecAttrAccessibleWhenUnlocked, однако его можно использовать, только если на устройстве задан код-пароль. Элементы этого класса существуют только в системном хранилище ключей; они не синхронизируются со Связкой ключей iCloud и не включаются ни в резервные копии, ни в хранилища ключей службы

Компоненты элемента связки ключей

Помимо группы доступа, каждый элемент связки ключей содержит административные метаданные (такие как метки времени создания и последнего изменения).

Он также содержит хэши SHA-1 для атрибутов (таких как учетная запись и имя сервера), используемых при поиске элемента, чтобы можно было выполнять поиск без дешифрования каждого элемента. Наконец, он содержит данные по шифрованию, включая:• номер версии;• данные списка контроля доступа

(ACL);• значение, которое указывает

класс защиты элемента;• ключ элемента, защищенный с

помощью ключа класса защиты;• словарь атрибутов, описываю-

щих элемент (который передан в SecItemAdd); словарь закоди-рован как двоичный файл plist и зашифрован с помощью ключа элемента.

Шифрование выполняется по алгоритму AES 128 в режиме GCM (Галуа/счетчик); в состав атрибутов входит группа доступа, защищенная тегом GMAC, который вычисляется при шифровании.

Page 22: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

22Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Другие классы связки ключей имеют эквивалент «Только для этого устройства». При перемещении с устройства во время резервного копирования этот эквивалент защищается с помощью UID, что не позволяет восстановить его на другом устройстве.

Apple достигла отличного баланса между безопасностью и удобством, выбирая классы связки ключей в зависимости от типа защищаемой информации и от того, когда эта информация необходима операционной системе iOS. Например, VPN-сертификат должен быть доступен постоянно, поэтому устройство поддерживает постоянное подключение, но он классифицируется как «без возможности переноса», поэтому не может быть перемещен на другое устройство.

К элементам связки ключей, созданным iOS, применяются следующие классы защиты.

Элемент Доступность

Пароли Wi-Fi После первой разблокировки

Учетные записи Почты После первой разблокировки

Учетные записи Exchange После первой разблокировки

Пароли VPN После первой разблокировки

LDAP, CalDAV, CardDAV После первой разблокировки

Токены учетных записей социальных сетей После первой разблокировки

Ключи шифрования уведомлений Handoff После первой разблокировки

Токен iCloud После первой разблокировки

Пароль «Домашней коллекции» В разблокированном состоянии

Токен «Найти iPhone» Всегда

Автоответчик Всегда

Резервное копирование iTunes В разблокированном состоянии, без возможности переноса

Пароли Safari В разблокированном состоянии

Закладки Safari В разблокированном состоянии

Сертификаты VPN Всегда, без возможности переноса

Ключи Bluetooth® Всегда, без возможности переноса

Токен службы Apple Push Notification Всегда, без возможности переноса

Сертификаты и личный ключ iCloud Всегда, без возможности переноса

Ключи iMessage Всегда, без возможности переноса

Сертификаты и личные ключи, установленные профилем конфигурации

Всегда, без возможности переноса

PIN-код SIM-карты Всегда, без возможности переноса

Page 23: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

23Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Контроль доступа к связке ключей Для установки политик доступа и требований аутентификации связки ключей могут использовать списки контроля доступа (ACL). Элементы могут задавать условия, требующие участия пользователя, запрещая доступ до тех пор, пока пользователь не пройдет аутентификацию с помощью Touch ID или Face ID либо не введет код-пароль устройства. Можно также ограничить доступ к элементам, указав, что регистрация отпечатков пальцев в Touch ID или лица в Face ID не должна меняться с момента добавления элемента. Такое ограничение не позволит злоумышленнику добавить собственный отпечаток пальца, чтобы получить доступ к элементу связки ключей. Списки контроля доступа оцениваются внутри Secure Enclave и передаются ядру только при соблюдении заданных ограничений.

Page 24: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

24Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Доступ к паролям, сохраненным в SafariПрограммы iOS могут получать доступ к элементам связки ключей, сохраненным программой Safari для автозаполнения паролей, используя следующие два API:• SecRequestSharedWebCredential;

• SecAddSharedWebCredential.

Доступ предоставляется только в том случае, если разработчик программы, администратор веб-сайта и пользователь дали на это согласие. Разработчики программ выражают свое намерение использовать пароли, сохраненные в Safari, включая в свою программу соответствующие права. Список прав представляет собой список полных доменных имен соответствующих веб-сайтов. Веб-сайты должны разместить на своем сервере файл со списком уникальных идентификаторов разрешенных программ. При установке

учетные данные этой программе. Если система iOS пометила, что между веб-сайтом и программой существуют доверительные отношения, на панели QuickType также отображаются предлагаемые учетные данные для ввода в программе. Это дает пользователям возможность разрешать раскрытие учетных данных, сохраненных в Safari, программам с такой же историей безопасности, но без внедрения API в программы.

Хранилища ключейКлючи для классов защиты данных в файлах и связке ключей организованы в хранилища ключей. iOS использует следующие хранилища ключей: пользователь, устройство, резервное копирование, передача и резервное копирование iCloud.

Хранилище ключей пользователя — это место хранения защищенных ключей, используемых при нормальном функционировании устройства. Например, при вводе код-пароля выполняется загрузка ключа NSFileProtectionComplete из хранилища ключей пользователя и дешифрование ключа. Хранилище ключей представляет собой двоичный файл plist с классом «Без защиты», содержимое которого шифруется с помощью ключа, хранящегося в стираемом накопителе. Для повышения безопасности

программы с правом com.apple.developer.associated-domains операционная система iOS отправляет каждому из перечисленных в списке веб-сайтов TLS-запрос на путь /apple-app-site-association для получения файла. Если в файле указан идентификатор устанавливаемой программы, то iOS помечает, что между веб-сайтом и программой существуют доверительные отношения. Только при наличии доверительных отношений вызовы этих двух API приводят к выдаче запроса пользователю, который должен согласиться на передачу паролей программе, а также обновление или удаление паролей.

Пользователи iOS могут вводить сохраненные имена пользователей и пароли в полях для ввода учетных данных в программах, касаясь кнопки с изображением ключа на панели QuickType клавиатуры iOS. При этом используется аналогичный механизм apple-app-site-association mechanism для надежного связывания программ и веб-сайтов. Этот интерфейс не раскрывает программе никаких сведений об учетных данных, пока пользователь не разрешит раскрывать

Page 25: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

25Руководство по безопасности iOS — информационный документ | Январь 2018 г.

хранилищ ключей этот ключ стирается и генерируется снова каждый раз, когда пользователь меняет код-пароль. Расширение ядра AppleKeyStore управляет хранилищем ключей пользователя и может получать запросы относительно состояния блокировки устройства. Оно отвечает, что устройство разблокировано, только в том случае, если все ключи классов в хранилище ключей пользователя являются доступными и были успешно дешифрованы.

Хранилище ключей устройства предназначено для хранения защищенных ключей класса, используемых для выполнения операций с данными конкретного устройства. Общие устройства iOS иногда нуждаются в доступе к учетным данным до того, как какой-либо пользователь войдет в систему, поэтому необходимо хранилище ключей, не защищенное код-паролем пользователя. iOS не поддерживает криптографическое разделение файловой системы разных пользователей, то есть для защиты ключей файлов система будет использовать ключи класса из хранилища ключей устройства. Однако для защиты элементов связки ключей пользователя используются ключи класса из хранилища ключей пользователя. На устройствах iOS, настроенных для использования одним пользователем (это конфигурация по умолчанию), хранилище ключей устройства и хранилище ключей пользователя совпадают и защищаются с помощью код-пароля пользователя.

Хранилище ключей резервного копирования создается в тот момент, когда iTunes создает и сохраняет зашифрованную резервную копию на компьютере, который настроен для хранения резервных копий устройства. Новое хранилище ключей создается с новым набором ключей, и данные резервной копии повторно шифруются с использованием этих новых ключей. Как объяснялось выше, элементы связки ключей «без возможности переноса» остаются защищены ключом на основе UID; это позволяет восстанавливать их на исходном устройстве, но делает недоступными на другом устройстве.

Для защиты хранилища ключей используется заданный в iTunes пароль, к которому применено 10 миллионов итераций PBKDF2. Несмотря на большое количество итераций, привязка к определенному устройству отсутствует, поэтому, в принципе, на хранилище ключей резервного копирования может быть совершена атака методом перебора с участием большого числа компьютеров. Для ослабления этой угрозы необходимо использовать достаточно надежный пароль.

Если пользователь решает не шифровать резервные копии iTunes, файлы резервных копий не шифруются независимо от класса защиты данных, однако связка ключей остается защищена ключом на основе UID. Поэтому элементы связки ключей переносятся на новое устройство, только если установлен пароль резервного копирования.

Хранилище ключей передачи используется для синхронизации iTunes и MDM. Благодаря этому хранилищу ключей iTunes может выполнять резервное копирование и синхронизацию, не требуя ввода код-пароля пользователем, а система MDM может удаленно стирать код-пароль пользователя. Оно хранится на компьютере, который используется для синхронизации с iTunes, или в системе MDM, которая управляет устройством.

Page 26: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

26Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

В случае беспроводного обновления программного обеспечения пользователь получает запрос на ввод код-пароля при запуске обновления. Это нужно для безопасного создания одноразового токена разблокировки, который позволяет разблокировать хранилище ключей пользователя после обновления. Этот токен невозможно сгенерировать без ввода код-пароля пользователем, а все ранее созданные токены становятся недействительными, если код-пароль пользователя меняется.

Одноразовые токены разблокировки бывают двух типов и могут использоваться для установки обновлений программного обеспечения либо с участием пользователя, либо без его участия. Они шифруются с помощью ключа, полученного из текущего значения монотонного счетчика, работающего в Secure Enclave, UUID хранилища ключей и UID Secure Enclave.

При увеличении значения счетчика одноразовых токенов разблокировки в Secure Enclave все существующие токены становятся недействительными. Увеличение счетчика происходит при использовании токена, после первой разблокировки перезапущенного устройства, при отмене установки обновления программного обеспечения (как пользователем, так и системой), а также при истечении таймера действия токена.

Срок действия одноразового токена разблокировки для установки обновлений программного обеспечения при участии пользователя истекает через 20 минут. Такой токен экспортируется из Secure Enclave и записывается на стираемый накопитель. Таймер действия токена увеличивает значение счетчика, если устройство не перезагружалось в течение 20 минут.

При установке программного обеспечения без участия пользователя, которая начинается, если пользователь выберет вариант «Позже» в окне уведомления об обновлении, процессор программ может поддерживать одноразовый токен разблокировки в Secure Enclave в действительном состоянии до 8 часов. По прошествии этого времени таймер действия токена увеличит значение счетчика.

Хранилище ключей резервного копирования iCloud похоже на хранилище ключей резервного копирования. Все ключи классов в этом хранилище являются асимметричными (используют Curve25519, как класс «Защищено, если не открыто»), поэтому резервное копирование iCloud может выполняться в фоновом режиме. Для всех классов защиты данных, кроме «Без защиты», зашифрованные

Page 27: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

27Руководство по безопасности iOS — информационный документ | Январь 2018 г.

данные считываются с устройства и передаются в iCloud. Соответствующие ключи классов защищаются с помощью ключей iCloud. Ключи классов связки ключей защищаются с помощью ключа, полученного из UID, аналогично незашифрованным резервным копиям iTunes. Хранилище асимметричных ключей также используется для резервного копирования, необходимого для восстановлении Связки ключей iCloud.

Сертификаты и программы обеспечения безопасностиПримечание. Новейшая информация о сертификатах безопасности iOS, подтверждении безопасности продуктов и рекомендациях для iOS приведена в статье https://support.apple.com/ru-ru/HT202739.

Сертификаты ISO 27001 и 27018Apple получила сертификаты ISO 27001 и ISO 27018 на систему менеджмента информационной безопасности для инфраструктуры, процессов разработки и операций, используемых для поддержки следующих продуктов и услуг: Apple School Manager, iCloud, iMessage, FaceTime, управляемые Apple ID и iTunes U, согласно Заявлению о применимости (версия 2.1) от 11 июля 2017 г. Соответствие компании Apple стандарту ISO было заверено Британским институтом стандартов (BSI). Веб-сайт BSI имеет сертификаты соответствия ISO 27001 и ISO 27018. Для просмотра этих сертификатов перейдите по ссылке

https://www.bsigroup.com/ru-ru/our-services/certification/certificate-and-client-directory/search-results/?searchkey=company=apple&licencenumber=IS+649475

https://www.bsigroup.com/ru-ru/our-services/certification/certificate-and-client-directory/search-results/?searchkey=company=Apple&licencenumber=PII%20673269

Криптографическая проверка (FIPS 140-2)Криптографические модули, используемые в каждой версии iOS начиная с iOS 6, неоднократно проверялись на соответствие Федеральному стандарту обработки информации США (FIPS) 140-2, уровень 1. Согласно требованиям для основных выпусков, Apple отправляет модули в CMVP для повторной проверки при выпуске каждой новой версии операционной системы iOS. Эта инициатива подтверждает надежность криптографических операций в программах Apple и сторонних программах, которые надлежащим образом используют криптографические службы и одобренные алгоритмы iOS.

Сертификация по общим критериям (ISO 15408)Начиная с выпуска iOS 9, для каждого основного выпуска iOS компания Apple получает сертификаты в рамках Программы сертификации по общим критериям (CCC) для следующих компонентов:• профиль основной защиты мобильных устройств;• профиль защиты клиентов VPN IPSec;• расширенный комплект для агентов управления мобильными

устройствами;• расширенный комплект для клиентов беспроводной локальной сети.

Page 28: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

28Руководство по безопасности iOS — информационный документ | Январь 2018 г.

iOS 11 также имеет сертификаты для следующих компонентов:• профиль защиты прикладного программного обеспечения;• расширенный комплект для клиентов электронной почты; • расширенный комплект для веб-браузеров.

Apple планирует продолжать эту практику для всех следующих основных обновлений iOS. Apple принимала активное участие в работе Международного технического сообщества (ITC) по созданию отсутствующих на данный момент совместных профилей защиты, которые позволяли бы оценить ключевые технологии обеспечения безопасности мобильных устройств. Apple продолжает деятельность, направленную на получение и обновление сертификатов по новым и изменившимся существующим совместным профилям защиты (cPP).

Коммерческие решения для засекреченных сред (CSfC)Компания Apple также подала заявки на включение платформы iOS и различных служб в список программных компонентов коммерческих решений для засекреченных сред (CSfC). Когда платформы и службы Apple пройдут сертификацию по общим критериям, будут поданы заявки на их включение в список программных компонентов CSfC.

Актуальный список компонентов можно найти на веб-странице https://www.nsa.gov/resources/everyone/csfc/components-list/

Руководства по настройке обеспечения безопасностиКомпания Apple в сотрудничестве с правительственными учреждениями по всему миру разработала руководства с инструкциями и рекомендациями по повышению безопасности используемой среды. Этот процесс также известен как повышение защищенности устройства в опасной окружающей среде. В этих руководствах приводится конкретная проверенная информация о том, как настроить и использовать встроенные функции iOS для повышения безопасности.

Page 29: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

29Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Безопасность программ

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

По этой причине в iOS реализована многоуровневая система защиты для гарантии того, что программы подписаны и проверены, а также запускаются в так называемой «песочнице» для защиты пользовательских данных. Эти элементы создают стабильную, безопасную платформу для работы программ, позволяя тысячам разработчиков предлагать сотни тысяч программ для iOS без ущерба для целостности системы. А пользователи могут использовать эти программы на своих устройствах iOS, не опасаясь вирусов, вредоносных программ или других атак.

Подпись кода программПосле запуска ядро iOS определяет, какие процессы пользователей и программы могут быть запущены в системе. Чтобы гарантировать, что все программы получены из известного и утвержденного источника и не подделаны, iOS требует обязательного подписания всего исполняемого кода с помощью выпущенного компанией Apple сертификата. Установленные на устройстве программы, такие как Почта и Safari, подписаны Apple. Программы сторонних разработчиков также должны быть проверены и подписаны с помощью выпущенного компанией Apple сертификата. Обязательная подпись кода расширяет концепцию цепочки доверия с операционной системы на программы и не позволяет программам сторонних разработчиков загружать неподписанные фрагменты кода или использовать самомодифицирующийся код.

Для разработки и установки программ на устройствах iOS разработчики должны зарегистрироваться в Apple и присоединиться к программе Apple Developer Program. Перед выдачей сертификата компания Apple проверяет личность каждого разработчика, будь то частное лицо или компания, в реальном мире. Используя эти сертификаты, разработчики могут подписывать программы и отправлять их в App Store для распространения. В результате все программы в App Store отправляются идентифицированными людьми и организациями, что выступает в качестве сдерживающего фактора для создания вредоносных программ. Кроме того, все программы проверяются Apple для гарантии того, что они соответствуют своему описанию и не содержат явных ошибок или других проблем. Эта проверка дает пользователям дополнительную уверенность в качестве программ, которые они покупают.

Разработчики программ для iOS могут встраивать в свои программы различные структуры, используемые самой программой или встроенными в нее расширениями. Чтобы защитить систему и другие программы от загрузки стороннего кода в их адресное пространство, в момент загрузки система выполняет проверку подписи кода для

Page 30: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

30Руководство по безопасности iOS — информационный документ | Январь 2018 г.

всех динамических библиотек, на которые ссылается процесс. Эта проверка выполняется с помощью идентификатора команды, который извлекается из выпущенного компанией Apple сертификата. Идентификатор команды представляет собой десятизначную буквенно-цифровую строку, например 1A2B3C4D5F. Программа может ссылаться на любую библиотеку платформы, поставляемую вместе с системой, и любую библиотеку с таким же идентификатором команды в подписи кода, как у основного исполняемого модуля. Поскольку исполняемые модули, поставляемые с системой, не имеют идентификатора команды, они могут ссылаться только на библиотеки, которые также поставлялись с системой.

У компаний есть возможность разрабатывать корпоративные программы для внутреннего использования и распространять их среди своих сотрудников. Предприятия и организации могут подать заявку на участие в программе Apple Developer Enterprise Program (ADEP), указав свой номер D-U-N-S. Apple проверяет личность заявителей, их соответствие условиям программы и утверждает заявки. Став членом ADEP, организация может зарегистрироваться для получения профиля обеспечения, который разрешает запускать собственные программы компании на указанных в нем устройствах. Для запуска корпоративных программ у пользователей должен быть установлен профиль обеспечения. Благодаря этому только санкционированные организацией лица могут загружать программы на свои устройства iOS. Программы, установленные через MDM, считаются доверенными, поскольку отношения между организацией и устройством уже установлены. В противном случае, пользователям необходимо авторизовать профиль обеспечения программы в Настройках. Организации могут запретить пользователям авторизовать программы неизвестных разработчиков. При первом запуске любой корпоративной программы устройство должно получить подтверждение от Apple, что программу разрешено запускать.

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

Безопасность в процессе выполненияУбедившись, что программа получена из надежного источника, iOS применяет специальные средства безопасности для защиты других программ и остальной системы от взлома данной программой.

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

Page 31: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

31Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Системные файлы и ресурсы отделены от пользовательских программ. Большинство компонентов iOS, а также все программы сторонних разработчиков работают с правами непривилегированного «мобильного» пользователя. Весь раздел операционной системы подключен только для чтения. Системное программное обеспечение не содержит ненужных инструментов, таких как службы удаленного входа, а API не позволяют программам расширять свои полномочия для изменения других программ или самой iOS.

Для контроля доступа сторонних программ к информации пользователя и таким функциям, как iCloud и расширения, используется декларирование прав. Права — это пары значений ключей, которые зарегистрированы в программе и обеспечивают аутентификацию без привязки ко времени выполнения, аналогично идентификатору пользователя в UNIX. Поскольку права защищены цифровой подписью, их невозможно изменить. Системные программы и демоны широко используют права для выполнения конкретных привилегированных операций — в противном случае для их выполнения требовалось бы использовать корневые процессы. Это значительно снижает вероятность передачи прав взломанной системной программой или демоном.

Кроме того, программы могут выполнять фоновую обработку только через системные API. Это защищает систему от снижения производительности или значительного сокращения времени работы от аккумулятора во время работы программ.

Технология случайного расположения в адресном пространстве (ASLR) защищает от атак, связанных с использованием повреждения памяти. Встроенные программы задействуют ASLR для того, чтобы при запуске все регионы памяти располагались в случайном порядке. Случайное расположение в памяти исполняемого кода, системных библиотек и связанных с ними программных конструкций снижает вероятность многих сложных атак. Например, атака типа «возврат в библиотеку» пытается обманным образом вынудить устройство выполнить вредоносный код, манипулируя адресами стека и системных библиотек. Случайное размещение этих элементов значительно повышает сложность проведения атаки, особенно при атаке на несколько устройств. Xcode, среда разработки iOS, автоматически включает поддержку ASLR в программы сторонних разработчиков при их компиляции.

Функция Execute Never (XN) в iOS помечает страницы памяти как неисполняемые, обеспечивая дальнейшую защиту. Страницы памяти, помеченные как доступные для записи и исполняемые, могут использоваться только жестко контролируемыми программами: ядро проверяет наличие права динамического подписания кода, которое предоставляется только Apple. Даже при его наличии можно выполнить только один вызов mmap для запроса исполняемой и доступной для записи страницы, которой присваивается случайный адрес. Safari использует эту функцию в своем компиляторе JavaScript JIT.

РасширенияПрограммы в iOS могут предоставлять свои функции другим программам посредством расширений. Расширения — это специализированные подписанные исполняемые двоичные файлы,

Page 32: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

32Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Область системы, предназначенная для поддержки расширений, называется точкой расширения. Каждая точка расширения предоставляет API и обеспечивает применение политик в своей области. Система определяет доступные расширения на основе правил соответствия, заданных для конкретной точки расширения. Система автоматически запускает процессы расширений по мере необходимости и управляет их закрытием. Чтобы ограничить доступность расширений конкретной системной программе, можно использовать права. Например, виджет вида «Сегодня» отображается только в Центре уведомлений, а расширение экспорта доступно только на панели общего доступа. Точками расширения являются виджеты «Сегодня», экспорт, персональные действия, редактирование фотографий, поставщик документов и настраиваемая клавиатура.

Расширения работают в собственном адресном пространстве. Для обмена данными между расширением и программой, которая его запустила, используется межпроцессная связь при посредничестве системной структуры. У них нет доступа к файлам или адресному пространству друг друга. Расширения изолированы друг от друга, от содержащей их программы и от программ, которые их используют. Они исполняются в «песочнице», как любые другие программы сторонних разработчиков, а их контейнер отделен от контейнера содержащей их программы. Однако им доступны те же настройки конфиденциальности, как у программы-контейнера. Следовательно, если пользователь предоставил программе доступ к Контактам, этот доступ также получат расширения, встроенные в программу, но не получат расширения, запускаемые программой.

Настраиваемые клавиатуры являются особым типом расширений, поскольку они включаются пользователем сразу для всей системы. Если включено расширение клавиатуры, оно используется для всех текстовых полей, кроме поля код-пароля и любого поля секретного текста. Чтобы ограничить передачу данных пользователя, по умолчанию настраиваемые клавиатуры запускаются в «песочнице» с сильно ограниченными возможностями; эта «песочница» блокирует доступ к сети, к службам, которые выполняют сетевые операции от имени процесса, а также к интерфейсам API, которые могли бы позволить расширению извлекать вводимые данные. Разработчики настраиваемых клавиатур могут запросить для своего расширения открытый доступ, чтобы после получения согласия от пользователя система могла запускать расширение в «песочнице», используемой по умолчанию.

На устройствах, которые зарегистрированы в системе MDM, расширения для работы с документами и клавиатурами подчиняются правилам управления средой просмотра. Например, система MDM может запретить пользователю экспортировать документ из управляемой программы в неуправляемый поставщик документов или использовать неуправляемую клавиатуру в управляемой программе. Кроме того, разработчики программ могут запретить использование сторонних расширений клавиатур в своей программе.

Page 33: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

33Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Группы программПрограммы и расширения, принадлежащие учетной записи одного разработчика, могут совместно получать доступ к контенту, если они объединены в группу программ. Для этого разработчик должен создать подходящие группы на портале разработчиков Apple и включить в них необходимые программы и расширения. Программы, настроенные как часть группы программ, получают доступ к следующим данным:• общий контейнер на томе, используемый в качестве хранилища,

который остается на устройстве, пока на нем установлена хотя бы одна программа из группы;

• общие настройки;• общие элементы связки ключей.

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

Защита данных в программахКомплект разработчика ПО для iOS (SDK) предлагает полный набор API, которые упрощают внедрение технологии защиты данных для сторонних и корпоративных разработчиков, а также помогают им обеспечить высочайший уровень защиты в своих программах. Защита данных охватывает API для работы с файлами и базами данных, включая NSFileManager, CoreData, NSData и SQLite.

База данных программы «Почта» (включая вложения), управляемые книги, закладки Safari, изображения запуска программ и данные о местоположении также хранятся в зашифрованном виде, а ключ защищается с помощью установленного на устройстве код-пароля пользователя. Календарь (без вложений), Контакты, Напоминания, Заметки, Сообщения и Фото имеют класс защиты «Защищено до первой аутентификации пользователя».

Установленные пользователем программы, для которых не задан определенный класс защиты данных, по умолчанию получают класс «Защищено до первой аутентификации пользователя».

АксессуарыПрограмма лицензирования «Made for iPhone, iPad, and iPod touch» (MFi) предоставляет проверенным производителям аксессуаров доступ к протоколу iPod Accessories Protocol (iAP) и необходимым вспомогательным аппаратным компонентам.

Когда аксессуар MFi связывается с устройством iOS через разъем Lightning или через Bluetooth, устройство просит его подтвердить, что он авторизован компанией Apple. Аксессуар должен передать устройству предоставленный Apple сертификат, который проверяется устройством. Затем устройство направляет запрос, на который аксессуар должен отправить подписанный ответ. Вся процедура выполняется заказной интегральной микросхемой, которую компания Apple предоставляет утвержденным производителям аксессуаров, и незаметна для самого аксессуара.

Page 34: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

34Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Аксессуары могут запрашивать доступ к различным способам передачи и функциям, например, доступ к цифровым аудиопотокам через кабель Lightning или доступ к информации о местоположении по Bluetooth. Интегральная микросхема аутентификации гарантирует, что полный доступ к устройству получают только утвержденные аксессуары. Если аксессуар не поддерживает аутентификацию, его доступ ограничен аналоговым аудио и небольшим набором элементов управления воспроизведением через последовательный аудиопорт UART.

AirPlay также задействует интегральную микросхему аутентификации для подтверждения того, что приемники утверждены Apple. Аудиопоток AirPlay и видеопоток CarPlay используют протокол MFi-SAP (протокол сопоставления безопасности), который обеспечивает шифрование данных, передаваемых между аксессуаром и устройством, по алгоритму AES-128 в режиме CTR. Для обмена динамическими ключами используется алгоритм обмена ключами ECDH (Curve25519). Интегральная микросхема аутентификации подписывает ключи с помощью 1024-битного ключа RSA в рамках протокола Station-to-Station (STS).

HomeKitHomeKit предоставляет инфраструктуру «умного дома», которая использует функции безопасности iCloud и iOS для защиты и синхронизации личных данных без передачи этой информации в компанию Apple.

Идентификация в HomeKitИдентификация и защита в HomeKit реализованы на базе пар открытых и личных ключей. Устройство iOS генерирует пару ключей Ed25519 для каждого пользователя HomeKit, и эта пара ключей становится идентификатором пользователя в HomeKit. Он используется для аутентификации обмена данными между устройствами iOS, а также между устройствами iOS и аксессуарами.

Ключи хранятся в Связке ключей и добавляются только в зашифрованные резервные копии Связки ключей. Для синхронизации ключей между устройствами используется Связка ключей iCloud.

Связь с аксессуарами HomeKitАксессуары HomeKit генерируют собственные пары ключей Ed25519 для связи с устройствами iOS. При восстановлении заводских настроек аксессуара генерируется новая пара ключей.

Для установления связи между устройством iOS и аксессуаром HomeKit выполняется обмен ключами по 3072-битному протоколу Secure Remote Password: производитель аксессуара предоставляет восьмизначный цифровой код, который пользователь вводит на устройстве iOS; затем этот код шифруется по алгоритму ChaCha20-Poly1305 AEAD с использованием производных ключей HKDF-SHA-512. Во время настройки также выполняется проверка сертификата MFi устройства.

Если в процессе эксплуатации устройству iOS и аксессуару HomeKit необходимо обменяться данными, каждый из них проверяет подлинность второй стороны, используя ключи, которыми они обменялись ранее (см. выше). Каждый сеанс связи устанавливается с использованием протокола Station-to-Station и шифруется с

Page 35: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

35Руководство по безопасности iOS — информационный документ | Январь 2018 г.

использованием производных ключей HKDF-SHA-512, полученных из сеансовых ключей Curve25519. Этот метод применяется как для IP-аксессуаров, так и для аксессуаров стандарта Bluetooth Low Energy.

Локальное хранилищеДанные о домах, аксессуарах, сценариях и пользователях HomeKit хранятся на принадлежащем пользователю устройстве iOS. Эти данные шифруются с помощью ключей, полученных из ключей идентификации пользователя в HomeKit, а также случайного значения nonce. Кроме того, данные HomeKit имеют класс защиты данных «Защищено до первой аутентификации пользователя». Данные HomeKit включаются только в зашифрованные резервные копии, поэтому, например, незашифрованные резервные копии iTunes не содержат данных HomeKit.

Синхронизация данных между устройствами и пользователямиДля синхронизации данных HomeKit между принадлежащими пользователю устройствами iOS можно использовать iCloud и Связку ключей iCloud. В процессе синхронизации данные HomeKit шифруются с использованием ключей, полученных из идентификатора пользователя в HomeKit и случайного значения nonce. При синхронизации эти данные обрабатываются как непрозрачный объект. Самый последний объект сохраняется в iCloud исключительно для целей синхронизации. Поскольку он зашифрован с помощью ключей, доступ к которым возможен только на принадлежащих пользователю устройствах iOS, его содержимое недоступно при передаче и хранении в iCloud.

Данные HomeKit синхронизируются между различными пользователями одного «умного дома». Используемые при этом методы аутентификации и шифрования аналогичны методам, используемым для синхронизации между устройством iOS и аксессуаром HomeKit. Аутентификация выполняется на основе открытых ключей Ed25519, которыми обмениваются устройства при добавлении нового пользователя «умного дома». После добавления нового пользователя для аутентификации и шифрования всех дальнейших сеансов связи используется протокол Station-to-Station и сеансовые ключи.

Новых пользователей может добавлять тот пользователь, который изначально создал дом в HomeKit, а также другие пользователи с правами редактирования. Устройство владельца настраивает аксессуары с использованием открытого ключа нового пользователя для того, чтобы аксессуары могли проверять подлинность и принимать команды от нового пользователя. Когда нового пользователя добавляет пользователь с правами редактирования, этот процесс делегируется домашнему центру аксессуаров.

Процесс подготовки Apple TV для использования с HomeKit выполняется автоматически, когда пользователь входит в iCloud. Необходимо, чтобы для учетной записи iCloud была включена двухфакторная аутентификация. Apple TV и устройство владельца обмениваются временными открытыми ключами Ed25519 через iCloud. Если устройство владельца и Apple TV находятся в одной локальной сети, временные ключи используются для защиты соединения по локальной сети с использованием протокола Station-to-Station и сеансовых ключей. Используемые при этом методы

Page 36: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

36Руководство по безопасности iOS — информационный документ | Январь 2018 г.

аутентификации и шифрования аналогичны методам, используемым для синхронизации между устройством iOS и аксессуаром HomeKit. Устройство владельца передает по защищенному локальному подключению пары открытых и личных ключей Ed25519 пользователя на Apple TV. Эти ключи используются для защиты соединения между Apple TV и аксессуарами HomeKit, а также между Apple TV и другими устройствами iOS, входящими в состав дома HomeKit.

Если у пользователя только одно устройство и он не предоставил доступ к своему дому дополнительным пользователям, синхронизация данных HomeKit с iCloud не выполняется.

Домашние данные и программыДоступ программ к домашним данным регулируется настройками конфиденциальности пользователя. Когда программе необходимы домашние данные, пользователь получает запрос на предоставление доступа (аналогично доступу к Контактам, Фото и другим источникам данных iOS). Если пользователь дает разрешение, программа получает доступ к названиям комнат, названиям аксессуаров и распределению аксессуаров по комнатам, а также другой информации, которая подробно описана в документации разработчика HomeKit на веб-сайте https://developer.apple.com/homekit/.

HomeKit и Siri С помощью Siri можно отправлять запросы аксессуарам, управлять ими и включать сценарии. Siri получает минимальный объем анонимной информации о конфигурации дома, включая имена комнат, аксессуаров и сценариев, необходимые для распознавания команд. Аудиоданные, отправляемые в Siri, могут включать упоминания определенных аксессуаров или команд, но такие данные Siri не связываются с другими функциями Apple, такими как HomeKit. Подробнее см. «Siri» в разделе «Интернет-службы» данного документа.

IP-камеры HomeKitIP-камеры в комплекте HomeKit отправляют видео- и аудиопотоки напрямую на устройство iOS в локальной сети, имеющей доступ к потоку. Эти потоки шифруются с помощью случайно сгенерированных ключей на устройстве iOS и IP-камере. В ходе безопасного сеанса HomeKit эти данные отправляются на камеру. Когда устройство iOS не находится в локальной сети, зашифрованные потоки данных ретранслируются на устройство iOS через домашний концентратор. Он не расшифровывает потоки данных и служит только для ретрансляции данных между устройством iOS и IP-камерой. Когда какая-либо программа показывает пользователю видео с IP-камеры HomeKit, система HomeKit безопасно передает видеокадры из отдельного системного процесса, поэтому программа не может получить доступ к видеопотоку или сохранить его. Программам также не разрешено делать снимки экрана из этого потока.

Удаленный доступ к iCloud для аксессуаров HomeKitАксессуары HomeKit могут подключаться прямо к iCloud, чтобы устройства iOS могли управлять ими при отсутствии связи через Bluetooth или Wi-Fi.

Page 37: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

37Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Удаленный доступ к iCloud тщательно продуман, поэтому управление аксессуарами и отправку уведомлений можно выполнять, не передавая в Apple сведения о самих аксессуарах, командах и уведомлениях. HomeKit не передает данные о доме через удаленный доступ к iCloud.

Когда пользователь отправляет команду через удаленный доступ к iCloud, выполняется взаимная аутентификация аксессуара и устройства iOS, а данные шифруются с помощью той же процедуры, которая используется при локальном подключении. Все передаваемые данные зашифрованы и не видны компании Apple. В основе обращения через iCloud лежат идентификаторы iCloud, зарегистрированные в ходе настройки.

Подготовка аксессуаров, поддерживающих удаленный доступ к iCloud, выполняется в рамках процесса настройки аксессуара. Процесс подготовки начинается со входа пользователя в iCloud. Затем устройство iOS отправляет аксессуару запрос, который следует подписать с помощью сопроцессора аутентификации Apple, встроенного во все аксессуары, поддерживающие HomeKit. Кроме того, аксессуар генерирует ключи эллиптической кривой prime256v1, и открытый ключ отправляется на устройство iOS вместе с подписанным запросом и сертификатом X.509 сопроцессора аутентификации. Они используются для того, чтобы запросить для аксессуара сертификат с сервера подготовки iCloud. Аксессуар сохраняет сертификат, в котором не содержится никаких данных о самом аксессуаре, кроме того, что этому аксессуару разрешен удаленный доступ к iCloud HomeKit. Устройство iOS, выполняющее подготовку, также отправляет аксессуару пакет, содержащий URL-адреса и другую информацию, необходимую для подключения к серверу удаленного доступа iCloud. Эта информация не содержит каких-либо указаний на конкретного пользователя или аксессуар.

Каждый аксессуар регистрирует список разрешенных пользователей на сервере удаленного доступа к iCloud. Человек, добавивший данный аксессуар к домашней системе, предоставил этим пользователям возможность управлять аксессуаром. Сервер iCloud назначает пользователям идентификатор; кроме того, их можно сопоставить с учетными записями iCloud с целью доставки уведомлений и ответов от аксессуаров. Аксессуарам также назначаются идентификаторы iCloud, но эти идентификаторы являются непрозрачными и не раскрывают никакой информации о самих аксессуарах.

Когда аксессуар подключается к серверу удаленного доступа iCloud HomeKit, то предъявляет свой сертификат и пароль. Пароль выдается другим сервером iCloud и не содержит указаний на конкретный аксессуар. Когда аксессуар запрашивает пароль, то указывает в запросе своего производителя, модель и версию прошивки. Этот запрос не содержит информации, позволяющей идентифицировать пользователя или дом. В целях обеспечения конфиденциальности при подключении к серверу паролей аутентификация не выполняется.

Аксессуары подключаются к серверу удаленного доступа iCloud по протоколу HTTP/2 с шифрованием TLS версии 1.2 по стандартам AES-128-GCM и SHA-256. Аксессуар поддерживает подключение к серверу удаленного доступа iCloud открытым, чтобы получать входящие сообщения и отправлять ответы и исходящие уведомления на устройства iOS.

Page 38: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

38Руководство по безопасности iOS — информационный документ | Январь 2018 г.

SiriKitДля связи со сторонними программами Siri использует механизм расширений iOS. Хотя у Siri есть доступ к контактам iOS и информации о текущем местоположении устройства, прежде чем предоставлять эту информацию программе, Siri проверяет права доступа содержащей расширение программы и убеждается, что у нее есть право доступа к пользовательским данным, защищенным iOS. Siri передает расширению только тот фрагмент исходного запроса пользователя, который имеет к нему отношение. Например, если у программы нет доступа к контактам iOS, Siri не передаст ей, о ком говорится в запросе пользователя «Заплати моей маме 1000 рублей с помощью программы Payment». В этом случае программа расширения получит необработанный фрагмент запроса и увидит только слово «маме». Однако если у программы есть доступ к контактам iOS, она получит информацию о матери пользователя из контактов iOS. Если контакт упоминается в тексте сообщения, например «Напиши моей маме через программу "Сообщения", что мой брат круче всех», Siri не будет преобразовывать фразу «мой брат» независимо от TCC программы. Данные, представленные программой, могут быть переданы на сервер для того, чтобы Siri понимала лексику, которую пользователь может использовать в этой программе.

В таких случаях, как «Найди машину в <программе> до дома моей мамы», когда для выполнения запроса пользователя требуется информация о местонахождении из списка его контактов, Siri предоставляет эту информацию расширению программы только для выполнения данного запроса, независимо от прав доступа программы к контактам и данным о местонахождении.

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

HealthKitHealthKit с разрешения пользователя собирает и сохраняет данные от программ для здоровья и фитнеса. Кроме того, HealthKit напрямую взаимодействует с такими устройствами для спорта и здоровья, как совместимые пульсометры Bluetooth LE, и с сопроцессором движения, встроенным во многие устройства iOS.

МедданныеHealthKit сохраняет данные о здоровье пользователя, такие как рост, вес, пройденное расстояние, давление и т. д. Эти данные хранятся в системе защиты данных с классом «Полная защита», т. е. они становятся доступны только после того, как пользователь введет код-пароль или разблокирует устройство с помощью Touch ID или Face ID.

HealthKit также собирает управляющие данные, такие как таблицы доступа для программ, имена устройств, подключенных к HealthKit, а также расписания, используемые для запуска программ при появлении новых данных. Эти данные имеют класс защиты «Защищено до первой аутентификации пользователя».

Page 39: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

39Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Для хранения медицинских записей, полученных, пока устройство заблокировано (например, во время тренировки пользователя), используются временные файлы журналов. Эти файлы имеют класс защиты «Защищено, если не открыто». При разблокировании устройства временные файлы журналов импортируются в основные базы медданных, после чего удаляются.

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

Целостность данныхВместе с блоками данных в базе данных хранятся метаданные, которые позволяют отследить источник каждой записи. Эти метаданные включают идентификатор программы, которая сохранила запись. Кроме того, метаданные могут включать копию записи с цифровой подписью. Это позволяет обеспечить целостность записей, сгенерированных доверенным устройством. Формат хранения цифровой подписи использует синтаксис криптографических сообщений (CMS), заданный в IETF RFC 5652. 

Доступ программ сторонних разработчиковДоступ к API HealthKit контролируется с помощью прав. Кроме того, программы должны соблюдать ограничения по использованию данных. Например, программам запрещено использовать медданные для рекламных целей. Программы также должны содержать ссылку на политику конфиденциальности, в которой подробно описывается использование медданных.

Доступ программ к медданным регулируется настройками конфиденциальности пользователя. Когда программе необходим доступ к медданным, пользователь получает запрос на предоставление доступа (аналогично доступу к Контактам, Фото и другим источникам данных iOS). Однако в случае медданных программы получают доступ отдельно для чтения и записи, а также отдельно для каждого типа медданных. Пользователи могут просматривать и отзывать предоставленные ими разрешения на доступ к медданным, используя вкладку «Источники» в программе «Здоровье».

Если программам разрешено записывать данные, они также автоматически получают разрешение на чтение данных, которые они записали. Если программам разрешено считывать данные, они могут считывать данные, записанные всеми источниками. Однако программы не могут определить уровень доступа, предоставленного другим программам. Кроме того, программы не могут достоверно сообщить, разрешено ли им чтение медданных. Если у программы нет доступа для чтения, все запросы возвращают пустые ответы — точно такие же ответы вернула бы пустая база данных. Это не позволяет программам угадывать состояние здоровья пользователя, анализируя то, какие типы данных отслеживает пользователь.

Page 40: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

40Руководство по безопасности iOS — информационный документ | Январь 2018 г.

МедкартаПользователи программы «Здоровье» могут заполнить медкарту, указав информацию, которая может оказаться важной при оказании неотложной медицинской помощи. Эта информация вводится и обновляется вручную. Она не синхронизируется с информацией в базах медданных.

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

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

Запись фильмовПри записи фильмов используется многоуровневая система безопасности.• Диалоговое окно разрешений. Перед началом записи ReplayKit

отображает предупреждение, в котором пользователь должен подтвердить свое согласие на запись содержимого экрана, звука с микрофона и изображения с фронтальной камеры. Предупреждение отображается однократно в рамках одного процесса программы. Если программа остается в фоновом режиме более 8 минут, предупреждение отображается повторно. 

• Запись содержимого экрана и звука. Запись содержимого экрана и звука выполняется за пределами процесса программы — в демоне ReplayKit replayd. Это гарантирует, что процесс программы ни при каких условиях не сможет получить доступ к записанным материалам.

• Создание и хранение фильма. Файл фильма записывается в каталог, который доступен только подсистемам ReplayKit и не доступен никаким программам. Это предотвращает возможность использования записей третьими сторонами без согласия пользователя.

• Просмотр конечным пользователем и публикация. Пользователь может просмотреть и опубликовать фильм через интерфейс, предоставляемый ReplayKit. Интерфейс предоставляется отдельно от процесса через инфраструктуру расширений iOS и имеет доступ к полученному файлу фильма.

Page 41: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

41Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Прямая трансляция• Запись содержимого экрана и звука. Механизм записи

содержимого экрана и звука во время прямой трансляции идентичен записи видео; запись выполняется в демоне replayd.

• Расширения прямой трансляции. Чтобы службы сторонних разработчиков могли принимать участие в прямой трансляции ReplayKit, они должны создать два новых расширения с конечной точкой com.apple.broadcast-services:– расширение интерфейса пользователя, чтобы пользователь мог

настраивать прямую трансляцию;– расширение загрузки, которое будет обрабатывать загрузку

видео- и аудиоданных на внутренние серверы службы.

Такая архитектура гарантирует, что программы публикации не могут получить доступ к передаваемым материалам — доступ есть только у ReplayKit и расширений прямой трансляции сторонних разработчиков.• Инструмент выбора для прямой трансляции. Чтобы можно

было выбрать службу для ведения прямой трансляции, ReplayKit предоставляет контроллер вида (аналогичный UIActivityViewController), который разработчик может встроить в свою программу. Контроллер вида реализуется с помощью UIRemoteViewController SPI и является расширением в рамках структуры ReplayKit. Он существует отдельно от процесса программы публикации.

• Расширение загрузки. Расширение загрузки, реализуемое сторонними службами прямой трансляции для обработки видео- и аудиоматериалов во время эфирного вещания, может получать материалы одним из двух способов по своему выбору: – небольшие закодированные клипы MP4;– буферы необработанных незакодированных фрагментов.

• Работа с клипами MP4. В данном режиме replayd создает небольшие закодированные клипы MP4, которые хранятся в скрытом месте, доступном только подсистемам ReplayKit. После создания клипа replayd передает его местоположение стороннему расширению загрузки через SPI запроса NSExtension (на основе XPC). Кроме того, replayd генерирует одноразовый токен «песочницы», который также передается расширению загрузки и предоставляет ему доступ к определенному клипу во время действия запроса расширения.

• Работа с буфером фрагментов. В этом режиме видео- и аудиоданные преобразуются в последовательную форму и передаются стороннему расширению загрузки в реальном времени через прямое соединение XPC. Кодирование данных выполняется следующим образом: объект IOSurface извлекается из буфера видеофрагментов, надежно кодируется как объект XPC, пересылается стороннему расширению через XPC, а затем снова декодируется в объект IOSurface.

Page 42: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

42Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Секретные заметкиВ программе «Заметки» есть функция «Секретные заметки», позволяющая защитить содержимое определенных заметок. Секретные заметки шифруются с помощью придуманного пользователем пароля, который необходим для просмотра заметок в iOS, macOS и на веб-сайте iCloud.

Когда пользователь засекречивает заметку, создается 16-байтный ключ на основе введенного им пароля с использованием алгоритма PBKDF2 и SHA-256. Содержимое заметки шифруется по методу AES-GCM. В CoreData и CloudKit создаются новые записи для хранения зашифрованной заметки, тега и вектора инициализации, а исходные записи заметки удаляются; зашифрованные данные не заменяют собой старые данные. Вложения шифруются аналогичным образом. Поддерживаются следующие вложения: изображения, зарисовки, таблицы, карты и веб-сайты. Заметки, содержащие другие типы вложений, нельзя зашифровать, а неподдерживаемые вложения нельзя добавить в секретные заметки.

Когда пользователь вводит пароль для просмотра или создания секретной заметки, программа «Заметки» запускает безопасный сеанс. Пока запущен безопасный сеанс, пользователю не нужно вводить пароль либо использовать Touch ID или Face ID для просмотра или защиты других заметок. Однако, если некоторые заметки защищены с помощью другого пароля, безопасный сеанс на них не распространяется. Безопасный сеанс прекращается, если:• пользователь касается кнопки «Заблокировать» в программе

«Заметки»;• программа «Заметки» находится в фоновом режиме более трех

минут;• устройство блокируется.

Если пользователь забыл пароль, но на его устройстве включен датчик Touch ID или Face ID, то он по-прежнему сможет просматривать секретные заметки или защищать дополнительные заметки. Кроме того, после трех неудачных попыток ввода пароля программа «Заметки» покажет подсказку, заданную пользователем. Чтобы изменить текущий пароль, его необходимо знать.

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

Общие заметкиМожно предоставить доступ к заметкам другим пользователям. К общим заметкам не применяется сквозное шифрование. Для любого текста и вложений, добавляемых пользователем в заметку, Apple использует тип зашифрованных данных CloudKit. Ресурсы всегда шифруются ключом, зашифрованным в CKRecord. Метаданные, например даты создания и изменения, не шифруются. CloudKit управляет процессом, используя который участники могут шифровать и дешифровать принадлежащие друг другу данные.

Page 43: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

43Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Apple WatchApple Watch использует встроенные функции и технологии безопасности iOS для защиты данных на устройстве, а также для защиты связи с подключенным iPhone и Интернетом. Сюда входят такие технологии, как система защиты данных и контроль доступа к связке ключей. Для создания ключей шифрования код-пароль пользователя привязывается к UID устройства.

Для обмена открытыми ключами, а затем общим ключом канала BTLE при создании пары между Apple Watch и iPhone используется отдельное соединение. На экране Apple Watch отображается анимированный рисунок, который необходимо считать с помощью камеры iPhone. Этот рисунок содержит зашифрованный ключ, используемый для создания пары между устройствами по отдельному каналу BTLE 4.1. При необходимости в качестве резервного способа создания пары используется стандартный ввод ключа доступа BTLE.

После установления сеанса BTLE устройства Apple Watch и iPhone обмениваются ключами, используя адаптированную процедуру IDS (см. раздел «iMessage» данного документа). После обмена ключами ключ сеанса Bluetooth удаляется, и весь обмен информацией между Apple Watch и iPhone шифруется с помощью IDS. При этом второй уровень шифрования обеспечивают зашифрованные каналы Bluetooth, Wi-Fi и сотовой сети. Чтобы ограничить период уязвимости в случае взлома трафика, каждые 15 минут происходит смена ключей.

Для поддержки программ, которым требуется потоковая передача данных, шифрование выполняется с помощью методов, описанных в подразделе «FaceTime» раздела «Интернет-службы» данного документа, и службы IDS, предоставляемой подключенным iPhone или прямым подключением к Интернету.

В Apple Watch реализовано хранилище с аппаратным шифрованием, а также защита файлов и элементов связки ключей на основе классов, как описано в разделе «Шифрование и защита данных» этого документа. Для элементов связки ключей также используются хранилища ключей с контролируемым доступом. Для защиты ключей, используемых для связи между часами и iPhone, также применяется защита на основе классов.

Если Apple Watch находятся вне зоны действия Bluetooth, можно использовать Wi-Fi или сотовые данные. Apple Watch не могут подключиться к сетям Wi-Fi, если на подключенном iPhone отсутствуют учетные данные для такого доступа (которые должны быть заранее синхронизированы на Apple Watch). Если Apple Watch находятся вдали от iPhone, новые учетные данные с iPhone не передаются на Apple Watch.

Apple Watch можно заблокировать вручную, нажав и удерживая боковую кнопку. Также вскоре после того, как часы сняты с запястья, эвристическая система анализа движения распознает это, и устройство автоматически блокируется. Когда Apple Watch заблокированы, Apple Pay можно использовать только посредством ввода кода часов. Распознавание запястья можно отключить с помощью программы Apple Watch на iPhone. Эту настройку также можно контролировать через систему MDM.

Page 44: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

44Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Если часы надеты на запястье, подключенный iPhone может их разблокировать. Для этого устанавливается соединение, подлинность которого подтверждается ключами, заданными при создании пары. iPhone отправляет на часы ключ, который они используют для разблокировки своих ключей защиты данных. Код часов неизвестен iPhone и не передается за пределы устройства. Эту функцию можно отключить с помощью программы Apple Watch на iPhone.

Apple Watch могут быть объединены в пару одновременно только с одним iPhone. При разрыве пары iPhone передает инструкции для удаления всех материалов и данных с Apple Watch.

При включении функции «Найти iPhone» на iPhone, с которым создана пара, можно также включить блокировку активации на Apple Watch. Блокировка активации усложняет использование или продажу Apple Watch в случае их потери или кражи. После включения блокировки активации для разрыва пары, стирания или повторной активации Apple Watch необходимо ввести Apple ID и пароль пользователя.

Page 45: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

45Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Безопасность сети

Помимо встроенных средств, используемых Apple для защиты данных на устройствах iOS, организации могут принять целый ряд мер сетевой безопасности для защиты информации при передаче между устройством iOS и другими устройствами и сайтами.

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

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

TLSСистема iOS поддерживает Transport Layer Security (TLS версий 1.0, 1.1 и 1.2) и DTLS. Она поддерживает AES-128 и AES-256, предпочитая наборы шифров с совершенной прямой секретностью. Safari, Календарь, Почта и другие интернет-программы автоматически используют этот протокол для установления зашифрованного канала связи между устройством и сетевыми службами. Высокоуровневые API (такие как CFNetwork) упрощают внедрение TLS в программах сторонних разработчиков, а низкоуровневые API (SecureTransport) предоставляют детальный контроль. CFNetwork не разрешает использовать SSL версии 3, и программам, использующим WebKit (например, Safari), запрещается устанавливать подключения с использованием SSL версии 3.

В iOS 11 и macOS High Sierra сертификаты SHA-1 нельзя использовать для TLS-соединений, если им не доверяет пользователь. Также не разрешены сертификаты с ключами RSA короче 2048 бит. Набор симметричных шифров RC4 в  iOS 10 и macOS Sierra считается устаревшим. По умолчанию клиенты и серверы TLS, реализованные с использованием API SecureTransport, не имеют наборов шифров RC4 (их поддержка отключена) и не могут установить соединение, если единственным доступным набором шифров является RC4. Для повышения безопасности необходимо обновить службы и программы, требующие использования RC4, чтобы в них использовались современные, безопасные наборы шифров.

Page 46: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

46Руководство по безопасности iOS — информационный документ | Январь 2018 г.

App Transport SecurityПротокол App Transport Security предоставляет используемые по умолчанию требования к подключению, чтобы программы работали с защищенными подключениями при использовании API NSURLConnection, CFURL и NSURLSession. По умолчанию протокол App Transport Security ограничивает возможность выбора шифра только теми наборами, которые обеспечивают прямую секретность, в частности ECDHE_ECDSA_AES и ECDHE_RSA_AES в режиме GCM или CBC. Программы могут отключить требование обязательной прямой секретности на уровне домена; в этом случае к набору доступных шифров добавляется RSA_AES.

Серверы должны поддерживать TLS версии 1.2 и прямую секретность, а сертификаты должны быть действительны и подписаны с использованием шифрования SHA-256 (или более сложного) с ключом уровнем не ниже, чем 2048-битный ключ RSA или 256-битный ключ эллиптической кривой.

Сетевые подключения, не отвечающие этим требованиям, будут прерваны, если только в программе не предусмотрен обход протокола App Transport Security. Использование недействительных сертификатов всегда приводит к постоянному отказу и отсутствию подключения. Протокол App Transport Security автоматически применяется для программ, скомпилированных для iOS 9 или новее.

VPNБезопасные сетевые службы, такие как виртуальные частные сети, обычно требуют минимальной настройки и конфигурирования для работы с устройствами iOS. Устройства iOS могут работать с VPN-серверами, которые поддерживают следующие протоколы и способы аутентификации:• IKEv2/IPSec с аутентификацией по общему ключу, сертификатам

RSA, сертификатам ECDSA, EAP-MSCHAPv2 или EAP-TLS;• SSL-VPN с использованием соответствующей клиентской программы

из App Store;• Cisco IPSec с аутентификацией пользователя по паролю, RSA SecurID

или CRYPTOCard, а также автоматической аутентификацией с помощью общего ключа и сертификатов;

• L2TP/IPSec с аутентификацией пользователя по паролю MS-CHAPV2, RSA SecurID или CRYPTOCard, а также автоматической аутентификацией с помощью общего ключа.

iOS поддерживает следующее:• Функцию «VPN по запросу» для сетей, в которых аутентификация

выполняется на основе сертификатов. Для указания доменов, требующих VPN-подключения, в ИТ-политиках используется профиль конфигурации.

• Раздельное подключение программ к VPN, которое повышает детализацию установления VPN-соединений. Система MDM позволяет настроить подключение для каждой управляемой программы и конкретных доменов в Safari. Это помогает гарантировать, что защищенные данные не выйдут за пределы корпоративной сети, а личные данные пользователя в нее не попадут.

Page 47: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

47Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• Функцию «VPN всегда включена», которая может быть настроена для устройств, управляемых через MDM и контролируемых с помощью Apple Configurator 2, Программы регистрации устройств или Apple School Manager. Эта функция избавляет пользователей от необходимости включать VPN для обеспечения защиты при подключении к сетям сотовой связи или Wi-Fi. Функция «VPN всегда включена» предоставляет организации полный контроль над трафиком устройства благодаря туннелированию всего IP-трафика обратно в организацию. По умолчанию в качестве протокола туннелирования используется IKEv2, который обеспечивает передачу трафика с шифрованием данных. Организация может контролировать и фильтровать входящий и исходящий трафик своих устройств, защитить данные в сети и ограничить доступ устройств к Интернету.

Wi-Fi iOS поддерживает стандартные протоколы Wi-Fi, включая WPA2 Enterprise, для обеспечения авторизованного доступа к корпоративным сетям Wi-Fi. Стандарт WPA2 Enterprise использует 128-битное шифрование AES, гарантируя максимальный уровень защиты при отправке или получении пользовательских данных по сети Wi-Fi. Благодаря поддержке 802.1X устройства iOS можно интегрировать в широкий набор сред, где используется аутентификация RADIUS. Поддерживаемые на iPhone и iPad беспроводные методы аутентификации 802.1X включают EAP-TLS, EAP-TTLS, EAP-FAST, EAP-SIM, PEAPv0, PEAPv1 и LEAP.

Помимо защиты данных, iOS распространяет уровень защиты WPA2 на одноадресные и многоадресные кадры управления, используя для этого службу защищенных кадров управления (PMF), о которой говорится в стандарте 802.11w. Поддержка PMF доступна на iPhone 6 и iPad Air 2, а также более новых моделях.

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

Кроме того, если устройство не связано с сетью Wi-Fi и его процессор находится в режиме сна, iOS также выполняет расширенные проверки предпочитаемой сети для выгрузки данных (ePNO), используя случайный MAC-адрес. Проверки ePNO выполняются, когда устройство использует службы геолокации для программ, использующих геозоны, например, для выдачи напоминаний при приближении устройства к определенному местоположению.

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

Page 48: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

48Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Wi-Fi операционная система iOS использует случайный MAC-адрес и что ни Apple, ни производители не могут предсказать эти случайные MAC-адреса. Использование случайных MAC-адресов для Wi-Fi не поддерживается на iPhone 4s и более ранних моделях.

На iPhone 6s или новее скрытое свойство известной сети Wi-Fi определяется и обновляется автоматически. Если выполняется широковещательная передача идентификатора набора служб (SSID) сети Wi-Fi, устройство iOS не включает SSID в пробный запрос. Это предотвращает широковещательную передачу имен не скрытых сетей устройством.

Чтобы защитить устройство от уязвимостей в прошивке сетевого процессора, доступ сетевых интерфейсов (в том числе Wi-Fi и радиомодуля) к памяти процессора программ ограничен. Когда для соединения с сетевым процессором используется USB или SDIO, сетевой процессор не может инициировать транзакции прямого доступа к памяти процессора программ. Когда используется PCIe, каждый из сетевых процессоров подключен к собственной изолированной шине PCIe. Блок IOMMU на каждой шине PCIe ограничивает прямой доступ сетевого процессора к страницам памяти, содержащим его сетевые пакеты или управляющие структуры.

BluetoothПоддержка Bluetooth в iOS реализована таким образом, чтобы обеспечить предоставление полезных функций без излишнего доступа к конфиденциальным данным. При установлении соединения устройства iOS поддерживают режим шифрования 3, режим безопасности 4 и уровень обслуживания 1. iOS поддерживает следующие профили Bluetooth:• профиль громкой связи (HFP 1.5);• профиль доступа к телефонной книге (PBAP);• профиль доступа к сообщениям (MAP);• профиль расширенного распределения звука (A2DP);• профиль дистанционного управления аудио/видео (AVRCP);• профиль личной сети (PAN);• профиль устройства взаимодействия с пользователем (HID).• Поддержка этих профилей зависит от устройства.

Для получения дополнительной информации посетите веб-страницуhttps://support.apple.com/ru-ru/ht3647.

Единый входiOS поддерживает аутентификацию в корпоративных сетях посредством единого входа в систему (SSO). Технология SSO работает с сетями на основе протокола Kerberos, обеспечивая аутентификацию пользователей в службах, к которым у них есть доступ. SSO можно использовать для целого ряда различных сетевых операций, начиная с безопасных сеансов Safari и заканчивая программами сторонних разработчиков. Также поддерживается аутентификация на основе сертификатов (PKINIT).

Page 49: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

49Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Для взаимодействия со шлюзами аутентификации на основе Kerberos и системами встроенной аутентификации Windows, которые поддерживают билеты Kerberos, технология SSO в iOS использует токены SPNEGO и протокол HTTP Negotiate. Поддержка SSO основана на проекте с открытым кодом Heimdal.

Поддерживаются следующие типы шифрования:• AES128-CTS-HMAC-SHA1-96;• AES256-CTS-HMAC-SHA1-96;• DES3-CBC-SHA1;• ARCFOUR-HMAC-MD5.

Safari поддерживает SSO. Кроме того, на использование этой технологии можно настроить программы сторонних разработчиков, которые используют стандартные сетевые API в iOS. Для конфигурирования SSO в iOS используется компонент профиля конфигурации, позволяющий системам MDM передавать необходимые настройки на устройства. Сюда входит настройка главного имени пользователя (которым является учетная запись пользователя Active Directory) и настройки сфер Kerberos, а также настройка программ и веб-адресов Safari, которым разрешено использовать SSO.

Безопасность AirDropУстройства iOS, поддерживающие AirDrop, отправляют файлы и информацию на находящиеся поблизости устройства, включая компьютеры Mac с поддержкой AirDrop и операционной системой OS X 10.11 или новее, при помощи технологии Bluetooth Low Energy (BLE) и разработанной компанией Apple технологии прямого соединения Wi-Fi. Для прямого обмена информацией между устройствами используется радиосвязь Wi-Fi — подключение к Интернету или точке доступа Wi-Fi не требуется.

Когда пользователь включает AirDrop, на устройстве сохраняется 2048-битный идентификатор RSA. Кроме того, создается хэш идентификатора AirDrop на основе адреса электронной почты и номеров телефона, связанных с Apple ID пользователя.

Когда пользователь использует AirDrop для экспорта элемента, устройство отправляет сигнал AirDrop по каналу Bluetooth Low Energy. Если поблизости есть другие устройства, которые не находятся в режиме сна и на которых включена функция AirDrop, они распознают сигнал и отвечают на него, используя сокращенную версию хэша идентификатора своего владельца.

По умолчанию функция AirDrop настроена на предоставление доступа «Только для контактов». Пользователи также могут настроить AirDrop на доступ «Для всех» или полностью отключить эту функцию. В режиме «Только для контактов» полученные хэши идентификаторов сравниваются с хэшами пользователей в программе «Контакты» на устройстве инициатора. При обнаружении совпадения передающее устройство создает одноранговую сеть Wi-Fi и оповещает об установлении соединения AirDrop, используя Bonjour. Используя это соединение, принимающие устройства отправляют инициатору полные хэши своих идентификаторов. Если в программе «Контакты» найдено совпадение для полного хэша, в списке общего доступа AirDrop отображается имя получателя и его фотография (при ее наличии в программе «Контакты»).

Page 50: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

50Руководство по безопасности iOS — информационный документ | Январь 2018 г.

При использовании AirDrop отправитель должен выбрать пользователя, которому он хочет передать файлы. Передающее устройство инициирует зашифрованное TLS-соединение с принимающим устройством, для чего устройства обмениваются сертификатами удостоверения iCloud. Удостоверение в сертификатах проверяется по программе «Контакты» каждого пользователя. Затем получатель должен принять запрос на входящую передачу от указанного пользователя или устройства. Если выбрано несколько получателей, этот процесс повторяется на каждом целевом устройстве.

В режиме «Для всех» используется аналогичная процедура, однако если в программе «Контакты» не найдено совпадения, в списке общего доступа AirDrop на принимающих устройствах отображается силуэт человека и имя устройства, заданное в поле «Настройки» > «Основные» > «Об устройстве» > «Имя».

Организации могут запретить использование AirDrop на устройствах или в программах, управляемых с помощью системы MDM.

Предоставление паролей к Wi-FiУстройства iOS, поддерживающие предоставление паролей к Wi-Fi, используют механизм, аналогичный AirDrop, для отправки пароля к Wi-Fi между устройствами.

Когда пользователь выбирает сеть Wi-Fi (запрашивающая сторона) или пользователю предлагается ввести пароль к Wi-Fi, устройство Apple начинает оповещение Bluetooth Low Energy с указанием на то, что ему требуется пароль к Wi-Fi. Другие устройства Apple, находящиеся поблизости, не находящиеся в режиме сна и располагающие паролем к выбранной сети Wi-Fi, подключаются к запрашивающему устройству через Bluetooth Low Energy.

Устройство, располагающее паролем к Wi-Fi (предоставляющая сторона), требует контактную информацию запрашивающей стороны. Запрашивающая сторона должна предоставить свой идентификатор, используя механизм, аналогичный AirDrop. После подтверждения идентификатора предоставляющая сторона отправляет запрашивающей стороне PSK из 64 символов, который также может использоваться для подключения к сети.

Организации могут запретить предоставление паролей к Wi-Fi на устройствах или в программах, управляемых с помощью системы MDM.

Page 51: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

51Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Apple Pay

Технология Apple Pay позволяет пользователям поддерживаемых устройств iOS и Apple Watch легко, безопасно и конфиденциально оплачивать покупки в магазинах, программах и на веб-сайтах через Safari. Для пользователей это удобно, а защита, встроенная как в аппаратное, так и в программное обеспечение, гарантирует безопасность.

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

Компоненты Apple PaySecure Element. Secure Element представляет собой стандартную сертифицированную микросхему, работающую на платформе Java Card и совместимую с требованиями финансовой отрасли к электронным платежам.

Контроллер NFC. Контроллер NFC обрабатывает протоколы ближней бесконтактной связи и маршрутизирует данные, передаваемые между процессором программ и Secure Element, а также между Secure Element и терминалом, установленным в точке продажи.

Wallet. Программа Wallet позволяет добавлять кредитные, дебетовые, скидочные и магазинные карты, управлять ими и совершать платежи через Apple Pay. В Wallet пользователи могут просматривать свои карты и дополнительную информацию об их эмитентах, действующих политиках конфиденциальности, недавних транзакциях и многом другом. Кроме того, пользователи могут добавлять карты в Apple Pay через Настройки и Ассистент настройки.

Secure Enclave. Secure Enclave на iPhone, iPad и Apple Watch управляет процессом аутентификации и позволяет продолжить выполнение процесса оплаты.

В случае с Apple Watch устройство должно быть разблокировано, а пользователь должен дважды нажать боковую кнопку. Информация об обнаружении двойного нажатия передается напрямую в Secure Element или Secure Enclave (при его наличии), не проходя через процессор программ.

Серверы Apple Pay. Серверы Apple Pay управляют настройкой и подготовкой кредитных и дебетовых карт в Wallet и учетными номерами устройств, хранящимися в Secure Element. Эти серверы взаимодействуют как с устройством, так и с серверами платежной сети. Кроме того, серверы Apple Pay отвечают за повторное шифрование платежных учетных данных при оплате в программах.

Page 52: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

52Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Как в Apple Pay используется Secure ElementВ Secure Element хранится специально разработанный апплет для управления Apple Pay. Также в нем хранятся платежные апплеты, сертифицированные платежными сетями. Данные кредитной, дебетовой или предоплаченной карты отправляются из платежной сети или от эмитента карты этим апплетам — при этом данные зашифрованы с помощью ключей, известных только платежной сети и домену безопасности платежных апплетов. Эти данные хранятся в платежных апплетах и защищаются функциями обеспечения безопасности Secure Element. Во время транзакции терминал взаимодействует непосредственно с Secure Element по специальной аппаратной шине с помощью контроллера NFC.

Как в Apple Pay используется контроллер NFCКонтроллер NFC выступает в качестве пункта доступа к Secure Element и гарантирует, что все бесконтактные транзакции выполняются с использованием терминала, установленного в точке продажи и находящегося в непосредственной близости от устройства. Только запросы на оплату, поступающие от терминала на месте эксплуатации, отмечаются контроллером NFC как бесконтактные транзакции.

После того как владелец карты авторизует транзакцию с помощью Touch ID или кода либо путем двойного нажатия боковой кнопки на заблокированных Apple Watch, бесконтактные ответы, подготовленные платежными апплетами в Secure Element, будут эксклюзивно переданы контроллером в область действия NFC. Следовательно, данные авторизации оплаты для бесконтактных транзакций остаются в локальной области действия NFC и не раскрываются процессору программ. При оплате покупок внутри программ и на веб-сайтах данные авторизации оплаты, наоборот, передаются в процессор программ и только после шифрования Secure Element — на сервер Apple Pay.

Подготовка кредитных, дебетовых и предоплаченных картКогда пользователь добавляет кредитную, дебетовую или предоплаченную карту (в том числе магазинные карты) в Apple Pay, компания Apple безопасно отправляет эмитенту карты или авторизованному им поставщику услуг информацию об этой карте вместе с другими сведениями об учетной записи пользователя и устройстве. Используя эту информацию, эмитент карты решает, разрешить ли добавление карты в Apple Pay.

В рамках процесса подготовки карты Apple Pay использует три вызова со стороны сервера для отправки и получения данных от эмитента карты или из сети: Required Fields, Check Card и Link and Provision («Обязательные поля», «Проверка карты» и «Привязка и подготовка»). Эмитент карты или сеть используют эти вызовы для проверки, утверждения и добавления карт в Apple Pay. Эти клиент-серверные сеансы связи шифруются с использованием TLS версии 1.2.

Полные номера карт не хранятся ни на устройстве, ни на серверах Apple. Вместо этого создается учетный номер устройства, который шифруется и сохраняется в Secure Element. Учетный номер устройства

Page 53: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

53Руководство по безопасности iOS — информационный документ | Январь 2018 г.

шифруется таким образом, что у Apple нет к нему доступа. Каждый учетный номер устройства уникален и отличается от обычных номеров кредитных и дебетовых карт. Эмитент карты может запретить его использование при физическом проведении картой с магнитной полосой, по телефону или на веб-сайтах. Учетный номер устройства в Secure Element изолирован от iOS и watchOS, не хранится на серверах Apple, и его резервная копия не создается в iCloud.

Подготовка карт, используемых с Apple Watch для Apple Pay, выполняется с помощью программы Apple Watch на iPhone. Чтобы подготовить карту для Apple Watch, необходимо, чтобы часы находились в зоне действия Bluetooth. Картам, зарегистрированным специально для использования с Apple Watch, назначаются собственные учетные номера устройства, которые хранятся в Secure Element на Apple Watch. Подготовить кредитную, дебетовую или предоплаченную карту для использования в Apple Pay можно тремя способами:• добавление карты в Apple Pay вручную;• добавление в Apple Pay кредитных или дебетовых карт,

зарегистрированных в учетной записи iTunes Store;• добавление кредитных или дебетовых карт из программы эмитента

карты.

Добавление кредитной или дебетовой карты в Apple Pay вручнуюЧтобы вручную добавить карту, в том числе магазинную, в процессе подготовки необходимо указать имя владельца, номер кредитной карты, срок окончания ее действия и код CVV. Пользователи могут сфотографировать карту камерой устройства или ввести эти данные в Настройках, программе Wallet или программе Apple Watch. После съемки данных карты с помощью камеры Apple пытается заполнить поля имени владельца, номера карты и срока окончания ее действия. Фотоснимок не сохраняется на устройстве или в медиатеке. После заполнения всех полей их значения (кроме кода CVV) проверяются в рамках процесса проверки карты. Затем они шифруются и отправляются на сервер Apple Pay.

Если процесс проверки карты возвращает соответствующий идентификатор, Apple загружает и отображает положения и условия эмитента карты. Если пользователь принимает положения и условия, Apple отправляет идентификатор принятых условий и код CVV процессу привязки и подготовки. Кроме того, в рамках процесса привязки и подготовки Apple передает эмитенту карты или сети такую информацию с устройства, как сведения об активности пользователя в учетной записи iTunes и App Store (например, много ли транзакций выполнялось в iTunes), данные об устройстве (например, номер телефона, название и модель устройства и любых сопутствующих устройств iOS, необходимых для настройки Apple Pay), а также примерное местонахождение пользователя во время добавления карты (если включены службы геолокации). Используя эту информацию, эмитент карты решает, разрешить ли добавление карты в Apple Pay.

В результате выполнения процесса привязки и подготовки происходят две вещи:

Page 54: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

54Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• Устройство начинает загружать файл кредитной или дебетовой карты для Wallet.

• Устройство начинает привязку карты к Secure Element.

Файл карты содержит URL-адреса, перейдя по которым можно загрузить изображения карты, такие метаданные, как контактная информация, связанные программы эмитента карты и поддерживаемые функции. Кроме того, он содержит различные данные о состоянии карты: была ли выполнена персонализация Secure Element, не приостановлено ли действие карты ее эмитентом, требуется ли дополнительная проверка, прежде чем карту можно будет использовать для оплаты с помощью Apple Pay, и так далее.

Добавление в Apple Pay кредитных или дебетовых карт из учетной записи iTunes StoreДля добавления кредитных или дебетовых карт, зарегистрированных в iTunes, может потребоваться повторно ввести пароль Apple ID пользователя. После получения номера карты из iTunes запускается процесс проверки карты. Если карту можно использовать в Apple Pay, устройство загрузит и покажет на экране положения и условия, а затем отправит их идентификатор и код безопасности карты процессу привязки и подготовки. Для карт, зарегистрированных в учетной записи iTunes, может потребоваться дополнительная проверка.

Добавление кредитных или дебетовых карт из программы эмитента картыЕсли программа зарегистрирована для использования Apple Pay, этой программе и серверу продавца назначаются ключи. Эти ключи используются для шифрования данных карты, отправляемых продавцу, что позволяет избежать чтения этих данных устройством iOS. Процесс подготовки похож на используемый при добавлении карт вручную (см. выше), за исключением того, что вместо кода CVV используются одноразовые пароли.

Дополнительная проверка Эмитент карты может решить, что для кредитной или дебетовой карты требуется дополнительная проверка. В зависимости от того, что предлагает эмитент карты, пользователь может выбирать между различными вариантами дополнительной проверки, например текстовым сообщением, электронным письмом, звонком из службы поддержки или завершением проверки в утвержденной сторонней программе. Для отправки текстового сообщения или электронного письма пользователь должен выбрать контактные данные, зарегистрированные у эмитента карты. На выбранный адрес или номер телефона будет отправлен код, который пользователь должен будет ввести в программе Wallet, Настройках или программе Apple Watch. Если пользователь выбирает проверку через службу поддержки или программу, выполняются действия, предусмотренные эмитентом.

Авторизация платежей

Page 55: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

55Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Если на устройстве есть Secure Enclave, Secure Element разрешает выполнение оплаты только после получения авторизации от Secure Enclave. На iPhone или iPad это включает подтверждение того, что пользователь прошел аутентификацию с помощью Touch ID, Face ID или код-пароля устройства. По умолчанию используется технология Touch ID или Face ID (при наличии), но вместо нее в любой момент можно использовать ввод код-пароля. Ввести код-пароль автоматически предлагается после трех безуспешных попыток сопоставления отпечатка пальца или двух безуспешных попыток сопоставления лица, а после пяти безуспешных попыток ввод код-пароля становится обязательным. Кроме того, код-пароль требуется, если технология Touch ID или Face ID не настроена или их использование не включено для Apple Pay. В случае с Apple Watch для совершения платежа устройство должно быть разблокировано с помощью кода, а пользователь должен дважды нажать боковую кнопку.

Secure Enclave и Secure Element взаимодействуют через последовательный интерфейс; Secure Element связан с контроллером NFC, который, в свою очередь, соединен с процессором программ. Хотя они и не связаны напрямую, Secure Enclave и Secure Element могут безопасно взаимодействовать, используя общий ключ пары, который подготавливается при производстве устройства. Шифрование и аутентификация передаваемых данных выполняются на основе AES, и обе стороны используют криптографические значения nonce для защиты от атак с повторением пакетов. Ключ пары генерируется в Secure Enclave из его ключа UID и уникального идентификатора Secure Element. Затем ключ пары безопасно передается из Secure Enclave в аппаратный модуль системы безопасности (HSM) на заводе, где есть необходимый материал для последующего внедрения ключа пары в Secure Element.

Когда пользователь авторизует транзакцию, Secure Enclave отправляет подписанные данные о типе аутентификации и сведения о типе транзакции (бесконтактная или в программе) Secure Element в связке со случайным значением авторизации (AR). Значение AR генерируется в Secure Enclave, когда пользователь впервые подготавливает кредитную карту. Оно сохраняется, пока включена технология Apple Pay, и защищается шифрованием Secure Enclave и противооткатным механизмом. Оно безопасно передается Secure Element с помощью ключа пары. При получении нового значения AR Secure Element помечает все ранее добавленные карты как удаленные.

Кредитные, дебетовые и предоплаченные карты, добавленные в Secure Element, можно использовать, только если Secure Element получает авторизацию с теми же ключом пары и значением AR, которые использовались при добавлении карты. Это позволяет iOS сообщать Secure Enclave, какие карты следует отображать как недоступные, отмечая свою копию значения AR как недействительную в следующих ситуациях.• Если код-пароль отключен.• Пользователь выходит из iCloud. • Пользователь выбирает стирание всего контента и настроек.• Устройство восстанавливается с помощью режима восстановления.

Page 56: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

56Руководство по безопасности iOS — информационный документ | Январь 2018 г.

На Apple Watch карты помечаются как недействительные в следующих случаях:• Код часов отключен.• Разорвана пара между часами и iPhone.• Отключено распознавание запястья.

Используя ключ пары и свою копию текущего значения AR, Secure Element проверяет авторизацию, полученную от Secure Enclave, прежде чем разрешить платежному апплету бесконтактную оплату. Этот процесс также применяется при получении зашифрованных платежных данных от платежного апплета для транзакций в программах.

Динамический код безопасности, назначаемый каждой транзакции Все платежные транзакции, инициируемые платежными апплетами, содержат динамический код безопасности, назначаемый каждой транзакции, а также учетный номер устройства. Этот одноразовый код вычисляется с помощью счетчика, значение которого увеличивается для каждой новой транзакции, и ключа, подготавливаемого платежным апплетом в ходе персонализации и известного платежной сети и/или эмитенту карты. В зависимости от схемы оплаты при расчете этих кодов могут также использоваться другие данные, например:• случайное число, генерируемое платежным апплетом;• другое случайное число, генерируемое терминалом при NFC-

транзакциях;

или• другое случайное число, генерируемое сервером при транзакциях в

программах.

Эти коды безопасности предоставляются платежной сети и эмитенту карты, что позволяет им проверять каждую транзакцию. Длина таких кодов безопасности может быть различной и зависит от типа выполняемой транзакции.

Бесконтактные платежи с использованием Apple PayЕсли iPhone включен и обнаруживает зону действия NFC, то предлагает пользователю подходящую кредитную, дебетовую или предоплаченную карту либо карту по умолчанию (этим можно управлять в Настройках). Кроме того, пользователь может открыть программу Wallet и выбрать кредитную или дебетовую карту, а если устройство заблокировано, дважды нажать кнопку «Домой».

Затем, прежде чем платежная информация будет передана, пользователь должен пройти аутентификацию, используя Touch ID, Face ID или свой код-пароль. Если Apple Watch разблокированы, при двойном нажатии боковой кнопки для оплаты активируется карта по умолчанию. Без аутентификации пользователя платежная информация не отправляется. После аутентификации пользователя

Page 57: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

57Руководство по безопасности iOS — информационный документ | Январь 2018 г.

для обработки платежа используются учетный номер устройства и динамический код безопасности, назначаемый каждой транзакции. Ни Apple, ни устройство пользователя не отправляют продавцу полный фактический номер кредитной или дебетовой карты. Apple может получать анонимные данные о транзакции, такие как примерное место и время ее выполнения. Это помогает улучшить работу Apple Pay и других продуктов и служб Apple.

Оплата покупок в программах с помощью Apple PayApple Pay также можно использовать для оплаты покупок в программах iOS, а также в программах Apple Watch, начиная с watchOS 3. Когда пользователи выполняют оплату в программах, используя Apple Pay, Apple получает зашифрованную информацию о транзакции и, прежде чем отправить ее разработчику или продавцу, заново шифрует ее с использованием ключа, назначаемого каждому разработчику. Apple Pay сохраняет анонимную информацию о транзакции, например примерную сумму покупки. Эта информация не может привести обратно к пользователю и не содержит данных о том, что именно было куплено.

Когда программа запускает платежную транзакцию Apple Pay, серверы Apple Pay получают зашифрованную транзакцию с устройства раньше, чем ее получит продавец. Затем серверы Apple Pay повторно шифруют ее с использованием ключа, назначаемого каждому продавцу, после чего ретранслируют транзакцию продавцу.

Когда программа запрашивает оплату, она вызывает API, чтобы определить, поддерживает ли устройство Apple Pay и есть ли у пользователя кредитные или дебетовые карты, которыми можно оплатить покупку в платежной сети, поддерживаемой продавцом. Программа запрашивает всю информацию, необходимую для обработки и выполнения транзакции, например расчетный адрес, адрес доставки и контактные данные. Затем программа подает iOS запрос на предоставление листа Apple Pay, и система запрашивает информацию для программы, а также другие необходимые сведения, например то, какую карту следует использовать.

В это время программа получает данные о городе, регионе/штате и индексе, позволяющие вычислить итоговую стоимость доставки. Полный набор запрошенной информации не предоставляется программе до тех пор, пока пользователь не авторизует платеж с помощью Touch ID, Face ID или код-пароля устройства. После авторизации платежа информация, представленная в листе Apple Pay, передается продавцу.

Когда пользователь авторизует оплату, выполняется вызов на серверы Apple Pay для получения криптографических значений nonce — аналогично значению, возвращаемому терминалом NFC при выполнении транзакции в магазине. Значение nonce вместе с другими данными транзакции передается Secure Element для генерации учетных данных для оплаты, которые будут зашифрованы с помощью ключа Apple. Secure Element передает зашифрованные учетные данные для оплаты серверам Apple Pay, которые расшифровывают их, сравнивают значение nonce из учетных данных со значением nonce, переданным Secure Element, и повторно шифруют учетные данные для оплаты с помощью ключа продавца, связанного с идентификатором

Page 58: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

58Руководство по безопасности iOS — информационный документ | Январь 2018 г.

продавца. Затем они возвращаются на устройство, которое возвращает их программе, используя API. Программа передает их в систему продавца для обработки. Продавец может расшифровать учетные данные для оплаты, используя свой закрытый ключ, и обработать их. Это в сочетании с подписью серверов Apple позволяет продавцу проверить, что транзакция предназначена именно ему.

Интерфейсам API требуются права, в которых указаны идентификаторы поддерживаемых продавцов. Программа также может отправить на подпись Secure Element дополнительные данные, например номер заказа или удостоверение покупателя, чтобы гарантировать, что транзакция не будет связана с другим пользователем. Для этого разработчик программы может задать данные applicationData в запросе PKPaymentRequest. Хэш этих данных включается в зашифрованные платежные данные. Затем продавец должен проверить, что хэш его данных applicationData совпадает с включенным в платежные данные.

Оплата покупок в Интернете с помощью Apple Pay или HandoffApple Pay можно использовать для оплаты покупок на веб-сайтах. В iOS 10 и новее транзакции Apple Pay можно совершать в Интернете на iPhone и iPad. В macOS Sierra или новее транзакции Apple Pay можно инициировать на Mac и завершать на устройстве iPhone или Apple Watch, которое поддерживает Apple Pay и использует ту же учетную запись iCloud.

Для использования Apple Pay необходимо, чтобы веб-сайт был зарегистрирован в Apple. Серверы Apple выполняют проверку доменного имени и выпускают сертификат клиента TLS. Веб-сайты, поддерживающие Apple Pay, должны предоставлять свой контент через HTTPS. Для каждой платежной транзакции веб-сайт должен установить уникальный безопасный сеанс связи продавца с сервером Apple, используя выпущенный компанией Apple сертификат клиента TLS. Данные сеанса связи продавца подписываются компанией Apple. После того как подпись сеанса связи продавца подтверждена, веб-сайт может запросить, есть ли у пользователя устройство с поддержкой Apple Pay и активирована ли на устройстве кредитная, дебетовая или предоплаченная карта. Никакие другие данные не предоставляются. Если пользователь не хочет делиться этой информацией, можно отключить запросы Apple Pay в настройках конфиденциальности Safari в iOS и macOS.

После подтверждения сеанса связи продавца применяются те же меры обеспечения безопасности и конфиденциальности, как при оплате в программе.

Если процесс оплаты начинается на Mac, а завершается на iPhone или Apple Watch (функция Handoff), то для передачи платежной информации между компьютером Mac и авторизованным устройством пользователя система Apple Pay использует протокол сквозного шифрования IDS. IDS использует для шифрования ключи устройств пользователя, так что никакое другое устройство не может дешифровать эту информацию, а у компании Apple нет доступа к этим ключам. Запрос обнаружения устройств для передачи Apple Pay через Handoff содержит тип и уникальный идентификатор кредитных карт

Page 59: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

59Руководство по безопасности iOS — информационный документ | Январь 2018 г.

пользователя, а также ряд метаданных. Учетный номер устройства, назначенный карте пользователя, не передается — он продолжает храниться в безопасности на iPhone или Apple Watch пользователя. Apple также безопасно передает недавно использованные пользователем контактные данные, адреса доставки и адреса плательщика через Связку ключей iCloud.

Когда пользователь авторизует платеж с помощью Touch ID, Face ID, ввода код-пароля на iPhone или двойного нажатия боковой кнопки на Apple Watch, платежный токен шифруется с использованием сертификата продавца, выданного веб-сайту, и безопасно передается с iPhone или Apple Watch пользователя на его Mac, а затем на веб-сайт продавца.

Запрашивать и совершать оплату могут только устройства, находящиеся поблизости друг от друга. Близость определяется с помощью оповещений Bluetooth Low Energy.

Скидочные картыВ iOS 9 и новее в Apple Pay поддерживается протокол VAS (Value Added Service — дополнительная услуга) для передачи данных о скидочных картах на совместимые терминалы NFC. Протокол VAS можно применять на терминалах продавцов. Он использует NFC для взаимодействия с поддерживаемыми устройствами Apple. Протокол VAS работает на коротком расстоянии и используется для предоставления дополнительных услуг, таких как передача информации о скидочных картах, в рамках выполнения транзакции Apple Pay.

Терминал NFC запускает процесс приема данных о карте, отправляя соответствующий запрос. Если у пользователя есть карта с идентификатором магазина, появляется запрос, и пользователь должен авторизовать ее использование. Если продавец поддерживает шифрование, информация о карте, временная метка и одноразовый случайный ключ ECDH P-256 используются вместе с открытым ключом продавца, чтобы получить ключ шифрования для данных карты, которые отправляются на терминал. Если продавец не поддерживает шифрование, появляется запрос, и пользователь должен еще раз поднести устройство к терминалу, прежде чем информация о скидочной карте будет отправлена.

Apple Pay CashВ ОС iOS 11.2 и watchOS 4.2 Apple Pay можно использовать на iPhone, iPad или Apple Watch для отправки, получения и запроса денежных средств от других пользователей. Когда пользователь получает денежные средства, они добавляются в учетную запись Apple Pay Cash, которую можно открыть в программе Wallet или в разделе «Настройки» > «Wallet и Apple Pay» на любом из поддерживаемых устройств, где пользователь выполнил вход со своим Apple ID.

Для использования персональных платежей и Apple Pay Cash пользователь должен войти в свою учетную запись iCloud на устройстве, совместимом с Apple Pay Cash, а в его учетной записи iCloud должна быть настроена двухфакторная аутентификация.

Page 60: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

60Руководство по безопасности iOS — информационный документ | Январь 2018 г.

При настройке Apple Pay Cash информация, аналогичная информации при добавлении кредитной или дебетовой карты, может быть отправлена в партнерский банк Green Dot Bank и в Apple Payments Inc. — дочернюю компанию в полной собственности Apple, созданную для защиты конфиденциальности пользователей. Она хранит и обрабатывает информацию отдельно от Apple таким образом, что Apple не имеет об этом сведений. Вышеуказанная информация используется только в целях устранения неполадок, предотвращения мошенничества и соблюдения нормативов.

Пользователи могут инициировать запросы и переводы денежных средств из программы «Сообщения» или попросив Siri. Когда пользователь пытается отправить денежные средства, в iMessage отображаются сведения Apple Pay. Сначала всегда отображается баланс Apple Pay Cash. При необходимости дополнительные средства списываются со второй кредитной или дебетовой карты, которую пользователь добавил в Wallet.

Карту Apple Pay Cash в программе Wallet можно использовать для совершения платежей через Apple Pay в магазинах, программах и Интернете. Можно также переводить денежные средства со счета Apple Pay Cash на банковский счет. Помимо получения денежных средств от других пользователей, можно также вносить денежные средства на счет Apple Pay с дебетовых или предоплаченных карт в Wallet.

После завершения транзакций между пользователями Apple Payments Inc. сохраняет и может использовать информацию об этих транзакциях в целях устранения неполадок, предотвращения мошенничества и соблюдения нормативов. Остальные подразделения Apple не располагают информацией о том, кому пользователь отправил денежные средства, от кого получил денежные средства или какую покупку оплатил картой Apple Pay Cash.

Когда пользователь отправляет денежные средства с помощью Apple Pay, вносит денежные средства на счет Apple Pay Cash или переводит денежные средства на банковский счет, на серверы Apple Pay отправляется запрос для получения криптографического значения nonce, аналогичного значению, возвращаемому Apple Pay в программах. Значение nonce вместе с другими данными транзакции передается Secure Element для генерации подписи платежа. Когда Secure Element выпускает подпись платежа, она передается серверам Apple Pay. Серверы Apple Pay проверяют аутентификацию, целостность и правильность транзакции, используя подпись платежа и значение nonce. После этого начинается перевод денежных средств, а пользователь уведомляется о завершении транзакции.

Если в транзакции используется кредитная или дебетовая карта для:• внесения денежных средств в Apple Pay Cash, или• отправки денежных средств другому пользователю, или• внесения дополнительных денежных средств в случае

недостаточного баланса Apple Pay Cash,

то, помимо вышеописанной подписи перевода средств, также генерируются зашифрованные учетные данные платежа, которые затем отправляются на серверы Apple Pay. Эта процедура аналогична процедуре при оплате через Apple Pay в программах и на веб-сайтах.

Page 61: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

61Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Если баланс счета Apple Pay Cash превышает определенную сумму или система распознает необычную активность, пользователю предлагается подтвердить свою личность. Информация, предоставленная пользователем для подтверждения своей личности, например номер социального страхования или ответы на вопросы (такие как название улицы, на которой ранее жил пользователь), безопасно передается партнеру Apple и шифруется с помощью его ключа. Apple не может расшифровать эти данные.

Карты SuicaПользователи в Японии могут добавить карту Suica в Apple Pay Wallet на поддерживаемых моделях iPhone и Apple Watch. Для этого можно перевести денежную сумму и билет на общественный транспорт с физической карты в ее электронное представление в Wallet или подготовить новую карту Suica в Wallet, используя программу Suica. Добавив карты Suica в Wallet, пользователи могут оплачивать покупки в магазинах и проезд в общественном транспорте своей анонимной картой Suica, картой MySuica или картой, на которую записан билет на общественный транспорт.

Добавленные карты Suica связываются с учетной записью iCloud, принадлежащей пользователю. Если пользователь добавляет в Wallet несколько карт, Apple или оператор общественного транспорта может связывать личную информацию пользователя и соответствующую информацию учетной записи между различными картами. Например, карты MySuica могут быть связаны с анонимными картами Suica. Карты и транзакции Suica защищены набором иерархических криптографических ключей.

Для перевода средств с физической карты в Wallet, если эта карта является анонимной картой Suica, пользователь должен ввести последние 4 цифры серийного номера этой карты. Если карта является картой MySuica или картой, на которую записан билет на общественный транспорт, пользователь также должен подтвердить свое владение картой, указав дату своего рождения При передаче билетов с iPhone на Apple Watch оба устройства должны находиться в сети в течение всего времени передачи.

Баланс можно пополнять средствами с кредитных и предоплаченных карт через Wallet или программу Suica. Безопасность процедуры пополнения средств с использованием Apple Pay описана в разделе «Оплата покупок в программах с помощью Apple Pay» данного документа.

Процедура подготовки карты Suica в программе Suica описана в разделе «Добавление кредитных или дебетовых карт из программы эмитента карты» данного документа.

У оператора общественного транспорта есть криптографические ключи, необходимые для аутентификации физической карты и проверки данных, указанных пользователем. После проверки система может создать учетный номер устройства для Secure Element и активировать билет, только что добавленный в Wallet, с внесенными средствами. После завершения подготовки электронной карты физическая карта отключается.

Page 62: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

62Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Независимо от типа подготовки в конце процедуры средства на карте Suica шифруются и сохраняются в выделенном апплете в Secure Element. У оператора общественного транспорта есть ключи, необходимые для выполнения криптографических операций с данными на карте, необходимых для перевода средств.

По умолчанию пользователи могут автоматически оплачивать свой проезд без использования Touch ID, Face ID или ввода код-пароля. Когда включен экспресс-режим, такая информация, как сведения о недавно посещенных станциях, истории транзакций и дополнительных билетах, может быть доступна любым находящимся рядом устройствам считывания бесконтактных карт. Пользователи могут включить обязательную авторизацию с помощью Touch ID, Face ID или код-пароля в разделе настроек «Wallet и Apple Pay», отключив режим автоматической оплаты.

Как и в случае с другими картами Apple Pay, пользователи могут приостанавливать действие карт Suica и удалять их следующими способами:• удаленное стирание устройства с помощью программы «Найти

iPhone»;• перевод устройства в режим пропажи с помощью программы

«Найти iPhone»;• операции удаленного стирания через MDM;• удаление всех карт со страницы своей учетной записи Apple ID;• удаление всех карт из iCloud.com;• удаление всех карт из программы Wallet.

Серверы Apple Pay уведомляют оператора общественного транспорта об отключении таких карт Suica. Если устройство пользователя не было подключено к сети в момент попытки его стирания, карты Suica могут быть по-прежнему доступны пользователю в некоторых терминалах до 0:01 JST следующих суток.

Пользователь может возместить баланс карт Suica, которые он удалил. Пользователь может снова добавить карты на устройство, на котором выполнен вход с тем же Apple ID, после 5:00 JST следующих суток.

Если устройство не подключено к сети, действие карт Suica невозможно приостановить.

Приостановка действия, удаление и стирание картПользователи могут приостановить действие Apple Pay на iPhone, iPad и Apple Watch с watchOS 3, переведя устройства в режим пропажи с помощью функции «Найти iPhone». Кроме того, пользователи могут удалять и стирать свои карты из Apple Pay, используя функцию «Найти iPhone» или iCloud.com, либо прямо с устройства с помощью программы Wallet. Для удаления карт из Apple Watch можно использовать настройки iCloud, программу Apple Watch на iPhone или интерфейс самих часов. Возможность проведения оплаты с помощью карт на устройстве будет приостановлена или удалена из Apple Pay эмитентом карты или соответствующей платежной сетью,

Page 63: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

63Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Кроме того, когда пользователь стирает все данные с устройства с помощью функции «Стереть контент и настройки», функции «Найти iPhone» или при восстановлении устройства в режиме восстановления, iOS передает Secure Element команду пометить все карты как удаленные. При этом все карты мгновенно переводятся в недействительное состояние, а после подключения к серверам Apple Pay полностью стираются из Secure Element. Независимо от этого процесса Secure Enclave помечает значение AR как недействительное, чтобы авторизация оплаты с использованием ранее зарегистрированных карт больше не была возможна. При подключении к сети устройство пытается связаться с серверами Apple Pay, чтобы гарантировать, что все карты стерты из Secure Element.

Page 64: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

64Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Интернет-службы

Apple предлагает широкий набор служб для повышения практичности и эффективности устройств, включая такие службы, как iMessage, FaceTime, Предложения Siri, iCloud, Резервное копирование iCloud и Связка ключей iCloud.

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

Apple IDApple ID — это учетная запись, используемая для входа в систему различных служб Apple, таких как iCloud, iMessage, FaceTime, iTunes Store, iBooks Store, App Store и многие другие. Пользователи должны хранить свои идентификаторы Apple ID в безопасности, чтобы защитить свои учетные записи от несанкционированного доступа. Для этого Apple требует использовать надежные пароли, которые должны содержать не менее восьми символов, включать буквы и цифры, содержать не более трех одинаковых символов подряд и не являться часто используемыми паролями. Пользователям рекомендуется устанавливать еще более надежные пароли, добавляя дополнительные символы и знаки препинания. Apple также требует настроить три контрольных вопроса, которые помогут подтвердить личность владельца при внесении изменений в его учетные данные или сбросе забытого пароля.

Кроме того, если в учетную запись были внесены важные изменения, например, были изменены платежные данные или пароль либо идентификатор Apple ID был использован для входа на новом устройстве, Apple отправляет пользователям электронные письма и push-уведомления. Если что-то выглядит незнакомым, пользователям рекомендуется незамедлительно изменить свой пароль Apple ID.

Кроме того, Apple задействует целый ряд политик и процедур для защиты учетных записей пользователей. Сюда входит ограничение количества попыток входа и попыток сброса пароля, активный мониторинг мошеннических действий для помощи с идентификацией атак в процессе их совершения, а также регулярный пересмотр политик с учетом любой новой информации, которая может повлиять на безопасность пользователей.

Создание надежных паролей Apple IDИдентификатор Apple ID используется для подключения к целому ряду служб, включая iCloud, FaceTime и iMessage. Чтобы быть надежными, пароли, создаваемые пользователями для всех новых учетных записей, должны:• содержать не менее восьми сим-

волов;• содержать не менее одной буквы;• содержать не менее одной

заглавной буквы;• содержать не менее одной

цифры;• содержать не более трех одина-

ковых символов подряд;• отличаться от имени учетной

записи.

Page 65: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

65Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Двухфакторная аутентификация

Чтобы помочь пользователям защитить свои учетные записи, Apple предлагает двухфакторную аутентификацию — дополнительный уровень защиты Apple ID. Она помогает сделать так, чтобы доступ к учетной записи мог получить только ее владелец, даже если кто-то другой узнает пароль учетной записи.

При использовании двухфакторной аутентификации доступ к учетной записи пользователя возможен только с доверенных устройств, таких как iPhone, iPad или Mac пользователя. Для первого входа в систему на любом новом устройстве требуется два фрагмента информации: пароль Apple ID и шестизначный цифровой проверочный код, который автоматически отображается на доверенных устройствах пользователя или отправляется на доверенный номер телефона. Указав данный код, пользователь подтверждает, что он доверяет новому устройству и что с этого устройства можно входить в систему. Теперь для получения доступа к учетной записи пользователя недостаточно одного пароля. Двухфакторная аутентификация повышает безопасность Apple ID и всей личной информации пользователя, которая хранится в Apple. Эта функция интегрирована в iOS, macOS, tvOS, watchOS и системы аутентификации, используемые на веб-сайтах Apple.

Более подробную информацию о двухфакторной аутентификации можно найти на веб-странице https://support.apple.com/ru-ru/HT204915.

Двухэтапная проверкаНачиная с 2013 г. компания Apple предлагает еще один похожий метод обеспечения безопасности под названием «двухэтапная проверка». Если двухэтапная проверка включена, то перед внесением изменений в учетную запись Apple ID, в iCloud, iMessage, FaceTime или Game Center либо перед совершением покупок в iTunes Store, iBooks Store или App Store с нового устройства пользователь должен подтвердить свою личность с помощью временного кода, который отправляется на одно из его доверенных устройств. Кроме того, пользователю выдается 14-символьный ключ восстановления, который следует хранить в безопасном месте на случай, если он забудет пароль или лишится доступа к своим доверенным устройствам. Большинству пользователей рекомендуется использовать двухфакторную аутентификацию, однако в некоторых ситуациях вместо нее рекомендуется двухэтапная проверка.

Более подробную информацию о двухэтапной проверке Apple ID можно найти на веб-страницеhttps://support.apple.com/ru-ru/ht5570

Управляемые Apple IDУправляемые Apple ID функционируют аналогично обычным Apple ID, но принадлежат образовательному учреждению, которое ими управляет. Учреждение может сбрасывать пароли, ограничивать покупки и возможности связи, например отключать FaceTime и Сообщения, а также устанавливать права доступа на основе ролей для сотрудников, преподавателей и учащихся.

Для управляемых Apple ID отключены некоторые службы Apple, например, Apple Pay, Связка ключей iCloud, HomeKit и Найти iPhone.

Page 66: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

66Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Более подробную информацию об управляемых Apple ID можно найти на веб-странице https://help.apple.com/schoolmanager/

Аудит управляемых Apple IDУправляемые Apple ID поддерживают возможность аудита, что позволяет учреждениям соблюдать требования законодательства и нормативы в области конфиденциальности. Учетной записи администратора, руководителя или преподавателя можно предоставить полномочия аудита в отношении определенных управляемых Apple ID. Аудиторы могут контролировать только учетные записи, расположенные в иерархии учебного заведения ниже, чем они сами, то есть преподаватели могут контролировать учащихся, руководители могут контролировать преподавателей и учащихся, а администраторы могут контролировать руководителей, преподавателей и учащихся.

Если запросить учетные данные для аудита через Apple School Manager, будет создана специальная учетная запись с доступом только к тому управляемому Apple ID, для которого запрошен аудит. Полномочия аудита истекают через семь дней. На протяжении этого периода аудитор может читать и изменять контент пользователя, хранящийся в iCloud или программах с поддержкой CloudKit. Все запросы на получение аудиторского доступа сохраняются в журнале Apple School Manager. В журнале отображается следующая информация: кто был аудитором; управляемый Apple ID, к которому аудитор запросил доступ; время запроса и факт проведения аудита.

Управляемые Apple ID и личные устройстваУправляемые Apple ID также можно использовать на личных устройствах iOS и компьютерах Mac, принадлежащих пользователям. В этом случае учащиеся входят в iCloud с использованием управляемого Apple ID, выданного учреждением, и дополнительного пароля, который выступает в качестве второго фактора двухфакторной аутентификации Apple ID. Пока на личном устройстве используется управляемый Apple ID, Связка ключей iCloud недоступна; учреждение также может ограничить и другие функции, например FaceTime или Сообщения. Любые документы iCloud, созданные учащимися во время работы под управляемым Apple ID, могут быть подвергнуты аудиту, как описано выше в этом разделе.

iMessageApple iMessage — это служба обмена сообщениями для устройств iOS, Apple Watch и компьютеров Mac. С помощью iMessage можно передавать не только текст, но и различные вложения, включая фотографии, контакты и географические координаты. Сообщения отображаются на всех зарегистрированных устройствах пользователя, поэтому начатый диалог можно продолжить на любом своем устройстве. iMessage активно использует службу Apple Push Notification Service (APNs). Apple не сохраняет содержимое сообщений или вложений: оно защищено с помощью сквозного шифрования, поэтому никто, кроме отправителя и получателя, не может получить к нему доступ. Apple не может расшифровать данные.

Page 67: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

67Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Когда пользователь включает iMessage на устройстве, оно генерирует две пары ключей для работы со службой: 1280-битный ключ RSA для шифрования и 256-битный ключ ECDSA на основе кривой NIST P-256 для подписания. Личные ключи из обеих пар ключей сохраняются в связке ключей устройства, а открытые ключи передаются в службу каталогов Apple (IDS), где они связываются с номером телефона или адресом электронной почты пользователя, а также с APNs-адресом устройства.

Когда пользователь включает iMessage на дополнительных устройствах, их открытые ключи шифрования и подписания, APNs-адреса и связанные номера телефонов добавляются в службу каталогов. Пользователь также может добавить дополнительные адреса электронной почты, которые проверяются путем отправки ссылки для подтверждения. Для проверки номеров телефона используется сеть оператора и SIM-карта. В некоторых сетях для этого требуется SMS-сообщение (если оно не является бесплатным, пользователю будет предложено подтвердить его). Помимо iMessage, проверка номера телефона может требоваться для некоторых системных служб, например FaceTime и iCloud. При добавлении нового устройства, номера телефона или адреса электронной почты на всех зарегистрированных устройствах пользователя отображается соответствующее сообщение.

Процесс отправки и получения сообщений в iMessageЧтобы начать новый диалог iMessage, пользователь вводит адрес или имя собеседника. Если пользователь вводит номер телефона или адрес электронной почты, устройство связывается с IDS для получения открытых ключей и APNs-адресов для всех устройств, связанных с адресатом. Если пользователь вводит имя, устройство сначала извлекает из программы «Контакты» связанные с этим именем номера телефонов и адреса электронной почты, а затем получает открытые ключи и APNs-адреса из IDS.

Исходящие сообщения пользователя шифруются отдельно для каждого из устройств получателя. Открытые ключи шифрования RSA принимающих устройств извлекаются из IDS. Для каждого принимающего устройства отправляющее устройство генерирует случайное 88-битное значение и использует его в качестве ключа HMAC-SHA256 для получения 40-битного значения на основе открытых ключей отправителя и получателя, а также простого текста. Сцепление 88-битного и 40-битного значений дает 128-битный ключ, который используется для шифрования сообщения по алгоритму AES в режиме CTR. 40-битное значение используется на стороне получателя для проверки целостности дешифрованного простого текста. Этот ключ AES отдельного сообщения шифруется по схеме RSA-OAEP с использованием открытого ключа принимающего устройства. Сочетание зашифрованного текста сообщения и зашифрованного ключа сообщения хэшируется с использованием SHA-1, затем хэш подписывается по алгоритму ECDSA с использованием личного ключа подписания передающего устройства. Результатом являются сообщения — по одному для каждого принимающего устройства — которые состоят из зашифрованного текста сообщения, зашифрованного ключа сообщения и цифровой подписи отправителя. Затем они передаются в APNs для доставки адресатам.

Шифрование метаданных, таких как метка времени и информация о маршрутизации APNs, не выполняется. Связь с APNs шифруется с

Page 68: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

68Руководство по безопасности iOS — информационный документ | Январь 2018 г.

использованием канала TLS с прямой секретностью.

APNs может ретранслировать сообщения размером до 4 или 16 КБ в зависимости от версии iOS. Если текст сообщения слишком длинный либо к сообщению приложена фотография или другой большой объект, вложение шифруется по алгоритму AES в режиме CTR с использованием случайного 256-битного ключа и загружается в iCloud. Затем в виде содержимого iMessage получателю пересылается ключ AES для вложения, его универсальный идентификатор ресурса (URI) и хэш SHA-1 для зашифрованной формы. За защиту их конфиденциальности и целостности отвечает стандартный процесс шифрования iMessage, который показан на рисунке ниже.

Вложение,зашифрованное с помощью

случайного ключа

Открытый ключ и токен APNs для пользователя 2

iCloud

IDS

Пользователь 1

Подписанное и зашифрованное сообщение для пользователя 2

с URI и ключом вложения

APNs

Открытый ключ и токен APNs для пользователя 1

Пользователь 2

При отправке групповых сообщений эта процедура повторяется для каждого получателя и его устройств.

На принимающей стороне каждое устройство получает свою копию сообщения из APNs и, при необходимости, извлекает вложение из iCloud. Входящий номер телефона или адрес электронной почты отправителя сравнивается со списком контактов получателя, чтобы по возможности отобразить имя отправителя.

Как и все push-уведомления, сообщения удаляются из APNs после доставки. В отличие от других уведомлений APNs, если устройство отключено, сообщения iMessage ставятся в очередь для последующей отправки. В настоящее время сообщения хранятся в течение тридцати дней.

FaceTimeFaceTime — это служба Apple для совершения видео- и аудиозвонков. Аналогично iMessage, для установления первоначального соединения с зарегистрированными устройствами пользователя вызовы FaceTime также используют службу Apple Push Notification. Содержимое

Page 69: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

69Руководство по безопасности iOS — информационный документ | Январь 2018 г.

вызовов FaceTime защищено с помощью сквозного шифрования, поэтому никто, кроме отправителя и получателя, не может получить к ним доступ. Apple не может расшифровать данные.

Изначальное соединение FaceTime устанавливается через серверную инфраструктуру Apple, которая ретранслирует пакеты данных между зарегистрированными устройствами пользователей. Передавая уведомления APNs и сообщения Утилиты прохождения сессий для NAT (STUN) через ретранслированное соединение, устройства проверяют свои сертификаты подлинности и выбирают общий ключ для каждого сеанса. Этот общий ключ используется для генерации ключей сеансов для медиаканалов, передаваемых в потоковом режиме через Secure Real Time Protocol (SRTP). Пакеты SRTP шифруются по алгоритму AES-256 в режиме счетчика и HMAC-SHA1. После первоначального соединения и настройки параметров безопасности FaceTime использует STUN и Internet Connectivity Establishment (ICE) для установления прямого соединения между устройствами, если это возможно.

iCloudiCloud хранит контакты, календари, фотографии, документы и другие данные пользователя и автоматически поддерживает их актуальность на всех устройствах пользователя. Кроме того, программы сторонних разработчиков могут использовать iCloud для хранения и синхронизации документов, а также значений ключей для программ в соответствии с настройками разработчика. Для настройки iCloud пользователям необходимо войти в систему со своим Apple ID и выбрать требуемые службы. Функции iCloud, включая Мой Фотопоток, iCloud Drive и Резервное копирование iCloud, могут быть отключены ИТ-администратором с помощью профилей конфигурации MDM. Служба не учитывает тип хранящихся данных и обрабатывает все содержимое файлов одинаково, просто как набор байтов.

Каждый файл разбивается на фрагменты и шифруется iCloud с использованием AES-128 и производного ключа, полученного из содержимого каждого фрагмента с хэшированием SHA-256. Ключи и метаданные файла сохраняются в учетной записи iCloud пользователя. Зашифрованные фрагменты файлов сохраняются без какой-либо идентифицирующей пользователя информации в сторонних службах хранения, таких как S3 и Google Cloud Platform.

iCloud DriveiCloud Drive использует ключи на основе учетных записей для защиты документов, хранящихся в iCloud. Как и существующие службы iCloud, iCloud Drive разбивает содержимое файла на фрагменты, шифрует их и сохраняет с помощью сторонних служб. Однако ключи содержимого файлов защищаются с помощью ключей записей, хранящихся вместе с метаданными iCloud Drive. Эти ключи записей, в свою очередь, защищаются пользовательским ключом службы iCloud Drive, который затем сохраняется вместе с учетной записью iCloud пользователя. Для получения доступа к метаданным своих документов в iCloud пользователям необходимо пройти аутентификацию в iCloud, а также иметь ключ службы iCloud Drive для раскрытия защищенных частей хранилища iCloud Drive.

Page 70: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

70Руководство по безопасности iOS — информационный документ | Январь 2018 г.

CloudKitБлагодаря CloudKit разработчики могут хранить в iCloud значения ключей, структурированные данные и ресурсы. Для контроля доступа к CloudKit используются права программ. CloudKit поддерживает как открытые, так и личные базы данных. Открытые базы данных используются всеми копиями программы, обычно предназначены для общих ресурсов и не шифруются. Личные базы данных используются для хранения данных пользователей.

Как и в случае iCloud Drive, для защиты информации, хранящейся в личной базе данных пользователя, CloudKit использует ключи на основе учетных записей, а сами файлы разбиваются на фрагменты, шифруются и хранятся с помощью сторонних служб. Аналогично системе защиты данных, CloudKit использует иерархию ключей. Ключи файлов защищаются с помощью ключей записей CloudKit. Ключи записей, в свою очередь, защищаются с помощью ключа зоны, который защищается ключом службы CloudKit пользователя. Ключ службы CloudKit хранится в учетной записи iCloud пользователя и доступен только после аутентификации пользователя в iCloud.

Ключ зоны CloudKit

Ключ записи CloudKit

Метаданные файла

Список фрагментов

файла

Ключ службы CloudKit

Конвергентное шифрование

Фрагмент файла

Сквозное шифрование CloudKitДля Apple Pay Cash, ключевых слов пользователя, интеллектуальных функций Siri и функции «Привет Siri» используется сквозное шифрование CloudKit с ключом службы CloudKit, который защищен посредством синхронизации связки ключей iCloud. Для таких контейнеров CloudKit основой иерархией ключей является связка ключей iCloud, поэтому они обладают такими же характеристиками безопасности, как связка ключей iCloud: ключи доступны только на устройствах, которым доверяет пользователь, и недоступны Apple и любым третьим сторонам. В случае потери доступа к данным связки ключей iCloud (см. раздел «Безопасность ответственного хранения» данного документа) выполняется сброс данных в CloudKit; если данные доступны на локальном устройстве, которому доверяет пользователь, они снова выгружаются в CloudKit.

Резервное копирование iCloudiCloud также ежедневно выполняет резервное копирование информации, включая настройки устройства, данные программ, фотографии, видео из альбома «Фотопленка» и диалоги из программы «Сообщения», по сети Wi-Fi. Для защиты материалов iCloud шифрует их при передаче через Интернет, хранит в зашифрованном виде и использует безопасные токены для аутентификации. Резервное копирование iCloud выполняется только в том случае, если устройство заблокировано, подключено к источнику питания и имеет доступ к Интернету через Wi-Fi. Поскольку в iOS используется шифрование,

Page 71: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

71Руководство по безопасности iOS — информационный документ | Январь 2018 г.

система обеспечивает защиту данных и при этом позволяет выполнять инкрементное резервное копирование и восстановление без участия пользователя.

iCloud создает резервные копии следующих элементов:• Информация о приобретенной музыке, фильмах, телешоу,

программах и книгах. Резервная копия iCloud включает информацию о приобретенных материалах, которые находятся на принадлежащем пользователю устройстве iOS, но не сами приобретенные материалы. Когда пользователь восстанавливает резервную копию iCloud, приобретенные материалы автоматически загружаются из iTunes Store, iBooks Store и App Store. Некоторые виды материалов загружаются автоматически не во всех странах и регионах. Кроме того, покупки могут быть недоступны, если пользователь вернул за них уплаченные средства или они больше не представлены в магазине. Полная история покупок связана с Apple ID пользователя.

• Фотографии и видео на устройствах iOS пользователя. Учтите, что если пользователь включил Медиатеку iCloud на своем устройстве iOS (iOS 8.1 или новее) или Mac (OS X 10.10.3 или новее), его фотографии и видео уже хранятся в iCloud, поэтому они не входят в резервную копию iCloud.

• Контакты, события календаря, напоминания и заметки.• Настройки устройства.• Данные программ.• История вызовов и рингтоны.• Экран «Домой» и организация программ.• Конфигурация HomeKit.• Данные HealthKit.• iMessage, текстовые сообщения (SMS) и сообщения MMS

(необходима SIM-карта, которая использовалась во время создания резервной копии).

• Пароль визуального автоответчика (необходима SIM-карта, которая использовалась во время создания резервной копии).

Если файлы создаются с классами защиты данных, которые недоступны при заблокированном устройстве, их ключи файлов шифруются с использованием ключей классов из хранилища ключей резервного копирования iCloud. Файлы включаются в резервные копии iCloud в исходном, незашифрованном состоянии. Файлы, имеющие класс защиты «Без защиты», шифруются во время передачи.

Хранилище ключей резервного копирования iCloud содержит асимметричные ключи (Curve25519) для каждого класса защиты данных, используемые для шифрования ключей файлов. Подробнее о содержимом хранилища ключей резервного копирования и хранилища ключей резервного копирования iCloud см. «Защита данных связки ключей» в разделе «Шифрование и защита данных» этого документа.

Комплект резервной копии хранится в учетной записи iCloud пользователя и состоит из копии файлов пользователя и хранилища ключей резервного копирования iCloud. Хранилище ключей резервного копирования iCloud защищается с помощью случайного ключа, который также сохраняется в комплекте резервной копии.

Page 72: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

72Руководство по безопасности iOS — информационный документ | Январь 2018 г.

(Пароль iCloud пользователя не используется для шифрования, поэтому изменение пароля iCloud не приводит к аннулированию существующих резервных копий.)

При хранении в iCloud резервная копия базы данных связки ключей пользователя защищена ключом, который связан с UID. Благодаря этому восстановить связку ключей можно только на том устройстве, с которого она получена, и никто другой, включая Apple, не может прочитать элементы связки ключей пользователя.

При восстановлении выполняется извлечение резервных копий файлов, хранилища ключей резервного копирования iCloud и ключа от хранилища ключей из учетной записи iCloud пользователя. Сначала с помощью этого ключа дешифруется хранилище ключей резервного копирования iCloud, а затем с помощью ключей файлов из хранилища ключей дешифруются файлы, хранившиеся в комплекте резервной копии. Эти файлы сохраняются в файловой системе как новые файлы, поэтому они повторно шифруются с учетом своего класса защиты данных.

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

Связка ключей iCloud и восстановление связки ключей реализованы таким образом, что пароли пользователя остаются защищены даже в следующих ситуациях:• Учетная запись iCloud пользователя взломана.• Служба iCloud взломана сторонним злоумышленником или

сотрудником.• Третья сторона получает доступ к учетным записям пользователей.

Синхронизация связки ключейКогда пользователь впервые включает Связку ключей iCloud, устройство устанавливает круг доверия и создает для себя идентификатор синхронизации. Идентификатор синхронизации состоит из личного ключа и открытого ключа. Открытый ключ идентификатора синхронизации помещается в круг, а сам круг подписывается дважды: в первый раз с помощью личного ключа идентификатора синхронизации, а во второй раз с помощью асимметричного эллиптического ключа (на основе P-256), полученного из пароля учетной записи iCloud пользователя. Вместе с кругом сохраняются параметры (случайное значение «соли» и число повторений), использованные для создания ключа из пароля учетной записи iCloud пользователя.

Подписанный круг синхронизации размещается в хранилище значений ключей iCloud пользователя. Его нельзя прочитать, не зная пароля iCloud пользователя, и нельзя изменить, не имея личного ключа идентификатора синхронизации одного из членов круга.

Интеграция Safari со Связкой ключей iCloudSafari может автоматически генерировать криптографически стойкие случайные строки для использования в качестве паролей веб-сайтов, которые будут храниться в связке ключей и синхронизироваться с другими устройствами. Элементы связки ключей передаются между устройствами и серверами Apple, однако они зашифрованы таким образом, чтобы компания Apple и другие устройства не могли прочитать их содержимое.

Page 73: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

73Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Когда пользователь включает Связку ключей iCloud на другом устройстве, оно распознает, что пользователь имеет в iCloud созданный ранее круг синхронизации, в который оно не входит. Устройство создает для себя пару ключей идентификатора синхронизации, а затем создает билет заявки для запроса членства в круге. Билет содержит открытый ключ идентификатора синхронизации устройства. Пользователь получает запрос на прохождение аутентификации с использованием своего пароля iCloud. Из iCloud извлекаются параметры генерирования эллиптического ключа, используемые для создания ключа, а затем этот ключ используется для подписания билета заявки. Наконец, билет заявки передается в iCloud.

Когда первое устройство обнаруживает поступление билета заявки, оно отображает сообщение для пользователя с информацией о том, что новое устройство просит разрешение присоединиться к кругу. Пользователь вводит свой пароль iCloud, после чего билет заявки проверяется на использование соответствующего личного ключа. Это подтверждает, что пользователь, который отправил запрос на присоединение к кругу, ввел свой пароль iCloud при генерировании запроса.

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

Теперь в круг входят два члена, и у каждого из них есть открытый ключ другого члена. Члены круга начинают обмениваться отдельными элементами связки ключей через хранилище значений ключей iCloud или хранить их в CloudKit. Если оба члена круга содержат одинаковый элемент с разными датами изменения, оба получают элемент с более новой датой изменения, т. е. синхронизируются. Если даты изменения совпадают, элемент пропускается. Каждый синхронизируемый элемент шифруется таким образом, что его может расшифровать только устройство из круга доверия пользователя. Он не может быть расшифрован любыми другими устройствами или компанией Apple.

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

Однако синхронизируется не вся связка ключей. Некоторые элементы, например идентификаторы VPN, относятся к конкретному устройству и не должны его покидать. Синхронизируются только элементы с атрибутом kSecAttrSynchronizable. Компания Apple установила этот атрибут для пользовательских данных Safari (включая имена пользователей, пароли и номера кредитных карт), а также для паролей Wi-Fi и ключей шифрования HomeKit.

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

Page 74: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

74Руководство по безопасности iOS — информационный документ | Январь 2018 г.

74

Восстановление связки ключейФункция восстановления связки ключей позволяет передать свою связку ключей на хранение в компанию Apple, не давая ей возможности считывать пароли или другие данные в связке ключей. Даже если у пользователя есть только одно устройство, функция восстановления связки ключей обеспечивает защиту от потери данных. Это особенно важно, если Safari генерирует для учетных записей веб-сайтов случайные, надежные пароли, поскольку единственный экземпляр этих паролей хранится в связке ключей.

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

При включенной Связке ключей iCloud, если для учетной записи пользователя включена двухфакторная аутентификация, для восстановления переданной на хранение связки ключей используется код-пароль устройства. Если двухфакторная аутентификация не настроена, пользователю предлагается создать код безопасности iCloud, введя код-пароль из 6 цифр. Либо, не используя двухфакторную аутентификацию, пользователи могут указать собственный, более длинный код или позволить устройству создать криптографически случайный код, который они могут записать и хранить самостоятельно.

Затем устройство iOS экспортирует копию связки ключей пользователя, шифрует ее с помощью ключей из хранилища асимметричных ключей и помещает в хранилище значений ключей iCloud пользователя. Хранилище ключей защищается с помощью кода безопасности iCloud и открытого ключа кластера аппаратного модуля системы безопасности (HSM), в котором будет храниться запись ответственного хранения. Эта запись становится записью ответственного хранения iCloud пользователя.

Если вместо того, чтобы задавать свой собственный сложный или четырехзначный код, пользователь решит принять криптографически случайный код, запись ответственного хранения будет не нужна. Для защиты случайного ключа будет использован код безопасности iCloud.

Помимо указания кода безопасности пользователи должны зарегистрировать номер телефона. Он обеспечивает второй уровень аутентификации при восстановлении связки ключей. Пользователь получает сообщение SMS, на которое он должен ответить, чтобы продолжить процесс восстановления.

Безопасность ответственного храненияiCloud предоставляет инфраструктуру безопасности, которая гарантирует, что восстановление переданной на хранение связки ключей смогут выполнить только авторизованные пользователи и устройства. За iCloud расположены кластеры HSM, которые защищают записи ответственного хранения. Каждый кластер имеет ключ, который используется для шифрования находящихся под его контролем записей ответственного хранения, как было описано ранее в данном документе.

Page 75: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

75

Чтобы восстановить связку ключей, пользователь должен пройти аутентификацию с использованием своей учетной записи и пароля iCloud, а также ответить на сообщение SMS, которое будет отправлено на зарегистрированный номер телефона. Затем пользователь должен ввести свой код безопасности iCloud. Чтобы убедиться, что пользователь знает свой код безопасности iCloud, кластер HSM использует протокол Secure Remote Password (SRP); сам код не пересылается в компанию Apple. Каждый член кластера независимо от других убеждается, что пользователь не превысил максимальное количество попыток извлечения своей записи (см. ниже). Если большинство членов кластера соглашаются с этим, кластер снимает защиту с записи ответственного хранения и отправляет ее на устройство пользователя.

Затем устройство с помощью кода безопасности iCloud дешифрует случайный ключ, который был использован для шифрования связки ключей пользователя. С помощью этого ключа выполняется дешифрование и восстановление на устройстве связки ключей, извлеченной из хранилища значений ключей iCloud. Допускается только 10 попыток аутентификации и извлечения записи ответственного хранения. После нескольких неудавшихся попыток запись блокируется, и, чтобы получить право на дополнительные попытки, пользователь должен позвонить в службу поддержки Apple. После десятой неудавшейся попытки кластер HSM уничтожает запись ответственного хранения, и восстановить связку ключей невозможно. Такой подход защищает от попыток извлечь запись методом перебора, но жертвует связкой ключей.

Эти политики закодированы в прошивке HSM. Карты административного доступа, разрешающие вносить изменения в прошивку, уничтожены. Любая попытка изменения прошивки или доступа к личному ключу приводит к тому, что кластер HSM удаляет личный ключ. Если это происходит, владелец каждой связки ключей, защищенной этим кластером, получает сообщение о том, что его записи ответственного хранения были утеряны. При желании пользователи могут отправить записи на хранение повторно.

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

При включении Siri устройство создает случайные идентификаторы, предназначенные для использования с функцией распознавания речи и серверами Siri. Эти идентификаторы используются только в службе Siri и направлены на улучшение работы службы. Если в дальнейшем функция Siri будет отключена, устройство сгенерирует новый случайный идентификатор, который будет использован после включения Siri.

Page 76: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

76Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Чтобы оптимизировать работу Siri, на сервер передается определенная пользовательская информация с устройства. Сюда входит информация о медиатеке (названия песен, исполнителей и плейлистов), имена списков напоминаний, а также имена и связи, заданные в программе «Контакты». Весь обмен информацией с сервером осуществляется по HTTPS.

При запуске сеанса Siri на сервер передаются имя и фамилия пользователя (из программы «Контакты»), а также примерное местонахождение пользователя. Благодаря этому Siri может обратиться к пользователю по имени или ответить на вопросы, требующие знания только примерного местонахождения, например, вопросы о погоде.

Если требуется знать более точные координаты пользователя, например, для поиска кинотеатров поблизости, сервер запрашивает у устройства более точную информацию. Это один из примеров того, что информация передается на сервер только в том случае, если без нее невозможно обработать запрос пользователя. В любом случае информация сеанса удаляется после 10 минут бездействия.

При обращении к Siri с устройства Apple Watch оно создает собственный случайный идентификатор, как описано выше. Однако вместо повторной пересылки информации о пользователе вместе с запросом передается ссылка на эту информацию — идентификатор Siri, который назначен связанному iPhone.

Запись голосового запроса пользователя передается на сервер распознавания речи Apple. Если задача ограничивается диктовкой, распознанный текст передается обратно на устройство. В противном случае Siri анализирует текст и при необходимости объединяет его с информацией из профиля устройства. Например, если запрос звучит как «отправить сообщение маме», для его обработки используются связи и имена, загруженные из программы «Контакты». Команда для выполнения распознанного действия отправляется обратно на устройство.

Многие действия Siri выполняются устройством под управлением сервера. Например, если пользователь просит Siri прочитать входящее сообщение, сервер просто сообщает устройству, что ему необходимо прочитать вслух содержимое непрочитанных сообщений. Содержимое и отправитель сообщения не пересылаются на сервер.

Записи голосовых запросов пользователей хранятся на сервере в течение шести месяцев. Система распознавания речи использует эти записи, чтобы лучше понимать голос пользователя. По прошествии шести месяцев сохраняется другая копия этих записей — уже без идентификатора. Apple хранит эту копию не более двух лет и использует ее для улучшения и развития Siri. По прошествии двух лет Apple может продолжать использовать небольшой набор записей, расшифровок и связанных с ними данных без идентификаторов для постоянного усовершенствования и контроля качества Siri. Кроме того, для целей развития Siri сохраняется ряд других записей, в которых упоминается музыка, спортивные команды, игроки, предприятия или достопримечательности.

Функцию Siri можно активировать голосом. Распознавание команды запуска выполняется непосредственно на устройстве. В этом режиме Siri активируется только в том случае, если звучание поступившего аудиозапроса достаточно близко соответствует настроенной команде

Page 77: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

77Руководство по безопасности iOS — информационный документ | Январь 2018 г.

запуска. При распознавании команды запуска соответствующая аудиозапись, включая последующую команду для Siri, передается на сервер распознавания речи Apple для дальнейшей обработки. Эта обработка выполняется в соответствии с теми же правилами, которые применяются для остальных записей голосовых запросов пользователей к Siri.

НепрерывностьФункция «Непрерывность» задействует возможности таких технологий, как iCloud, Bluetooth и Wi-Fi, чтобы пользователи могли начинать действие на одном устройстве, а завершать его на другом, совершать и принимать телефонные вызовы, отправлять и получать текстовые сообщения и совместно использовать подключение к Интернету по сотовой сети.

HandoffЕсли компьютер Mac и устройства iOS пользователя находятся близко друг к другу, то пользователь может автоматически передавать незавершенные задачи с одного устройства на другое с помощью Handoff. Handoff позволяет пользователю переключаться между устройствами и мгновенно продолжать свою работу.

Если пользователь входит в iCloud на втором устройстве с поддержкой Handoff, два устройства создают пару через отдельное соединение Bluetooth Low Energy 4.0 при помощи службы APNs. Отдельные сообщения шифруются так же, как в iMessage. После объединения в пару каждое из устройств генерирует симметричный 256-битный ключ AES, который сохраняется в связке ключей устройства. Этот ключ может использоваться для шифрования и аутентификации оповещений Bluetooth Low Energy, которые сообщают о текущем действии устройства другим объединенным в пару устройствам iCloud, используя AES-256 в режиме GCM с защитой от повторной передачи перехваченных сообщений. Когда устройство в первый раз получает оповещение от нового ключа, оно устанавливает соединение стандарта Bluetooth Low Energy с вызывающим устройством и обменивается с ним ключами шифрования оповещений. Для защиты этого соединения используется шифрование Bluetooth Low Energy 4.0, а также шифрование отдельных сообщений, которое похоже на шифрование сообщений iMessage. В некоторых случаях эти сообщения передаются не через Bluetooth Low Energy, а через APNs. Для защиты и передачи информации о выполняемых пользователем действиях используются такие же методы, как в iMessage.

Переключение между нативными программами и веб-сайтами с помощью HandoffБлагодаря Handoff нативные программы iOS могут возобновлять отображение веб-страниц в доменах, которые на законных основаниях контролируются разработчиком программы. Кроме того, нативные программы могут возобновлять действия пользователя в веб-браузере.

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

Page 78: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

78Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Подробнее см. «Доступ к паролям, сохраненным в Safari» в разделе «Шифрование и защита данных» этого документа. Прежде чем программе будет разрешено принять действия пользователя через Handoff, система должна подтвердить, что программа контролирует доменное имя.

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

Система принимающего устройства распознает, что установленная нативная программа принимает информацию Handoff от переданного доменного имени, и отображает значок этой нативной программы в меню Handoff. При запуске нативная программа получает полный URL-адрес и заголовок веб-страницы. Никакая другая информация из браузера не передается в нативную программу.

При передаче информации в обратном направлении нативная программа может указать резервный URL-адрес на тот случай, если на принимающем устройстве не установлена та же нативная программа. В этом случае вместо программы в меню Handoff отображается браузер по умолчанию (если этот браузер поддерживает интерфейсы Handoff API). При вызове Handoff отображается этот браузер и в него передается резервный URL-адрес, предоставленный исходной программой. Резервный URL-адрес не обязательно должен принадлежать доменным именам, которые контролируются разработчиком нативной программы.

Передача больших объемов данных с помощью HandoffПомимо основной функции Handoff некоторые программы могут использовать API, которые поддерживают отправку больших объемов данных через технологию прямого соединения Wi-Fi, разработанную компанией Apple (во многом похожую на AirDrop). Например, программа «Почта» использует эти интерфейсы API для передачи черновиков писем, которые могут включать большие вложения.

Когда программа задействует эту функцию, между двумя устройствами начинается обмен данными, как при использовании Handoff (см. предыдущие разделы). Однако после получения первоначальной информации по Bluetooth Low Energy принимающее устройство устанавливает новое подключение через Wi-Fi. Это подключение шифруется (с помощью TLS), для чего устройства обмениваются сертификатами удостоверения iCloud. Удостоверение в сертификатах сверяется с удостоверением пользователя. Вся дальнейшая информация пересылается по этому зашифрованному подключению, пока передача не будет завершена.

Универсальный буфер обменаУниверсальный буфер обмена задействует функцию Handoff для безопасной передачи содержимого буфера обмена между различными устройствами пользователя, позволяя скопировать контент на одном устройстве и вставить его на другом. Для защиты содержимого используются такие же методы, как для других данных Handoff. По умолчанию, если разработчик программы не отключил общий доступ, содержимое передается в универсальный буфер обмена.

Page 79: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

79Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Автоматическая разблокировкаЕсли компьютер Mac поддерживает автоматическую разблокировку, Apple Watch пользователя могут безопасно разблокировать Mac, используя технологию Bluetooth Low Energy и технологию прямого соединения Wi-Fi. Все компьютеры Mac и устройства Apple Watch, которые поддерживают данную функцию и связаны с учетной записью iCloud, должны использовать двухфакторную авторизацию.

Когда пользователь включает возможность разблокировки Mac с помощью Apple Watch, создается безопасный канал с использованием идентификаторов автоматической разблокировки. Mac создает случайный одноразовый ключ разблокировки и передает его на Apple Watch по этому каналу. Ключ хранится на Apple Watch и доступен только тогда, когда Apple Watch разблокированы (см. раздел «Классы защиты данных»). Пароль пользователя не является источником энтропии и не используется в качестве нового ключа.

Во время разблокировки компьютер Mac создает соединение с Apple Watch, используя Bluetooth Low Energy. Затем создается безопасный канал связи между двумя устройствами на основе открытых ключей, которые использовались при его первоначальном включении. Затем Mac и Apple Watch используют технологию прямого соединения Wi-Fi и безопасный ключ, полученный из безопасного канала, для определения расстояния между двумя устройствами. Если устройства находятся в зоне действия, общий ключ передается по безопасному каналу для разблокировки Mac. После успешной разблокировки компьютер Mac заменяет текущий ключ разблокировки новым одноразовым ключом разблокировки и передает этот новый ключ на Apple Watch по тому же каналу.

Ретрансляция сотовых вызовов через iPhoneЕсли Mac, iPad или iPod пользователя подключены к той же сети Wi-Fi, что и iPhone, они могут совершать и принимать телефонные вызовы через сотовое подключение iPhone. Для этого необходимо, чтобы на устройствах был выполнен вход в iCloud и FaceTime под одним и тем же Apple ID.

При поступлении входящего вызова все настроенные устройства получают уведомление через службу Apple Push Notification, при этом для каждого уведомления используется такое же сквозное шифрование, как в iMessage. На экранах устройств, подключенных к одной сети, появляется уведомление о входящем вызове. Когда пользователь отвечает на вызов, аудиопоток начинает транслироваться с iPhone через безопасное прямое соединение между двумя устройствами.

Если ответить на вызов на одном устройстве, выдача звукового сигнала на находящихся поблизости связанных устройствах прекращается после передачи короткого оповещения через Bluetooth Low Energy 4.0. Байты оповещения шифруются тем же методом, который используется для оповещений Handoff.

Page 80: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

80Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Исходящие вызовы также ретранслируются на iPhone через службу Apple Push Notification, а аудиопоток аналогичным образом передается через безопасное прямое соединение между устройствами.

Для отключения ретрансляции телефонных вызовов пользователям необходимо отключить «Сотовые вызовы iPhone» в настройках FaceTime.

Переадресация сообщений через iPhoneФункция переадресации сообщений выполняет автоматическую пересылку SMS, полученных на iPhone, на зарегистрированные устройства iPad, iPod touch или Mac. На всех устройствах необходимо выполнить вход в iMessage с одним и тем же Apple ID. При включении переадресации сообщений регистрация выполняется автоматически на устройствах, входящих в круг доверия пользователя, если включена двухфакторная аутентификация. В ином случае необходимо подтвердить регистрацию каждого устройства, введя случайный шестизначный цифровой код, сгенерированный iPhone.

После завершения привязки устройств iPhone начинает шифровать и переадресовать входящие SMS на каждое из устройств, используя методы, описанные в разделе «iMessage» данного документа. Ответы пересылаются обратно на iPhone аналогичным способом, после чего iPhone отправляет ответ в виде SMS, используя механизм передачи SMS оператора. Включить и выключить переадресацию сообщений можно в настройках программы «Сообщения».

Instant HotspotУстройства iOS, поддерживающие Instant Hotspot, находят другие устройства, которые вошли в ту же учетную запись iCloud, и устанавливают с ними соединение, используя Bluetooth Low Energy. Совместимые компьютеры Mac с операционной системой OS X Yosemite или новее используют эту же технологию для обнаружения устройств iOS с поддержкой Instant Hotspot и установления соединения с этими устройствами.

После того как пользователь вводит настройки Wi-Fi на устройстве iOS, устройство начинает испускать сигнал Bluetooth Low Energy, содержащий идентификатор, который был согласован всеми устройствами, использующими одну и ту же учетную запись iCloud. Идентификатор генерируется из идентификатора связи с адресатом (DSID), который привязан к учетной записи iCloud и периодически меняется. Если в непосредственной близости от устройства оказываются другие устройства, использующие эту же учетную запись iCloud и поддерживающие режим модема, они распознают сигнал и отвечают на него, сигнализируя о своей доступности.

Если пользователь выбирает одно из доступных устройств для режима модема, на это устройство отправляется запрос о включении функции «Режим модема». Запрос передается по зашифрованному каналу Bluetooth Low Energy, а сами запросы шифруются так же, как в iMessage. Устройство отвечает на запрос по тому же каналу Bluetooth Low Energy, используя тот же способ шифрования отдельных сообщений, и передает информацию о подключении к модему.

Page 81: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

81Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Предложения Safari, предложения Siri при поиске, Поиск, #images, программа News и виджет News в странах, где недоступна программа NewsПредложения Safari, предложения Siri при поиске, поиск, #images, программа News и виджет News в странах, где недоступна программа News, отображают варианты из источников за пределами устройства, таких как Википедия, iTunes Store, местные новости, Карты и App Store, — предложения появляются даже раньше, чем пользователь начинает ввод текста.

Когда пользователь начинает ввод в адресной строке Safari, открывает или использует предложения Siri при поиске, использует Поиск, открывает #images, использует поиск в программе News или использует виджет News в странах, где недоступна программа News, то для выдачи пользователю подходящих результатов следующая контекстная информация пересылается в компанию Apple в зашифрованном виде через HTTPS.• Идентификатор, который сменяется каждые 15 минут для сохранения

конфиденциальности.• Поисковый запрос пользователя.• Наиболее вероятное завершение запроса с учетом контекста и

предыдущих поисковых запросов, сохраненных в локальной кэш-памяти.

• Примерное местоположение устройства, если включены службы геолокации для предложений на основе местоположения. Уровень искажения местоположения зависит от расчетной плотности населения по месту нахождения устройства; например, в сельской местности, где пользователи обычно находятся на большом расстоянии друг от друга, используется более сильное искажение, чем в центре города, где пользователи обычно находятся ближе друг к другу. Пользователи могут отключить отправку любой информации о местонахождении в компанию Apple, выключив службы геолокации для предложений на основе местоположения в Настройках. При отключении служб геолокации компания Apple может определять приблизительное местонахождение пользователя по IP-адресу устройства.

• Тип устройства и информация о том, что поиск выполняется в предложениях Siri при поиске, Safari, Поиске, программе News или Сообщениях.

• Тип соединения.• В качестве дополнительного контекста в запрос включается

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

• Список популярных программ на устройстве.• Язык, регион и настройки ввода.

Page 82: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

82Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• Если у устройства пользователя есть доступ к службам подписки на музыку или видео, в компанию Apple может быть передана такая информация, как названия служб подписки и типы подписки. Имя учетной записи пользователя, номер и пароль не передаются в Apple.

• Обобщенная сводная информация об интересующих пользователя темах.

Когда пользователь выбирает результат или выходит из программы, ничего не выбрав, в компанию Apple передается определенная информация, которая поможет повысить качество выдаваемых результатов в будущем. Эта информация привязывается не к определенному пользователю, а к идентификатору 15-минутного сеанса. Обратная информация включает часть вышеописанной контекстной информации, а также сведения о взаимодействиях, такие как:• Время между операциями и сетевыми запросами.• Рейтинг и порядок отображения предложений.• Идентификатор результата, а также действие, выбранное если

результат не является локальным, или категория выбранного локального результата.

• Флаг, указывающий на то, что пользователь выбрал данный результат.

Журналы предложений с запросами, контекстом и обратной информацией хранятся в компании Apple на протяжении 18 месяцев. Небольшой набор журналов сохраняется в течение срока до 5 лет: в них включаются запросы, регион, домен, примерное местонахождение и сводные показатели.

В некоторых случаях функция «Предложения» может перенаправлять запросы общих слов и фраз уполномоченному партнеру, а затем отображать полученные от него результаты поиска. Apple отправляет запросы от своего имени, поэтому партнеры не получают IP-адреса пользователей или обратную информацию поиска. Обмен информацией с партнером шифруется с помощью HTTPS. Для частых запросов в качестве контекста поиска компания Apple сообщает партнеру местонахождение устройства с точностью до города, тип устройства и язык клиента. В iOS 11 предложения Siri при поиске не отправляются партнерам.

Чтобы проанализировать и улучшить работу функции «Предложения» в разных регионах и в разных типах сетей, сохраняется следующая информация (без указания идентификатора сеанса):• частичный IP-адрес (без последних 8 бит для адресов IPv4, без

последних 80 бит для адресов IPv6);• приблизительная геопозиция;• примерное время запроса;• задержка и скорость передачи;• размер ответа;• тип подключения;• регион;• тип устройства и программа, от которой получен запрос.

Page 83: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

83Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Средства управления устройствами

iOS предлагает гибкие политики и конфигурации безопасности, которые легко применять и поддерживать. Благодаря этому организации могут защищать корпоративную информацию и следить за тем, чтобы сотрудники соблюдали корпоративные требования, даже если они используют свои собственные устройства, например, в рамках программы использования личных устройств сотрудников на работе (BYOD).

Организации могут использовать такие средства, как защита код-паролем, профили конфигурации, удаленное стирание и решения MDM сторонних разработчиков, для управления большой группой устройств и защиты корпоративных данных даже в том случае, если сотрудники обращаются к этим данным со своих персональных устройств iOS.

Защита код-паролемПо умолчанию код-пароль пользователя является цифровым. На устройствах с Touch ID или Face ID минимальная длина код-пароля составляет шесть цифр. На остальных устройствах — четыре цифры. Пользователи могут задать более длинный буквенно-цифровой код-пароль, выбрав вариант «Произвольный буквенно-цифровой код» в разделе «Настройки» > «Код-пароль». Рекомендуется использовать более длинные и сложные код-пароли, поскольку их труднее подобрать или взломать.

Для принудительного применения сложных код-паролей и других политик администраторы могут воспользоваться MDM или Exchange ActiveSync, а также проследить за тем, чтобы пользователи вручную установили профили конфигурации. Доступны следующие политики код-паролей:• разрешение простых паролей;• требование буквенно-цифровых паролей;• минимальная длина код-пароля;• минимальное количество сложных символов;• максимальный возраст код-пароля;• история код-паролей;• время автоблокировки;• отсрочка блокировки устройства;• максимальное количество неудачных попыток;• разрешение Touch ID или Face ID.

Сведения для администраторов о каждой из политик можно найти на веб-странице https://help.apple.com/deployment/ios/#/apd4D6A472A-A494-4DFD-B559-D59E63167E43

Сведения для разработчиков о каждой из политик можно найти на веб-странице https://developer.apple.com/library/ios/featuredarticles/iPhoneConfigurationProfileRef/

Page 84: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

84Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Модель создания пары iOSДля управления доступом к устройству с главного компьютера в iOS используется модель создания пары. Создание пары устанавливает доверительные отношения между устройством и хостом, которые выражаются обменом открытыми ключами. iOS использует этот знак доверия для разрешения дополнительных действий с подключенным хостом, например синхронизации данных.

В iOS 9 службы, требующие создания пары, не могут быть запущены до тех пор, пока устройство не будет разблокировано пользователем.

Кроме того, в iOS 10 для запуска некоторых служб, включая синхронизацию фотографий, необходимо, чтобы устройство было разблокировано.

Начиная с iOS 11 службы не запускаются, если устройство не было недавно разблокировано.

Для создания пары пользователь должен разблокировать устройство и принять запрос на создание пары от хоста. Начиная с iOS 11 пользователь также должен ввести свой код-пароль. После этого хост и устройство обмениваются открытыми 2048-битными ключами RSA и сохраняют их. Затем хост получает 256-битный ключ для разблокировки хранилища ключей передачи, которое расположено на устройстве (см. «Хранилище ключей передачи» в разделе «Хранилища ключей» данного документа). Ключи, которыми обменялись хост и устройство, используются для установления сеанса связи с использованием шифрования SSL. Пока такой сеанс не установлен, устройство не пересылает защищенные данные хосту и не запускает службы (синхронизация iTunes, пересылка файлов, разработка Xcode и т. д.). Устройство требует, чтобы этот зашифрованный сеанс использовался для всех подключений хоста по Wi-Fi, поэтому сначала необходимо создать пару через USB. Создание пары также предоставляет несколько диагностических возможностей. В iOS 9, если запись создания пары не использовалась дольше шести месяцев, срок ее действия истекает. В iOS 11 этот срок сокращен до 30 дней.

Для получения дополнительной информации посетите веб-страницу https://support.apple.com/ru-ru/HT6331

Некоторые службы, включая com.apple.pcapd, могут работать только через USB. Кроме того, для использования службы com.apple.file_relay на устройстве должен быть установлен профиль конфигурации, подписанный Apple.

В iOS 11 устройство Apple TV может использовать протокол Secure Remote Password для беспроводного создания пары.

Пользователь может очистить список доверенных узлов, выбрав «Сбросить настройки сети» или «Сбросить геонастройки».

Для получения дополнительной информации посетите веб-страницу https://support.apple.com/ru-ru/HT5868

Принудительное применение конфигурацииПрофиль конфигурации представляет собой файл XML, позволяющий администратору передавать информацию о конфигурации на устройства iOS. Пользователь не может изменить настройки,

Page 85: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

85Руководство по безопасности iOS — информационный документ | Январь 2018 г.

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

Профиль конфигурации iOS содержит ряд настраиваемых параметров, включая следующие:• политики код-паролей;• ограничения возможностей устройства (например, отключение

камеры);• настройки Wi-Fi;• настройки VPN;• настройки почтового сервера;• настройки Exchange;• настройки служб каталогов LDAP;• настройки служб календарей CalDAV;• веб-клипы;• учетные данные и ключи;• расширенные настройки сотовых сетей.

Актуальный список для администраторов доступен на веб-странице https://help.apple.com/deployment/ios/#/cad5370d089

Актуальный список для разработчиков доступен на веб-странице https://developer.apple.com/library/ios/featuredarticles/iPhoneConfigurationProfileRef/

Профили конфигурации можно подписать и зашифровать, чтобы подтвердить их источник, обеспечить их целостность и защитить их содержимое. Для шифрования профилей используется синтаксис криптографического сообщения RFC 3852 с поддержкой 3DES и AES 128.

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

Пользователи могут устанавливать профили конфигурации напрямую на устройства с помощью Apple Configurator. Профили также можно загружать через Safari, отправлять по электронной почте или по беспроводной сети, используя систему MDM. Когда пользователь настраивает устройство в программе регистрации устройств или Apple School Manager, устройство загружает и устанавливает профиль для регистрации в MDM.

Page 86: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

86Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Управление мобильными устройствами (MDM)iOS поддерживает MDM, благодаря чему компании могут выполнять безопасную настройку и широко использовать iPhone, iPad, Apple TV и Mac во всех своих подразделениях. Работа функций MDM основана на существующих технологиях iOS, таких как профили конфигурации, регистрация по беспроводной сети и служба Apple Push Notification. Например, APNs используется для вывода устройства из режима сна, чтобы оно могло напрямую связаться с системой MDM через безопасное соединение. Конфиденциальная или корпоративная информация через APNs не передается.

Используя MDM, отделы ИТ могут безопасно внедрять устройства в корпоративную среду, устанавливать и обновлять настройки по беспроводной сети, следить за соответствием корпоративным политикам и даже удаленно стирать данные или блокировать управляемые устройства.

Более подробную информацию об MDM можно найти на веб-странице https://www.apple.com/ru/business/resources/#management

Общий iPadОбщий iPad — это многопользовательский режим использования iPad, предназначенный для развертывания в образовательных организациях. Этот режим позволяет нескольким учащимся использовать один iPad, не имея доступа к документам и данным друг друга. Каждый учащийся получает собственную домашнюю папку, которая создается на томе APFS, защищенном учетными данными пользователя. Для использования общего iPad необходим управляемый Apple ID, который выпускается учебным заведением и находится в его владении. Функция «Общий iPad» позволяет учащимся входить в систему на любом устройстве, принадлежащем учебному заведению, если устройство настроено на использование несколькими учащимися.

Данные учащихся размещаются в отдельных домашних папках, каждая из которых находится в собственном домене защиты данных, защищена правами доступа UNIX и системой «песочниц». Когда учащийся входит в систему, службы идентификации Apple выполняют аутентификацию управляемого Apple ID с помощью протокола SRP. В случае успешной аутентификации устройству предоставляется кратковременный токен доступа. Если учащийся ранее уже использовал данное устройство, используя те же учетные данные, на нем будет разблокирована учетная запись локального пользователя. Если учащийся еще не использовал данное устройство, будут созданы идентификатор пользователя в UNIX, том APFS с домашней папкой пользователя и логическая связка ключей. Если устройство не подключено к Интернету (например, когда учащийся находится на выездной практике), в течение ограниченного числа дней может выполняться аутентификация в локальной учетной записи. В этой ситуации только пользователи, у которых ранее существовали локальные учетные записи, могут войти в систему. Когда лимит времени закончился, учащиеся должны пройти аутентификацию в сети, даже если локальная учетная запись уже существует.

Page 87: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

87Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Если после разблокирования или создания локальной учетной записи учащегося выполнена ее удаленная аутентификация, краткосрочный токен, выданный серверами Apple, преобразуется в токен iCloud, позволяющий входить в iCloud. После этого выполняется восстановление настроек учащегося и синхронизация его документов и данных из iCloud.

Пока сеанс учащегося активен и устройство подключено к Интернету, документы и данные сохраняются в iCloud сразу после создания или изменения. Кроме того, механизм фоновой синхронизации обеспечивает доставку изменений в iCloud после выхода учащегося из системы. После завершения фоновой синхронизации для этого пользователя его том APFS отключается и может быть подключен снова только после предоставления учетных данных пользователя.

При обновлении Общего iPad с более ранней версии, чем iOS 10.3, до версии 10.3 или новее выполняется однократное преобразование файловой системы, при котором раздел данных HFS+ преобразуется в том APFS. Если в этот момент в системе присутствуют домашние папки любых пользователей, они остаются на основном томе данных, а не преобразуются в отдельные тома APFS. Когда в систему входят другие учащиеся, их домашние папки также размещаются на основном томе данных. Новые учетные записи пользователей не будут создаваться с собственным томом APFS, как описано выше, до тех пор, пока все учетные записи пользователей не будут удалены с основного тома данных. Поэтому, чтобы пользователям были доступны дополнительные функции защиты и квоты, выделенные APFS, следует обновить iPad до версии 10.3 или новее посредством стирания и повторной установки либо удалить с устройства все учетные записи пользователей, выполнив команду Delete User (Удалить пользователя) в MDM.

Apple School ManagerApple School Manager — это служба для образовательных учреждений, которая позволяет приобретать контент, настраивать автоматическую регистрацию устройств в системах MDM, создавать учетные записи для учащихся и сотрудников, а также настраивать курсы iTunes U. Служба Apple School Manager предоставляется через Интернет и предназначена для технических руководителей, ИТ-администраторов, сотрудников и преподавателей.

Подробнее об Apple School Manager можно узнать на веб-странице https://help.apple.com/schoolmanager/

Регистрация устройствПрограмма регистрации устройств (DEP), входящая в состав Apple School Manager и программ развертывания Apple, обеспечивает быстрый и удобный способ развертывания устройств iOS, приобретенных организацией напрямую у Apple или у авторизованных реселлеров Apple и операторов связи, участвующих в программе. Устройства iOS под управлением iOS 11 или новее можно также добавить в DEP после покупки, используя Apple Configurator 2.

Регистрацию устройств в MDM можно выполнить автоматически — учреждению не нужно будет физически настраивать или готовить устройства перед выдачей пользователям. После регистрации в

Page 88: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

88Руководство по безопасности iOS — информационный документ | Январь 2018 г.

программе администратору необходимо войти в систему на веб-сайте программы и связать программу со своей системой MDM. Затем можно назначить приобретенные устройства пользователям через MDM. После назначения пользователя выполняется автоматическая установка конфигурации, ограничений и параметров управления, заданных в MDM. В процессе передачи все данные, пересылаемые между устройствами и серверами Apple, шифруются по протоколу HTTPS (SSL).

Также можно упростить процесс настройки для пользователей, убрав из Ассистента настройки определенные шаги, чтобы помочь пользователям быстро приступить к работе. Администраторы могут указать, разрешено ли пользователям удаление профиля MDM с устройства, и гарантировать применение ограничений с самого начала использования устройства. После распаковки и активации устройство может зарегистрироваться в системе MDM данной организации, и все управляемые настройки, программы и книги устанавливаются автоматически.

Более подробную информацию для компаний можно найти на веб-странице https://help.apple.com/deployment/business/

Более подробную информацию для образовательных учреждений можно найти на веб-странице https://help.apple.com/schoolmanager/

Примечание. Регистрация устройств доступна не во всех странах и регионах.

Apple Configurator 2Apple Configurator 2 для macOS является еще одним средством (помимо MDM) для настройки и предварительного конфигурирования устройств iOS и Apple TV перед выдачей пользователям. C помощью Apple Configurator 2 можно быстро сконфигурировать устройства, добавив на них программы, данные, ограничения и настройки.

Apple Configurator 2 позволяет использовать Apple School Manager (для образовательных учреждений) или программу регистрации устройств (для компаний) для регистрации устройств в системах MDM без необходимости для пользователей использовать Ассистент настройки. С помощью Apple Configurator 2 можно также добавлять устройства iOS и Apple TV в Apple School Manager или программу регистрации устройств после покупки.

Подробнее об Apple Configurator 2 можно узнать на веб-странице https://help.apple.com/configurator/mac/

КонтрольВо время настройки организация может задать конфигурацию контролируемого устройства. Контроль указывает, что устройством владеет компания, что предоставляет дополнительные возможности управления его конфигурацией и ограничениями. Во время настройки устройства можно контролировать с помощью Apple School Manager, программы регистрации устройств или Apple Configurator 2. Для контроля над устройством необходимо выполнить его стирание и переустановить операционную систему.

Page 89: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

89Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Более подробно о настройке и управлении устройствами с помощью MDM или Apple Configurator 2 можно узнать на веб-странице https://help.apple.com/deployment/ios/

ОграниченияАдминистраторы могут включать (и иногда отключать) ограничения, чтобы запретить пользователям доступ к определенным программам, службам или функциям устройства. Ограничения отправляются на устройства в составе компонента ограничений, который прилагается к профилю конфигурации. Ограничения могут применяться к устройствам iOS, tvOS и macOS. Некоторые ограничения на управляемом iPhone можно дублировать на Apple Watch, с которым создана пара.

Актуальный список для ИТ-администраторов доступен на веб-странице https://help.apple.com/deployment/ios/#/apdbd6309354

Удаленное стираниеАдминистратор или пользователь может выполнить удаленное стирание данных с устройств iOS. Мгновенное удаленное стирание реализуется путем надежного удаления ключа шифрования блочного хранения из стираемого накопителя, в результате чего все данные становятся недоступными. Удаленное стирание может быть запущено MDM, Exchange или iCloud.

Когда MDM или iCloud отдают команду удаленного стирания, устройство отправляет подтверждение и выполняет стирание. При запуске удаленного стирания через Exchange устройство сначала регистрируется на сервере Exchange, а затем выполняет стирание.

Для стирания данных со своего устройства пользователи могут использовать программу «Настройки». И как уже упоминалось, устройства можно настроить на автоматическое выполнение стирания после ряда неудачных попыток ввода код-пароля.

Режим пропажи В случае потери или кражи контролируемого устройства с iOS 9.3 или новее администратор MDM может удаленно включить на нем режим пропажи. После включения режима пропажи текущий пользователь отключается от системы, и устройство нельзя разблокировать. На экране отображается настроенное администратором сообщение, например номер телефона, по которому следует позвонить в случае обнаружения устройства. Если устройство переведено в режим пропажи, администратор может запросить у устройства его текущее местоположение и воспроизвести на нем звуковой сигнал. Единственным способом выхода из режима пропажи является его отключение администратором. При этом пользователь получает уведомление об этом событии на экране блокировки или на экране «Домой».

Page 90: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

90Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Блокировка активации Если на устройстве включена функция «Найти iPhone», для повторной активации устройства необходимо будет ввести учетные данные Apple ID владельца или предыдущий код-пароль устройства.

Если устройство принадлежит организации, рекомендуется сделать его контролируемым, чтобы организация могла сама управлять блокировкой активации, а не полагаться на то, что пользователь введет свои учетные данные Apple ID для повторной активации устройства.

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

По умолчанию блокировка активации на контролируемых устройствах остается отключена, даже если пользователь включает функцию «Найти iPhone». Однако система MDM может извлечь обходной код и разрешить включение блокировки активации на устройстве. Если система MDM включает блокировку активации, когда функция «Найти iPhone» включена, блокировка включается незамедлительно. Если сервер MDM включает блокировку активации, когда функция «Найти iPhone» выключена, блокировка включается, как только пользователь активирует функцию «Найти iPhone».

Если устройство используется в образовательной среде с управляемым Apple ID, созданным через Apple School Manager, то блокировку активации можно привязать к Apple ID администратора, а не Apple ID пользователя, или отключить с помощью обходного кода устройства.

Page 91: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

91Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Настройки конфиденциальности

Компания Apple отличается серьезным подходом к конфиденциальности покупателей и предлагает множество встроенных настроек и параметров, используя которые пользователи iOS могут указать, как и когда программы могут использовать их информацию, а также определить круг используемой информации.

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

Пользователи получают детальный контроль над тем, как системные службы используют информацию о местонахождении. Например, пользователи могут исключить информацию о местонахождении из данных, собираемых службами аналитики Apple, которые предназначены для усовершенствования iOS, работы Siri, использования геопозиции для предложений Siri, оценки местной дорожной обстановки и важных мест, посещенных в прошлом.

Доступ к персональным данным iOS не позволяет программам получать доступ к персональной информации пользователя без его разрешения. Кроме того, пользователь может открыть Настройки и посмотреть, какие программы имеют доступ к определенной информации, а также предоставить или отменить доступ на будущее. Пользователь может настроить доступ к следующим элементам:• Контакты • Микрофон• Календари • Камера• Напоминания • HomeKit• Фото • Медданные• Двигательная активность и фитнес • Распознавание речи• Службы геолокации • Общий доступ Bluetooth

Page 92: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

92Руководство по безопасности iOS — информационный документ | Январь 2018 г.

• Apple Music • Медиатека пользователя• Действия с музыкой и видео • Учетные записи социальных сетей, таких как Twitter и Facebook

Если пользователь входит в iCloud, программы по умолчанию получают доступ к iCloud Drive. Пользователи могут управлять доступом отдельных программ в разделе «iCloud» в Настройках. Кроме того, iOS позволяет настроить ограничения, чтобы не допустить передачи данных между программами и учетными записями, установленными системой MDM и установленными пользователем.

Политика конфиденциальностиПолитика конфиденциальности Apple опубликована на веб-страницеhttps://www.apple.com/ru/legal/privacy

Page 93: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

93Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Вознаграждение за обнаружение уязвимостей AppleКомпания Apple поощряет исследователей, которые сообщают ей о критических проблемах. Чтобы получить право на вознаграждение за обнаружение уязвимостей Apple, исследователь должен предоставить четкий отчет и подтверждение концепции. Уязвимость должна затрагивать последнюю версию iOS или новейшее оборудование. Точная сумма выплаты определяется после рассмотрения заявки компанией Apple. При этом учитываются такие критерии, как новизна, вероятность проявления и требуемая степень участия пользователя.

После получения всей необходимой информации Apple делает все возможное для скорейшего устранения подтвержденных проблем. В соответствующих случаях Apple обеспечивает публичное признание заслуг исследователя, если не получено иных указаний.

Категория Максимальная выплата (долл. США)

Компоненты прошивки безопасной последовательности загрузки 200 000

Извлечение конфиденциального содержимого, защищенного Secure Enclave 100 000

Выполнение произвольного кода с привилегиями ядра 50 000

Несанкционированный доступ к данным учетной записи iCloud на серверах Apple 50 000

Доступ из помещенного в «песочницу» процесса к данным пользователя,

находящимся за пределами этой «песочницы» 25 000

Page 94: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

94Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Заключение

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

Безопасность заложена в основу iOS. В iOS предприятия найдут все, что им нужно — от платформы и сети до программ. Эти компоненты обеспечивают iOS лучший в отрасли уровень безопасности без ущерба для удобства пользователей.

Apple использует согласованную, интегрированную инфраструктуру безопасности в рамках iOS и всей цифровой среды программ для iOS. Аппаратное шифрование хранилища позволяет выполнять удаленное стирание, если устройство потеряно, а также полностью стирать всю корпоративную и личную информацию при продаже или передаче устройства другому владельцу. Диагностическая информация собирается анонимно.

При разработке программ для iOS компания Apple учитывала самые последние требования к безопасности. Например, iMessage и FaceTime обеспечивают шифрование от клиента до клиента. Для программ сторонних разработчиков используется сочетание обязательной подписи кода, «песочницы» и прав. Пользователи получают лучшую в отрасли защиту от вирусов, вредоносных программ и других уязвимостей. Чтобы дополнительно оградить пользователей от этих рисков, все программы для iOS проходят проверку, прежде чем появиться в App Store.

Чтобы максимально эффективно использовать обширные функции безопасности, встроенные в iOS, компаниям рекомендуется проанализировать свои политики в области ИТ и безопасности и убедиться, что они задействуют все возможности многоуровневой системы безопасности, предлагаемые этой платформой.

В Apple есть специальная команда по безопасности, которая отвечает за поддержку всех продуктов Apple. Эта команда проводит аудит безопасности и тестирование продуктов, находящихся в стадии разработки, а также выпущенных продуктов. Команда Apple предоставляет необходимые инструменты, проводит обучение и активно отслеживает сообщения о новых проблемах и угрозах безопасности. Компания Apple является членом форума FIRST, который объединяет группы по безопасности и реагированию на инциденты.

Информацию о том, как сообщить о проблемах в Apple и подписаться на уведомления о безопасности, Вы найдете на странице https://www.apple.com/ru/support/security

Page 95: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

95Руководство по безопасности iOS — информационный документ | Январь 2018 г.

ГлоссарийСлучайное расположение в адресномпространстве (ASLR)

Технология, используемая iOS для того, чтобы значительно усложнить использование программных ошибок для злоумышленников. Поскольку предсказать адреса памяти и смещения невозможно, вредоносный код не может задать для них конкретные значения. В iOS 5 или новее расположение всех системных программ и библиотек задается случайным образом. Если программы сторонних разработчиков скомпилированы как переместимые исполнимые файлы, их адреса также задаются случайным образом.

Служба Apple Push Notification (APNs)

Доступная по всему миру служба Apple, которая обеспечивает доставку push-уведомлений на устройства iOS.

Boot ROM Самый первый код, исполняемый процессором устройства при первой загрузке. Этот код является неотъемлемой частью процессора и не может быть изменен компанией Apple или злоумышленником.

Защита данных Механизм защиты файлов и связки ключей для iOS. Это понятие также относится к API, используемым программами для защиты файлов и элементов связки ключей.

Обновление прошивки устрой-ства (DFU)

Режим, в котором код Boot ROM устройства ожидает восстановления через USB. Экран остается черным, однако при подключении к компьютеру с запущенной программой iTunes отображается следующее сообщение: «iTunes обнаружила iPad в режиме восстановления. Необходимо восстановить этот iPad перед использованием с iTunes».

ECID Уникальный 64-битный идентификатор процессора, установленного в устройстве iOS. Если ответить на вызов на одном устройстве, выдача звукового сигнала на находящихся поблизости связанных устройствах прекращается после передачи короткого оповещения через Bluetooth Low Energy 4.0. Байты оповещения шифруются тем же методом, который используется для оповещений Handoff. Используется как часть процедуры персонализации и не считается секретным.

Стираемый накопитель Выделенная область в хранилище NAND, используемая для хранения криптографических ключей и поддерживающая прямую адресацию и безопасное стирание. Стираемый накопитель не обеспечивает защиту, если злоумышленник физически завладевает устройством, однако хранящиеся в нем ключи могут быть использованы как часть иерархии ключей для обеспечения быстрого стирания и повышения безопасности.

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

Идентификатор группы (GID) Похож на UID, но совпадает для всех процессоров одного класса.

Аппаратный модуль системы безопасности (HSM)

Специализированный, устойчивый к взлому компьютер, который защищает цифровые ключи и управляет ими.

iBoot Код, загружаемый LLB и, в свою очередь, загружающий XNU как часть безопасной последовательности загрузки.

Служба идентификации (IDS) Каталог Apple, в котором хранятся открытые ключи iMessage, адреса APNs, а также номера телефонов и адреса электронной почты, используемые для поиска ключей и адресов устройств.

Интегральная микросхема (IC) Также известна как микрочип.

Joint Test Action Group (JTAG) Стандартное средство отладки оборудования, используемое программистами и разработчиками микросхем.

Page 96: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

96Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Хранилище ключей Структура данных, используемая для хранения коллекции ключей класса. Все типы (пользователь, устройство, система, резервное копирование, передача и резервное копирование iCloud) имеют одинаковый формат:• Заголовок, содержащий следующие элементы:

– версия (имеет значение 3, начиная с iOS 5); – тип (система, резервное копирование, передача или резервное

копирование iCloud); – UUID хранилища ключей; – HMAC, если хранилище ключей подписано; – способ защиты ключей класса: привязка к UID или PBKDF2, а также

случайное значение («соль») и число повторений.• Список ключей класса:

– UUID ключа; – класс (класс защиты данных файла или связки ключей); – тип защиты (ключ на основе только UID; ключ на основе UID и

код-пароля); – защищенный ключ класса; – открытый ключ для асимметричных классов.

Связка ключей Инфраструктура и набор API, используемые iOS и программами сторонних разработчиков для хранения и извлечения паролей, ключей и других конфиденциальных учетных данных.

Защита ключа Шифрование одного ключа с помощью другого ключа. iOS использует защиту ключей с помощью шифрования NIST AES по алгоритму RFC 3394.

Низкоуровневый загрузчик (LLB) Код, загружаемый Boot ROM и, в свою очередь, загружающий iBoot как часть безопасной последовательности загрузки.

Ключ файла 256-битный ключ AES, используемый для шифрования файла в файловой системе. Ключ файла защищается с помощью ключа класса и хранится в метаданных файла.

Профиль обеспечения Файл plist, который подписан компанией Apple и содержит набор субъектов и прав, позволяющих устанавливать и тестировать программы на устройстве iOS. Профиль обеспечения разработки содержит список устройств, выбранных разработчиком для специализированного распространения, а профиль обеспечения распространения содержит идентификатор корпоративной программы.

Угловое представление дактило-скопического узора

Математическое представление направления и толщины линий дактилоскопического узора, полученное из части отпечатка пальца.

Смарт-карта Интегрированная, встроенная цепь, которая обеспечивает безопасную идентификацию, аутентификацию и хранение данных.

Система на кристалле (SoC) Интегральная микросхема (IC), которая объединяет несколько компонентов на одном кристалле. Secure Enclave — это SoC внутри центральных процессоров Apple A7 и новее.

Привязка Интегральная микросхема (IC), которая объединяет несколько компонентов на одном кристалле. Secure Enclave — это SoC внутри центральных процессоров Apple A7 и новее. Процесс превращения код-пароля пользователя в криптографический ключ и его усиления с помощью UID устройства. В результате атака методом перебора должна обязательно выполняться на конкретном устройстве, что ограничивает скорость перебора и не позволяет выполнять его параллельно. В качестве алгоритма привязки используется PBKDF2: в качестве псевдослучайной функции на каждой итерации используется AES, согласованный с UID устройства.

Универсальный идентификатор ресурса (URI)

Символьная строка, которая идентифицирует веб-ресурс.

Page 97: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

97Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Уникальный идентификатор (UID) 256-битный ключ AES, вшитый в процессор на этапе производства. Этот ключ не может быть считан прошивкой или программой и используется только аппаратным AES-модулем процессора. Для получения фактического ключа злоумышленнику необходимо провести крайне сложную и дорогостоящую физическую атаку на микросхему процессора. UID не связан ни с каким другим идентификатором на устройстве, включая UDID.

XNU Ядро, лежащее в центре операционных систем iOS и macOS. Это ядро считается доверенным и обеспечивает применение специальных средств безопасности, таких как подпись кода, «песочница», проверка прав и ASLR.

Page 98: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

98Руководство по безопасности iOS — информационный документ | Январь 2018 г.

История правок документа

Дата СводкаЯнварь 2018 г. Обновлено для iOS 11.2

• Apple Pay CashОбновлено для iOS 11.1• Сертификаты и программы обеспечения безопасно-

сти• Touch ID и Face ID• Общие заметки• Сквозное шифрование CloudKit• TLS• Apple Pay, оплата покупок в Интернете с помощью

Apple Pay• Предложения Siri• Общий iPad• Подробнее о содержимом iOS 11, относящемся к обе-

спечению безопасности, можно узнать на веб-стра-нице https://support.apple.com/ru-ru/HT208112

Июль 2017 г. Обновлено для iOS 10.3• System Enclave• Защита данных в файлах• Хранилища ключей• Сертификаты и программы обеспечения безопасно-

сти• SiriKit• HealthKit• Безопасность сети• Bluetooth• Общий iPad• Режим пропажи• Блокировка активации• Настройки конфиденциальности• Подробнее о контенте iOS 10.3, относящемся к обе-

спечению безопасности, можно узнать на веб-стра-нице https://support.apple.com/ru-ru/HT207617

Март 2017 г. Обновлено для iOS 10

• Безопасность системы

• Классы защиты данных

• Сертификаты и программы обеспечения безопасно-сти

• HomeKit, ReplayKit, SiriKit• Apple Watch• Wi-Fi, VPN• Единый вход• Apple Pay, оплата покупок в Интернете с помощью

Apple Pay

Page 99: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

99Руководство по безопасности iOS — информационный документ | Январь 2018 г.

Дата Сводка• Подготовка кредитных, дебетовых и предоплаченных

карт• Предложения Safari• Подробнее о содержимом iOS 10, относящемся к обе-

спечению безопасности, можно узнать на веб-стра-нице https://support.apple.com/ru-ru/HT207143

Май 2016 г. Обновлено для iOS 9.3

• Управляемые Apple ID

• Двухфакторная аутентификация для Apple ID

• Хранилища ключей

• Сертификаты безопасности

• Режим пропажи, блокировка активации

• Секретные заметки

• Apple School Manager, общий iPad

• Подробнее о контенте iOS 9.3, относящемся к обе-спечению безопасности, можно узнать на веб-стра-нице https://support.apple.com/ru-ru/HT206166

Сентябрь 2015 г. Обновлено для iOS 9

• Блокировка активации Apple Watch

• Политики код-паролей;

• Поддержка API Touch ID

• Для защиты данных процессор A8 использует AES-XTS

• Хранилища ключей для обновления программного обеспечения без участия пользователя

• Обновления сертификации

• Модель доверия для корпоративных программ

• Защита данных для закладок Safari

• App Transport Security

• Спецификации VPN

• Удаленный доступ к iCloud для HomeKit

• Скидочные карты в Apple Pay, программа эмитента карты в Apple Pay

• Индексирование содержимого устройства для поис-ка Spotlight

• Модель создания пары iOS

• Apple Configurator 2

• Ограничения

• Подробнее о контенте iOS 9, относящемся к обеспе-чению безопасности, можно узнать на веб-странице https://support.apple.com/ru-ru/HT205212

Page 100: Безопасность iOS - Apple · PDF fileНажнп аджноярмнрсз iOS Ляпс 2017в. 3 Стр. 44 Интернет-службы Apple ID iMessage FaceTime iCloud

100

© 2018 Apple Inc. Все права защищены.

Apple, логотип Apple, AirDrop, AirPlay, Apple Music, Apple Pay, Apple TV, Apple Watch, Bonjour, CarPlay, Face ID, FaceTime, Handoff, iMessage, iPad, iPad Air, iPhone, iPod touch, iTunes, iTunes U, Keychain, Lightning, Mac, macOS, OS X, Safari, Siri, Spotlight, Touch ID, watchOS и Xcode являются товарными знаками Apple Inc., зарегистрированными в США и других странах.

HealthKit, HomeKit, SiriKit и tvOS являются товарными знаками Apple Inc.

AppleCare, App Store, CloudKit, iBooks Store, iCloud, iCloud Drive, iCloud Keychain и iTunes Store являются знаками обслуживания Apple Inc., зарегистрированными в США и других странах.

IOS является товарным знаком или зарегистрированным товарным знаком компании Cisco в США и дру-гих странах и используется по лицензии.

Словесный товарный знак и логотипы Bluetooth® являются зарегистрированными товарными знаками Bluetooth SIG, Inc. и используются компанией Apple по лицензии.

Java является зарегистрированным товарным знаком Oracle и/или ее дочерних компаний.

Другие названия продуктов и компаний, упомянутые в этом документе, могут являться товарными знака-ми соответствующих компаний. Характеристики продуктов могут быть изменены без уведомления.

Январь 2018 г.