Ещё раз об учётных записях разработчика

31 мая, 2024, Oleg Afonin
Рубрика: «Полезные советы»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

О программе Apple для разработчиков в контексте мобильной криминалистики мы писали неоднократно. Учётная запись Apple ID нужна для установки на исследуемое устройство агента-экстрактора, позволяющего получить доступ к файловой системе и связке ключей. В руководстве к iOS Forensic Toolkit мы усиленно рекомендуем зарегистрировать учётную запись в качестве разработчика. В чём смысл этой регистрации, для чего эксперту-криминалисту нужно становиться «зарегистрированным разработчиком» и можно ли без этого обойтись?

Для чего вообще нужна учётная запись?

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

Агент-экстрактор поставляется в виде стандартного для iOS пакета – файла с расширением .ipa, представляющего собой обычный архив в формате ZIP, в котором содержится двоичный исполняемый файл. Для того, чтобы пакет можно было установить на устройстве, iOS потребует сверки цифровой подписи. В отличие от большинства других платформ, в iOS цифровая подпись удостоверяет не только разработчика приложения, но и идентифицирует устройство или устройства, на которые может быть установлено приложение. Для того, чтобы подписать пакет, используется учётная запись Apple ID.

Учётные записи Apple ID могут быть нескольких типов: обычные и учётные записи разработчиков, которые, в свою очередь, могут быть личными, зарегистрированными на организацию и корпоративными. Нас интересуют в первую очередь учётные записи разработчиков, во вторую — обычные; корпоративные учётные записи разработчиков (Apple Developer Enterprise Program) в контексте мобильной криминалистики интереса не представляют.

Что такое «учётная запись разработчика»?

Всё просто: это обычный Apple ID, зарегистрированный в программе Apple для разработчиков. Для частных лиц и организаций стоимость регистрации — $99 в год, для крупных корпораций соответственно, выше.

Достоинства и недостатки учётных записей разработчиков

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

Соответственно, для некоторых (старых) учётных записей разработчиков (см. ниже) установка агента возможна в режиме офлайн, без связи с Интернет. Это – важнейшее преимущество старых учётных записей для разработчиков с точки зрения криминалистики. А что по поводу того, что цифровой сертификат в iOS выдаётся для каждого конкретного устройства? В этом случае UDID устройства отправляется в программу разработчика (и там сохраняется в счёт доступных 100 устройств). Для данного конкретного UDID генерируется сертификат, которым iOS Forensic Toolkit подписывает IPA и устанавливает его на устройство. Этот сертификат будет уникален именно для этого устройства, и никаких проверок для него больше не требуется.

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

Второй недостаток — полностью офлайновая установка возможна только для старых учётных записей, зарегистрированных до июля 2021 года. Если у вас нет такой учётной записи, то устройству, на которое устанавливается агент, всё равно придётся выйти в онлайн при первом запуске агента, что сводит основное преимущество таких учётных записей к нулю.

Впрочем, офлайновая установка — не единственное преимущество учётных записей разработчика. Так, посредством обычной учётной записи агент-экстрактор можно установить на iPhone или iPad только с компьютера под управлением macOS, а учётная запись разработчика позволяет это сделать и с компьютеров Windows и Linux.

Старые учётные записи разработчика: до июня 2021

Если у вас есть учётная запись разработчика, зарегистрированная до 6 июня 2021 года — вам повезло: вы сможете устанавливать и запускать приложение агента-экстрактора в полностью офлайновом режиме.

Недавно зарегистрированные учётные записи разработчика

Если же вы зарегистрировали учётную запись разработчика недавно, то вам придётся позволить устройству выйти в интернет при первом запуске агента. Это небезопасно; мы усиленно рекомендуем использовать файрволл (программный или аппаратный). На сайте Apple приводится дополнительная информация:

New Apple Developer Program memberships created after June 6, 2021, require development- and ad-hoc-signed apps for iOS, iPadOS, and tvOS to check in with the PPQ service when the app is first launched. Your device must be connected to the internet to verify the certificate used to sign your app. If you’re behind a firewall, make sure that it’s configured to allow connections to https://ppq.apple.com. If the device can’t successfully make a connection, the app may not launch. If your app is running in a highly restrictive network environment or you need to temporarily build offline, alternative workflows are available.

Для новых участников программы Apple для разработчиков, созданных после 6 июня 2021 года, требуется, чтобы приложения для iOS, iPadOS и tvOS, подписанные разработчиками, регистрировались в службе PPQ при первом запуске приложения. Ваше устройство должно быть подключено к Интернету, чтобы проверить сертификат, используемый для подписи вашего приложения. Если вы находитесь за брандмауэром, убедитесь, что он настроен на разрешение соединений с https://ppq.apple.com. Если устройство не сможет успешно установить соединение, приложение может не запуститься. Если ваше приложение работает в сильно ограниченном сетевом окружении или вам нужно временно создать приложение в автономном режиме, можно воспользоваться альтернативными рабочими процессами.

Частное лицо или организация?

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

Обычные учётные записи

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

Ограничения учётных записей

Для учётных записей разработчика ограничение — по 100 устройств каждого типа (iPhone, iPad, Apple TV и так далее) в год. Удалить раз зарегистрированное устройство невозможно; счётчик сбрасывается ежегодно при продлении участия в программе для разработчиков. Кроме того, после регистрации первых 10 устройств при регистрации очередного устройства могут быть задержки до 3 суток. Наконец, лучше всего работать с учётными записями разработчиков через доверенный Mac, на котором присутствует данная учётная запись: в этом случае вам не придётся каждый раз проходить двухфакторную аутентификацию, а установка агента будет работать более надёжно.

Для обычных учётных записей действует ограничение в 3 устройства в неделю. Кроме того, обычные учётные записи невозможно использовать для подписи агента-экстрактора на компьютерах с Windows или Linux; поддерживаются только Mac. Также для всех обычных учётных записей в обязательном порядке требуется онлайн-верификация цифровой подписи (усиленно рекомендуем использовать файрволл).

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

Заключение

Нужна ли вам учётная запись разработчика? Если у вас её ещё нет, то основными преимуществом будет возможность подписи агента с компьютеров Windows и Linux; при этом вам по-прежнему придётся защищать устройство файрволлом в момент первого запуска агента. Если же у вас уже есть старая учётная запись для разработчиков — продолжайте её использовать. Наконец, если вы работаете с компьютера с macOS, то каких-либо значимых преимуществ у учётной записи разработчика для вас не будет: агент можно подписать и обычной, а выпускать устройство в интернет придётся так или иначе. Кроме того, рекомендуем ознакомиться с нашей статьёй Агент-экстрактор iOS Forensic Toolkit: типичные проблемы и решения.


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Elcomsoft iOS Forensic Toolkit

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

Официальная страница Elcomsoft iOS Forensic Toolkit »

НАШИ НОВОСТИ