Пользователи Android считают, что на iPhone приложения ставятся только из магазина. Это не так. Сегодня выясняем, как обойти ограничения Apple и пользоваться альтернативным софтом.
Смартфоны Apple защищены лучше, чем Android-устройства, ведь один производитель контролирует создание железа и софта. И несмотря на то, что у спецслужб наверняка есть способы выудить данные из запароленных устройств, простому пользователю эти штуки вряд ли помогут поставить взломанный YouTube или торрент-клиент. Однако и тут есть интересные варианты.
- Про «джейлбрейк»
- Вернуть утраченное
- Притвориться разработчиком
- Воспользоваться облачными технологиями
- Безопасно ли это?
- Счастье для всех даром
- Рекомендации
- Что нужно сделать в iOS 16 перед установкой любого стороннего приложения
- Как загрузить сторонний установщик приложений Scarlet на iPhone
- Как устанавливать приложения через Scarlet
- Сколько будет работать данный способ
- Артём Суровцев
- Установка приложений из файла *. ipa напрямую с сайта без компьютера
- Как установить программу на iPhone через *. ipa файл
- Как скачать AppSync
- Установка ipa приложений с помощью iTunes
- Установка ipa с помощью сторонних утилит
- IFunBox
- ITools
- Что такое стороннее приложение, имеющее разрешение ipa на iPhone
- Как установить ipa-приложение при помощи iTunes на iPhone
- Как установить ipa-приложение при помощи сторонних программ на iPhone
- Другие возможные варианты
- Apple Configurator
- Cydia Impactor
- Особенности установки ipa-приложений через vShare на iPhone
- Возможные сложности при установке ipa-приложений на iPhone
- Введение
- Скачиваем и инсталлируем AppSync
- Устанавливаем ipa через iTunes
- Использование сторонних программ
- Подведём итоги
- Как установить ipa на iPhone без джейлбрейка?
- Как распаковать IPA на айфоне?
- Как установить приложение на iPhone без Apple ID?
- Как установить IPA через Filza?
- Как установить скачанные игры на iPhone?
- Как устанавливать программы через iTunes?
- Подготовка окружения
- Установка и запуск
- Анализ трафика приложения
- Хранение данных на устройстве
- Локальная аутентификация
Про «джейлбрейк»
«Джейлбрейк» — это аналог root-доступа на Android: позволяет обойти ограничения ОС и делать с устройством практически что угодно. К сожалению, развитие систем безопасности сделало такой метод практически бесполезным. Если iOS 15 худо-бедно взломали, и отдельные старые смартфоны можно избавить от навязчивой заботы Apple, то iPhone 11 и более поздние модели не взламываются принципиально. В них специальный защитный чип контролирует целостность загрузчика, а сама iOS 15 дополнительно имеет ряд эффективных мер, предотвращающих запуск неизвестного кода.
Вернуть утраченное
Допустим, вы купили новенький iPhone, восстановили программы из облака, а санкционных приложений нет. Беда! Веб-версия банкинга не всегда удобна и не так безопасна, как нативное приложение. Что делать? Перетащить IPA (аналог APK на Android) со старого смартфона на новый!
Берём софт iMazing, подключаем старый смартфон, бэкапим нужные приложения, подцепляем новый и восстанавливаем. Полчаса трудов — и Сбер с «Альфой» снова у вас на телефоне. Способ не идеальный, ведь стащить «чужой» банк-клиент не выйдет. Приложения при установке привязываются к конкретному аккаунту, и если в «доноре» и «реципиенте» ключи не совпадут, работать не будут.
Притвориться разработчиком
Так как программы для iPhone кто-то делает и отлаживает, должен быть механизм запуска тестовых версий IPA на железе смартфона, а не в эмуляторе. Именно этим методом некоторые и ставят на смартфон недоступные приложения. Есть даже ряд сервисов, автоматизирующих за вас рутину с установкой софта.
Плюс такого метода — в простоте и эффективности. Если где-то есть неподписанная версия IPA интересующего вас приложения, вы запросто можете поставить её на свой телефон или планшет и пользоваться как ни в чём не бывало. Минус такого подхода — подпись не вечная, и раз в 1-2 недели надо обновлять ключи, подключая телефон к компьютеру, с которого вы заливали софт, иначе приложения перестанут работать.
Воспользоваться облачными технологиями
Третий метод — самый эффективный и интересный, так как снова эксплуатирует «Режим разработчика», но при этом использует ещё и любезно предоставленный самой Apple инструментарий для бета-тестирования приложений. Сервисов несколько, но мы протестировали один из наиболее популярных — Lazy Shop.
Работает эта штука следующим образом: вам покупают сертификат разработчика (работает 1 год), заводят специальный виртуальный сервер в облаке и подписывают нужные приложения прямо онлайн. Кроме того, в Lazy Shop есть каталог «допиленного» софта — вроде TikTok со встроенной сменой региона, YouTube без рекламы и продвинутого клиента VK, который позволяет делать больше, чем обычный. Разумеется, весь этот аттракцион не бесплатный, но цены всё равно привлекательные.
Безопасно ли это?
Приложения в iOS тщательно изолированы друг от друга: если вы не поставите откровенную залипуху и лично не предоставите ей доступ ко всем своим данным, включая банковские, бояться нечего. Здесь риски ничем не отличаются от установки APK из неизвестных источников.
Самое тревожное для пользователя в том, что некоторые сервисы просят авторизоваться в них через вашу учётку App Store, но это необходимо для получения разработческого ПО, которое используется для подписи IPA в облаке. Если очень страшно за личные данные, смените пароль на случайный, авторизуйтесь, а затем просто верните старый.
Счастье для всех даром
На самом деле ситуация с приложениями на iOS заботит не только пользователей. Законодателям Европы кажется, что у Apple многовато власти и маловато конкуренции. Поэтому они хотят официально обязать компанию дать пользователям больше свободы. В числе требований — зарядка от Type-C (уже принято и обязательно к исполнению с 2024 года), установка приложений из альтернативных магазинов, разрешение разработчикам использовать собственный движок браузера (сейчас любой браузер внутри работает на WebKit’е от Safari), возможность выбора сервисов облачной синхронизации по умолчанию, а также снятие ограничений на доступ к NFC и платёжному терминалу смартфона. От универсального кабеля Apple уже не отвертится — будем надеяться, что и по остальным пунктам американского гиганта дожмут.
Есть, конечно, ещё один вариант — перейти на Android. Если получится найти устройство, которое будет устраивать размерами, автономностью и качеством съёмки. Да и от экосистемы аксессуаров придётся отказаться, так что подобное решение подходит далеко не всем. Кстати, пользователям смартфонов с операционкой Google не стоит расслабляться и упражняться в остроумии в комментариях.
«Корпорация добра» из года в год успешно закручивает гайки по части возможностей смартфонов — с каждой новой версией Android у APK всё меньше прав на доступ к железу (например, в Android 13 запрещено записывать звонки). А разблокировка загрузчика и установка кастомных прошивок осложняется сложными программно-аппаратными защитами и проверкой целостности системы, блокирующей работу NFC-платежей. Да и про запрет установки APK говорится не первый год — рано или поздно сделают. Разумеется, с заботой о вашей безопасности. И чтобы многомиллиардная корпорация не теряла копеечку на комиссиях с установленных в обход магазина приложений.
—
12 сентября 2022, 09:20
В последний месяц пользователи iPhone и iPad в РФ столкнулись с неожиданным последствием антироссийских санкций — наши любимые приложения, которые мы используем ежедневно, начали пропадать из App Store. Первыми пострадали клиенты банков ВТБ и «Совком», а теперь к ним присоединились пользователи «Альфа Банка», и что еще хуже — «Сбера», которым в России пользуются действительно очень много людей.
UPD: 26 сентября 2022 года из App Store пропали также приложения холдинга VK:
- ВКонтакте
- ВК Мессенджер
- ВК Музыка
- ВК Клипы
- Почта Mail.RU
- Юла.
Наверное, покупая iPhone или iPad, все мы слышали про ограничения файловой системы и про то, что приложения можно устанавливать только из App Store. И уж точно мало кто ожидал, что однажды проснется утром и не найдет в этом магазине таких крупных игроков, как «Сбербанк». Но имеем что имеем.
Для «консервации» приложения мы будем использовать программу для ПК (или Mac) под названием iMazing. Она имеет встроенные покупки, но при этом может использоваться бесплатно в ограниченном режиме без ограничений по времени. Бесплатной демо-версии нам будет достаточно для поставленных задач.
Отмечу, что iMazing — это не единственный вариант. Cуществует еще несколько китайских утилит, которые тоже умеют сохранять приложения «про запас». Можете выбрать любой другой софт по своему желанию. В этом материале я буду использовать именно iMazing, поскольку он на мой взгляд не так сложен в освоении.
Допустим, что вы уже скачали и установили iMazing с официального сайта. Запускайте его — вы увидите приглашение подключить устройство к компьютеру.
- Именно это нам и нужно сделать: разблокируйте свой iPhone и подключите его при помощи кабеля.
- Подтвердите сопряжение, если подключаетесь впервые.
- Теперь в левой части окна iMazing мы видим разделы контента на вашем устройстве. Прокрутите список немного вниз и найдите ярлычок «Приложения» (иконка App Store). Выберите его и подождите, пока программа подгрузит список ваших приложений.
- Установленный на подключенном айфоне софт отобразится сеткой в алфавитном порядке. Здесь вам нужно найти приложение, которое вы хотели бы «законсервировать». Допустим, это «Альфа Банк».
- Нажмите на него правой кнопкой мыши и в контекстном меню выберите «Сохранить на Mac» (или на ПК). Другой вариант — кликнуть на файл и выбрать одноименную кнопку на панели внизу.
- Далее выберите место для сохранения приложения — например, рабочий стол, чтобы долго не искать. Внимательно прочтите предупреждения, которые отобразит iMazing: программа оповещает вас, что приложение будет сохранено без своего содержимого (то есть в «чистом виде, как в App Store), а далее запросит разрешение на создание резервной копии. Это обязательный шаг, поскольку установочный пакет приложения iMazing извлекает не с самого устройства, а из его резервной копии. Защита девайса не позволяет «вытаскивать» с него софт напрямую.
Готово! На вашем рабочем столе (или в папке, которую вы выбрали в начале) появится файл с названием приложения и расширением .imazingapp — это и есть ваша «консерва», то есть установочный пакет приложения. Этот файл можно сохранить в надежном месте: в облачном хранилище, на флешке или же просто на компьютере в специальной папке.
Кстати, резервная копия создается всего один раз. Все последующие приложения вы сможете достать уже сразу, просто дождавшись, пока пакет извлечется из архива. Только есть нюанс: вы получите именно те версии приложений, которые были на устройстве в момент снятия копии. Впрочем, если само приложений уже удалено из App Store и не получает апдейтов, это уже не так важно.
2. Устанавливаем «консерву»
Теперь давайте попробуем установить нашу «консерву». Это делается довольно просто — пожалуй, даже проще, чем извлечение.
- Откройте iMazing и подключите девайс, на который хотите установить сохраненное ранее приложение. Это может быть как тот же самый iPhone, с которого вы его «вытащили», так и любое другое устройство — даже девайс вашего друга или члена семьи.
- Дождитесь, пока устройство отобразится в окне iMazing. Кликните на него в списке слева и найдите иконку «Приложения». Нажмите на нее.
Когда вы увидите зеленую галочку в окне iMazing, можно отключать девайс. Он может предложить вам пройти шаги первичной настройки; не пугайтесь — дело в том, что iMazing имитирует восстановление из резервной копии, чтобы айфон позволил установить приложение. В действительности никакие данные на девайсе не затронуты, просто проходите предложенные этапы до рабочего стола. На нем вы увидите нужное вам приложение — можно запускать его и приступать к работе.
В конце я расскажу, что еще вам нужно знать про описанные выше процессы.
- Во-первых, вы сохраняете именно ту версию приложения, которая была установлена на устройстве в момент «консервации». Это значит, что все следующие обновления (если они будут) проходят мимо вас. Если приложение удалено из App Store, то это неважно, так как обновлений оно и так не получит.
- Во-вторых, «законсервированное» приложение привязано к вашему Apple ID даже после его сохранения на ПК. Это значит, что установить файл .imazingapp сможет только тот, кто знает ваш Apple ID и пароль. Никаких иных «подводных камней» здесь нет: ваш пароль в приложении не сохраняется, ваши старые данные — тоже. К слову, установленное таким методом приложение может обновляться через App Store, но для этого тоже потребуется ввести ваш Apple ID и пароль; если речь идет о приложении, удаленном из App Store, то этот нюанс нас не волнует — обновлений всё равно не будет. Так что можете смело ставить свой imazingapp друзьям и знакомым — они смогут использовать приложение без ограничений до тех пор, пока это позволит автор софта или сама Apple.
Рекомендации
Недоступность некоторых приложений и игр в российском магазине App Store вынуждает пользователей искать новые способы установки приложений.
Сейчас расскажем про самый простой метод, пусть и со своими преимуществами и недостатками.
Работать он будет на любом гаджете Apple с операционной системой iOS 13 и новее.
Предупреждение: всё описанное ниже вы делаете на свой страх и риск. Мы ответственности не несём. Способ не является официальным и может нести с собой неизвестные опасности и проблемы.
Что нужно сделать в iOS 16 перед установкой любого стороннего приложения
В новой операционной системе iOS 16 появился дополнительный механизм, блокирующий запуск стороннего ПО. Изначально у вас не получится запустить любое приложение, которое устанавливалось через Xcode, неофициальные магазины или через другие известные способы.
Для запуска потребуется включить Режим разработчика. Делается это следующим образом:
► Откройте Настройки – Конфиденциальность и безопасность.
► Найдите и активируйте опцию Режим разработчика.
► Перезагрузите iPhone.
После этого вы сможете запускать любые приложения, даже установленные из неофициальных источников.
Как загрузить сторонний установщик приложений Scarlet на iPhone
Разработчики данного проекта позволяют загрузить на iPhone специальный установщик и с его помощью добавлять любые игры и приложения на свой смартфон или планшет.
1. На iPhone или iPad перейдите на сайт сервиса в браузере Safari.
2. Нажмите кнопку Alpha Build (Signed).
3. Подтвердите установку приложения Scarlet в диалоговом окне.
4. После загрузки программы перейдите в Настройки – Основные – VPN и управление устройством и подтвердите использование нового сертификата для приложения.
5. Теперь можете запустить приложение Scarlet с рабочего стола.
Как устанавливать приложения через Scarlet
Установка приложения из каталога Scarlet
Когда утилита будет готова к работе, вы сможете установить любое стороннее приложение из каталога или загруженную из сети программу.
◈ В первом случай откройте основную вкладку приложения Scarlet, найдите программу в каталоге и подтвердите установку на смартфон.
Установка загруженного приложения со смартфона
◈ Во втором случае нажмите среднюю кнопку в нижней панели и добавьте загруженный файл в формате *.ipa, который будет подписан и установлен после импорта в Scarlet.
Внимание! Данный способ использует сторонние сертификаты разработчика, а загруженные в сети приложения могут быть модифицированы с добавлением вредоносного кода. Мы не рекомендуем использовать данный способ для установки и авторизации в банковских или финансовых приложениях, чтобы данные не попали в руки третьих лиц.
В остальном метод рабочий для того, чтобы запустить недоступные в отечественном магазине игры, клиенты социальных сетей или другие утилиты.
Сколько будет работать данный способ
Этот метод установки и подписи приложений не является новым, в его основе лежат корпоративные сертификаты разработчика. Команда приобретает специальный сертификат для подписи приложений и встраивает его в актуальную версию своего магазина.
Данный сертификат используется всеми пользователями Scarlet, что может вызвать определенные подозрения у компании Apple. Такие сертификаты периодически отзываются или блокируются.
Для конечных пользователей ничего страшного не произойдет. Перестанут работать только установленные через Scarlet приложения и сам магазин. Потребуется загрузить его обновленную версию с новым корпоративным сертификатом и переустановить уже загруженные программы и игры.
Если сравнивать способ с менее удобным AltStore, то получите такие преимущества:
✅ Можно устанавливать неограниченное количество программ (в AltStore лимит в 3 приложения);
✅ Не придется вводить свой Apple ID и пароль для установки приложений;
✅ Вам не нужен компьютер со специальной утилитой для работы способа, все действия осуществляются прямо на iPhone;
✅ Не нужно переподписывать приложения каждую неделю.
Однако, и недостатки у этого способа имеются:
⛔ Используемые в Scarlet корпоративные сертификаты периодически отзываются, после этого придется переустанавливать саму утилиту и все нужные вам приложения.
По своему опыту могу сказать, что все может работать без сбоев несколько месяцев, полгода или дольше, а может кто-то специально будет сливать сертификаты в Apple и программы придется переустанавливать несколько раз в неделю.
В любом случае на данный момент это самый простой и быстрый способ заполучить нужную программу, которую удалили из App Store.
Настраивается за 5 минут.
Артём Суровцев
Люблю технологии и все, что с ними связано. Верю, что величайшие открытия человечества еще впереди!
Установка приложений из файла *. ipa напрямую с сайта без компьютера
Устанавливаем игры и программы на iOS устройства без компьютера и использования iTunes, iTools, iFunBox и т.д.
1. Устанавливаем UC Browser на свой iPhone, iPod Touch или iPad
2. Заходим через браузер UC Browser на наш сайт и скачиваем нужную игру или программу.
3. После скачивания браузер автоматически определит установочный фай *.ipa и установит его.
В Файл-менеджер вам будут доступны функции с файлом *.ipa: Установить, Открыть, Удалить, Переименовать
Как видите установить приложение из файла *.ipa напрямую с сайта очень просто!
Перенос скаченных файлов с iPhone, iPod Touch или iPad на компьютер:
1. Нажимаем кнопку Wi-Fi Sharing
2. Водим в браузере ПК указанный адрес и пароль
Как установить программу на iPhone через *. ipa файл
время чтения: 3 минуты
Многие владельцы яблочных мобильных устройств, которые делают джейлбрейк iPhone, взламывают систему для расширения функциональных возможностей гаджета и установки твиков из Cydia. Но джейлбрейк также позволяет устанавливать взломанные приложения. В этом материале мы подробно разберем, как установить ipa файлы на iPhone.
В первую очередь для установки ipa файлов нужно сделать джейлбрейк.
Как скачать AppSync
Вам потребуется перезагрузить iPhone после установки AppSync.
Установка ipa приложений с помощью iTunes
Самый простой и наиболее приемлемый для большинства пользователей iPhone метод установки ipa без джейлбрейка – это использование iTunes.
Для этого вам понадобится:
Установка ipa с помощью сторонних утилит
На сегодняшний день есть несколько программ, которые заменяют собой iTunes. Почти все из них позволяют устанавливать приложения на iPhone. Самыми популярными утилитами являются – iFunBox и iTools.
IFunBox
Для установки программы с помощью iFunBox нужно:
В работе iFunBox есть один нюанс.
Разработчики не рекомендуют устанавливать приложения, размер которых превышает 1 Гб. После установки игры она может вылетать после начальной заставки.
ITools
Приложение iTools в отличие от iFunBox обладает современным интерфейсом. Но во всем остальном утилиты похожи.
Что такое стороннее приложение, имеющее разрешение ipa на iPhone
ipa – это формат архивных файлов от разработчика для айфон, айпад и айпод. Такие файлы хранятся в App Store и устанавливаются через iTunes. В интернете нередко можно встретить софт с таким форматом, только он может быть не безопасным.
Так выглядит файл с форматом ipa на iOS-устройствах
Как установить ipa-приложение при помощи iTunes на iPhone
Наиболее простой и официальный способ установки ipa – это загрузка и настройка в iTunes.
Чтобы это сделать, нужно следовать алгоритму:
По завершении процесса нужно найти установленные файлы в телефоне и пользоваться ими.
Как установить ipa-приложение при помощи сторонних программ на iPhone
Помимо iTunes, есть и другие способы как установить ipa на iPhone. Выполнить эти действия можно с помощью сторонних софтов.
Установка сторонних приложений на iPhone, например, программы iFunBox позволяет скачивать ipa файлы без особого труда. Для этого нужно:
Главное меню программы айфон бокс, с помощью которой можно переносить файлы на айфон
На некоторых компьютерах бывает, что iFunBox вылетает при попытке подключения к iPhone. Если проблему не удается решить, то необходимо удалять iTunes полностью и загружать его заново.
Обратите внимание! Разработчик не рекомендует производить скачивание утилит объемом больше 1 ГБ, т. к. возможны неполадки.
Если iTools не видит iPhone пользователя, то эта проблема может возникнуть из-за нескольких причин, к примеру, использование неоригинального кабеля или старая версия iTunes/iTools. Поэтому зачастую для нормального подключения достаточно обновить iTunes или поменять неоригинальный кабель на заводской (далее в статье все возможные причины неполадок и способы их решения).
Другие возможные варианты
Есть и другие сторонние приложения, установка которых позволяет загружать ipa файлы для iPhone.
Apple Configurator
Это качественный софт от производителя, который можно загрузить на iMac или MacBook, поэтому вариант подойдет владельцам компьютеров Apple. Нужно выполнить несколько шагов:
Программа Apple Configurator на MacBook
После всех этих шагов загруженный контент можно будет открыть на смартфоне.
Обратите внимание! Если не удается подключить Mac к iPhone, необходимо проверить, исправен ли кабель. Если шнур поддельный, потребуется его сменить.
Cydia Impactor
Для начала нужно установить на компьютере последнее обновление iTunes. После чего установить приложение Cydia Impactor и следовать алгоритму:
Как только софт станет «Доверенным», он будет без проблем загружаться.
Чтобы иметь возможность качать на смартфон приложения с форматом ipa, пользователю нужно поставить джейлбрейк на телефон:
Особенности установки ipa-приложений через vShare на iPhone
Обратите внимание! В этой программе пользователь может скачивать до нескольких приложений сразу.
Возможные сложности при установке ipa-приложений на iPhone
При установке ipa-приложения на айфон могут возникнуть неполадки. Причин этому бывает несколько:
Теперь пользователь знает, как можно установить ipa файл на iOS-устройства и в чем особенности этого формата. Если не удалось загрузить нужное приложение, рекомендуется следовать советам из статьи, т. к. источников проблемы может быть несколько.
Введение
Гаджеты фирмы Apple буквально завоёвывают весь мир, несмотря на их немалую цену. Новинки выходят из года в год, и каждому хочется идти в ногу с развитием новых технологий и новыми разработками.
Большинство держателей гаджетов культовой фирмы Apple взламывают систему, дабы расширить функциональные возможности своих аппаратов, и устанавливают твики из Cydia. Этим самым они делают так называемый джейлбрейк iPhone. Это также позволяет инсталлировать взломанные программы и утилиты без ограничений.
В этой статье речь пойдет о том, как инсталлировать приложения на iOS-гаджеты
Для того, чтобы получить доступ на изменение файловой системы гаджета, нужно проверить наличие подходящей прошивки для девайса на специализированных ресурсах.
При её наличии, можно смело устанавливать твик AppSync.
Скачиваем и инсталлируем AppSync
Процесс этот совершенно не сложный:
Чтобы приложение корректно заработало, необходимо перезагрузить свой гаджет после его установки.
Устанавливаем ipa через iTunes
Это наиболее простой и доступный, практически для всех пользователей гаджетов бренда Apple, способ для установки каких-либо приложений. Для этого следует выполнить несколько манипуляций:
В результате произойдёт успешная установка нужного приложения на гаджет.
Использование сторонних программ
Помимо официальных, существует несколько популярных сторонних программ, с помощью которых можно устанавливать файлы формата *.ipa. Подобными приложениями выступают iFunBox и iTools.
Главной особенностью этой программы является её скорость работы. Правда, над интерфейсом разработчики даже не «заморачивались». Зато функционал — главное преимущество.
Принцип работы с iFunBox:
Однако есть один неприятный момент: разработчики настоятельно не рекомендуют производить установку приложений, размер которых более одного гигабайта. Впоследствии они могут работать некорректно.
Эта утилита, в отличие от iFunBox, имеет более привлекательный дизайн, но больше ничего нового не может предложить своим пользователям.
Принцип работы с приложением iTools:
Как пользоваться программой:
Это приложение хорошо тем, что допускается инсталляция одновременно нескольких программ без ограничения по скорости.
Подведём итоги
Несомненно, бренд Apple покоряет всё большее количество пользователей, тем самым увеличивая свою популярность. Конечно, дорогой гаджет подразумевает под собой дорогое обслуживание, и только лицензионное программное обеспечение. Использование «пиратских» программ может нанести вред дорогим «игрушкам».
Как установить ipa на iPhone без джейлбрейка?
Как установить приложения на iOS без jailbreak
Как распаковать IPA на айфоне?
Чтобы сохранить файл локально на iPhone или iPod touch, выполните следующие действия.
Как установить приложение на iPhone без Apple ID?
Как установить приложения через iPhone без iTunes и без Apple iD
Как установить IPA через Filza?
ipa и импортировать его в приложение Filza. Выбрать импортированное приложение и нажать установить. Всплывающее окно «Готово» проинформирует когда приложение будет установлено. Поздравляю, приложение установлено, теперь ты батя, тащер и умеешь устанавливать приложения через Filza =)
Как установить скачанные игры на iPhone?
2. Инструкция по установке игр на подготовленный iPhone iPad iPod
Как устанавливать программы через iTunes?
Подключите устройство к ПК и нажмите на его название в правой колонке iTunes. В появившемся сверху меню в правом окошке iTunes выберите пункт «Программы» и отметьте галочками те приложения, которые вы хотите синхронизировать (показаны будут только те приложения, которые уже добавлены в медиатеку iTunes).
Привет! Меня зовут Гриша, я работаю application security инженером в компании Wrike и отвечаю за безопасность наших мобильных приложений. В этой статье я расскажу про основы безопасности iOS-приложений. Текст будет полезен, если вы только начинаете интересоваться безопасностью мобильных приложений под iOS и хотите разобраться, как все устроено изнутри.
Disclaimer: Материал написан в образовательных целях, чтобы новички могли разобраться в принципах работы безопасности мобильных приложений. Используйте инструкции из статьи только на тестовых устройствах или же с разрешения владельца приложения (например, в рамках программы поиска уязвимостей).
Подготовка окружения
Для начала нужно подготовить окружение.
Вот что для этого необходимо:
- Компьютер-хост. В идеале это должен быть MacOS, потому что с другой операционной системой возникнут сложности с установкой и запуском специализированного ПО.
- Джейлбрейкнутый тестовый девайс с желаемой версией iOS. iOS симулятор, который поставляется в комплекте с Xcode, не подойдет, так как он предназначен для запуска приложений, собранных под x86 архитектуру. Релизные версии приложений, предназначенные для запуска на реальном девайсе, собираются под ARM. Поэтому приложения, загруженные из Apple App Store, не получится запустить в симуляторе iOS.
- Сеть Wi-Fi, которая разрешает трафик от клиента к клиенту (или подход SSH через USB).
- Перехватывающий прокси (Burp Suite, Charles, mitmproxy и т.д.).
Это набор максимум: на самом деле можно работать и не на MacOS, и не на джейлбрейкнутом устройстве, но будут дополнительные сложности: отсутствие нужных инструментов, необходимость переподписывать приложение с использованием сертификата разработчика и т.д.
Джейлбрейк. Для тестирования желательно сделать джейлбрейк девайса.
Краткая инструкция выглядит так:
- Найти подходящее тестовое устройство и сделать резервную копию.
- Проверить, что для установленной версии iOS есть джейлбрейк.
- Выбрать подходящий вариант (по этой ссылке можете почитать про сравнение между Tethered/Untethered).
- Джейлбрейкнуть, следуя инструкции к выбранному способу: например, Checkra1n или Unc0ver.
Если хотите узнать подробно о том, как работают джейлбрейки, почитайте статью с техническим анализом эксплойта для checkm8 от Digital Security. Там много интересных подробностей.
Полезные приложения. Теперь на девайс можно поставить приложения, которые нельзя установить на iPhone без джейлбрейка. Для этого нужно установить Cydia. Установка будет отличаться в зависимости от выбранного джейлбрейка, просто следуйте инструкции.
Вот некоторые полезные приложения:
Прокси. Следующий обязательный шаг — это настройка прокси для перехвата трафика приложения на устройстве.
Логика этого процесса аналогична настройке перехвата для браузера:
- Организуем доступность своего хоста (с запущенным прокси) для мобильного устройства: подключаем хост и девайс к одной Wi-Fi сети или используем SSH поверх USB.
- Конфигурируем прокси в настройках мобильного устройства.
- Запускаем перехватывающий прокси на компьютере-хосте.
- Добавляем сертификат от прокси в доверенный на устройстве для перехвата HTTPS-трафика (подробную инструкцию для Burp Suite ищите по этой ссылке).
Перехват трафика мобильного приложения может быть полезен для увеличения поверхности атаки: он покажет новые хосты, сервисы, API, которыми пользуются только мобильные приложения. Разработчики могут уделять меньше внимания безопасности «внутренних» API, которые не видят пользователи. Возможно, будут какие-то ключи, параметры или заголовки, зашитые в код приложения и предоставляющие доступ к этим сервисам. А еще перехват трафика поможет лучше понять логику работы приложения.
Теперь нам нужно приложение для тестирования. Если мобильные приложения и находятся в скоупе для исследования по программе Bug Bounty, то максимум, что мы получим, — ссылку на официальный магазин приложений для платформы.
Мы можем попробовать перехватить трафик запущенного приложения и использовать разного рода инструменты, но для полноценного анализа желательно иметь IPA файл — аналог APK файла для Android. Чем ближе к оригинальному, тем лучше.
Находим IPA файл. Получить IPA файл можно несколькими способами:
- Использовать приложения для управления устройством с компьютера (например, iTunes или Apple Configurator 2). Они скачивают приложения из App Store, а потом заливают на девайс. Но можно поймать момент, когда файл уже скачан на компьютер из App Store, но еще не залит на девайс, и скопировать его.
- Установить приложение из App Store, а потом сдампить (например, через frida-ios-dump). Этот способ сработает только с джейлбрейкнутым девайсом, и в данном случае будут отсутствовать файлы с мета-информацией для App Store.
- Использовать сайты с IPA файлами. Но там вы, скорее всего, найдете уже неоригинальный файл и исследовать его на безопасность будет не так интересно, но все еще полезно для использования.
Как получить IPA файл с помощью Apple Configurator 2:
- Установить приложение на девайс.
- Выбрать приложение в Apple Configurator 2, подключить девайс, начать обновление.
- Отключить девайс после завершения шага загрузки приложения (опционально, так загруженный IPA файл дольше доступен в кеше приложения).
- Забрать IPA на хосте по пути вида: ~/Library/Group Containers/.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps.
Что находится внутри IPA файла. Теперь файл нужно распаковать и посмотреть, что там внутри. Для IPA пакетов Apple использует LZFSE — алгоритм сжатия данных без потерь с открытым исходным кодом. Для распаковки нужен подходящий инструмент: например, unzip-lzfse.
Что находится внутри IPA файла:
- Директория Payload — это все, что относится непосредственно к приложению.
- Payload/Application.app — это скомпилированный код и статические ресурсы: Info.plist — аналог Android-манифеста, который описывает свойства приложения для операционной системы, права, что приложение будет использовать (интернет или камеру и т.д.);Основной исполняемый двоичный файл скомпилирован под ARM либо с использованием формата Mach-O, либо — fat binary;Внешние библиотеки, фреймворки, плагины, ресурсы;Информация о сборке для Apple. Например, embedded.mobileprovision с информацией о разработчике и приложении.
- Info.plist — аналог Android-манифеста, который описывает свойства приложения для операционной системы, права, что приложение будет использовать (интернет или камеру и т.д.);
- Основной исполняемый двоичный файл скомпилирован под ARM либо с использованием формата Mach-O, либо — fat binary;
- Внешние библиотеки, фреймворки, плагины, ресурсы;
- Информация о сборке для Apple. Например, embedded.mobileprovision с информацией о разработчике и приложении.
- iTunesArtwork — иконка приложения для AppStore.
- iTunesMetadata.plist — информация о приложении: жанр, возрастные ограничения, копирайты и т.д.
- WatchKitSupport/WK — поддержка Apple Watch (если есть).
Файлы с расширением *.plist (property list) — это бинарные файлы, в которых хранятся сериализованные объекты. Открывать их удобнее всего в Xcode или любом hex-редакторе (например, 010 Editor с плагином BPlist.bt).
Посмотрим на информацию для App Store. Для примера возьмем приложение Wrike (файл iTunesMetadata.plist):
Содержимое файла iTunesMetadata.plist
Эта информация публично доступна в App Store. Недоступны только данные аккаунта Apple ID, от имени которого скачано.
- UIRequiredDeviceCapabilities — связанные с устройством функции, необходимые приложению для работы.
- Apple-id — каждое скачанное из App Store приложение «привязано» к вашему Apple ID.
- SoftwareSupportedDeviceIds — какие устройства поддерживает это приложение: 1 — классические iPhone, 2 — iPod Touch, 4 — iPad, 9 — современные iPhone.
- Разного рода мета-информация (авторские права, ограничения по возрасту, информация о разработчике и т.д.), которую можно найти в App Store.
Пример отображения информации о приложении в App Store
Теперь переходим к просмотру содержимого файла “Info.plist” (на примере приложения DVIA-2):
Содержимое файла Info.plist
Здесь можно увидеть информацию об основных правах, разрешениях, URL схемах и т.д.:
- Camera Usage Description — разрешение на использование камеры с описанием того, для чего именно приложение будет её использовать.
- NSAllowsArbitraryLoads — разрешает приложению использовать небезопасные HTTP-соединения.
- Executable file — указывает на основной исполняемый файл, в данном случае — “DVIA-v2”.
- URL Schemes — кастомная URL схема, зарегистрированная на устройстве и привязанная к приложению. Например, приложение может быть открыто через ссылку в браузере или в почтовом клиенте.
- Информация об иконках, требуемых версиях iOS, поддерживаемых устройствах (UIDeviceFamily) и т.д.
Кастомные URL-схемы. Рассмотрим кастомные UPL-схемы отдельно, так как они могут быть потенциально опасными. Есть разные сценарии использования таких ссылок, но они могут стать хорошей точкой входа для того, чтобы в них что-то поместить и посмотреть на поведение приложения. Также поведение может быть интересно при эксплуатации XSS уязвимостей на мобильном девайсе.
Например, приложение DVIA-v2 поддерживает схемы “dvia://” и “dviaswift://”, и переход по ссылкам со схемой перенаправляет в приложение.
Перенаправление в приложение по ссылке с кастомной схемой
Приложение может не валидировать входные параметры с кастомной схемой, что приведет к проблемам с безопасностью. Например, вот ссылка на issue по Skype: по клику на ссылку происходил звонок.
Существуют и стандартные URL-схемы: “tel:”, “facetime:”, “facetime-audio:”, “sms:”, “mailto:”. При переходе по ссылкам с заданными схемами происходит перенаправление в соответствующее приложение на девайсе.
Файл embedded.mobileprovision. Приложению требуется файл профиля разработчика (embedded.mobileprovision) как для локальной разработки, так и для размещения в App Store. По-умолчанию он генерируется в Xcode и удаляется при публикации в App Store. В этом файле содержится информация о разработчике и его сертификат в формате PEM (см. DeveloperCertificates), что может быть интересно для сбора дополнительной информации. Однако получить такой файл можно только в том случае, если приложение было получено в обход App Store. Также такой файл может быть использован для переподписания приложения для его модификации и установки на устройство, см. Patching iOS Applications.
Содержимое файла embedded.mobileprovision
Исполняемый файл. Прежде чем приступать к реверсу исполняемого файла, можно попробовать собрать информацию простыми инструментами: вытащить строки, сделать class-dump и увидеть, что в нем есть какой-нибудь токен или секрет. А еще можно посмотреть, какие есть классы, увидеть следы механизмов обнаружения джейлбрейка и то, какие у приложения есть вызовы функций.
Поиск по слову jailbreak в выводе утилиты class-dump для приложения DVIA-v2
Поиск по слову secret в строковых константах приложения DVIA-v2
Дальнейший анализ возможен с помощью IDA Pro, Ghidra или других похожих инструментов.
Попробуем понять логику проверки девайса на джейлбрейк в приложении DVIA-v2:
Декомпилированный код проверки на джейлбрейк в Ghidra
Рассмотрим основные шаги:
- Проверка существования определенных файлов с помощью NSFileManager fileExistsAtPath:”/Applications/Cydia.app” — приложение Cydia (для установки сторонних приложений на джейлбрейкнутом девайсе);“/Library/MobileSubstrate/MobileSubstrate.dylib” — зависимость, используемая во многих расширениях под джейлбрейк;“/bin/bash” — наличие установленного Bash;“/etc/apt” — файлы приложения Cydia.
- ”/Applications/Cydia.app” — приложение Cydia (для установки сторонних приложений на джейлбрейкнутом девайсе);
- “/Library/MobileSubstrate/MobileSubstrate.dylib” — зависимость, используемая во многих расширениях под джейлбрейк;
- “/bin/bash” — наличие установленного Bash;
- “/etc/apt” — файлы приложения Cydia.
- Создание файла со строкой “This is a test” в приватной директории: “/private/jailbreak.txt”.
- Попытка открыть приложение Cydia через ссылку с кастомной URL схемой: “cydia://package/com.example.package”. Используемое API: NSUrl URLWithString.
Защита бинарных файлов. Бинарные файлы могут быть защищены при распространении через App Store.
Рассмотрим возможные флаги, которые можно указать при сборке приложения для защиты бинарных файлов:
- ASLR (Address space layout randomization, рандомизация адресного пространства) — флаг PIE.
- Защита от Stack Smashing (флаг — fstack-protector-all). Приложения, которые используют «канарейки» (стандартный механизм обнаружения переполнения буфера на стеке), будут содержать _stack_chk_fail и _stack_chk_guard в исполняемом файле.
- ARC (Automatic Reference Counting) — автоматический подсчет ссылок, _objc_release в исполняемом файле.
- Флаг cryptid — отвечает за шифрование исполняемого файла. Значение 1 указывает, что приложение зашифровано. Для незашифрованных приложений значение cryptid равно 0.
Эти флаги можно проверить, используя команду otool, которая есть на Mac OS. Эта команда умеет отображать указанные части объектных файлов или библиотек.
Пример вывода команды otool
Исполняемые файлы приложений, которые распространяются через App Store, защищены и зашифрованы. Поэтому сделать анализ строковых констант и декомпилировать код не получится. Но загрузчик расшифровывает iOS- приложение и загружает его в память, когда оно запускается. Этим можно воспользоваться: например, используя frida-ios-dump, сдампить запущенное приложение.
Mobile Security Framework. Вручную прогонять все указанные инструменты для статического анализа и смотреть все флаги интересно только в первый раз, нужно сделать этот процесс быстрым и удобным. Mobile Security Framework — один из фреймворков, который может помочь. Это инструмент для тестирования на проникновение, анализа вредоносных программ и оценки безопасности мобильных приложений. Может выполнять статический и динамический анализ (под iOS есть только статический анализ). Удобно отображает дополнительную информацию о приложении.
Посмотрим на те же флаги для защиты бинарных файлов, но с красивым интерфейсом:
Отображение флагов защиты бинарных файлов в MobSF
Отображение требуемых разрешений и параметров безопасности для HTTP
Отображение кастомных URL схем в MobSF
Мы видим URL-схему, разрешение на использование HTTP-трафика, разрешения (permissions), которые могут быть опасны. Все уже собрано в один большой отчет, который можно выгрузить в PDF и изучить.
Установка и запуск
Мы сделали статический анализ. Теперь попробуем запустить приложение на джейлбрейкнутом девайсе и посмотреть, что оно делает.
Первая проблема, с которой мы сталкиваемся, — установка. Для пользователей есть один официальный способ это сделать — App Store. Для организаций существуют разные enterprise-решения, которые могут распространять приложение внутри компании в обход AppStore на девайсах, в которых уже включены MDM и т.д.
Нам это не нужно, поэтому попробуем поставить приложение (например, AppSync Unified), которое позволит устанавливать неподписанные файлы, файлы с невалидной подписью или с возможностью переподписать файл.
Самый простой вариант для этой задачи — Xcode (Window — Devices and Simulators) или Cydia Impactor (но в связи с последними изменениями от Apple у меня он не работает, вот тут есть информация про ошибки).
Пример установки приложения через Xcode (Window — Devices and Simulators)
Также неподписанное приложение можно установить, используя специальное приложение на девайсе. Например, через Filza: загрузить IPA на девайс (например, через SFTP), найти IPA файл и нажать “Install”.
Установка приложения с использованием Filza
Теперь попробуем запустить. При запуске приложения можно столкнутся с тем, что разработчики попытались заблокировать запуск на джейлбрейкнутом девайсе либо выдают предупреждения при каждом запуске или даже во время работы приложения.
Пример предупреждения о джейлбрейке
Один из простых способов обхода подобных предупреждений — использование специальных приложений (например, Liberty Lite), но это сработает только в случае простых механизмов обнаружения. Более сложные способы разберем в этой статье в разделе про инструменты динамической инструментализации.
Анализ трафика приложения
На предыдущих этапах мы уже настроили перехватывающий прокси, поэтому информацию об HTTP и HTTPS трафике сразу же сможем увидеть через Burp Suite:
Пример перехвата данных, отправленных приложением
С помощью анализа трафика мобильного приложения можно расширить поверхность атаки и найти больше входных точек. Иногда разработчики считают, что если мобильное приложение использует внутренний API, который не видят пользователи, то защита там может быть хуже, данные для аутентификации сохранены в коде приложения или аутентификация вовсе отсутствует.
SSL пиннинг. В качестве защиты перехвата HTTPS трафика в мобильных приложениях используется SSL пиннинг. В приложение добавляются заранее вычисленные пины — хэш-суммы от серверного сертификата или от отдельных его полей (например, SubjectPublicKeyInfo). Пины сохраняются в коде приложения. При обращениях к серверу приложение снова вычисляет пины сертификата и сравнивает со списком доверенных. Если пины не совпадают, значит сертификат подложный (например, как в случае с перехватывающим прокси) — соединение останавливается.
Для реализации SSL пиннинга существуют готовые решения:
Разберем на примере TrustKit возможные варианты обхода SSL пиннинга. Например, конфигурация для TrustKit выглядит так:
Способы обойти данную проверку:
Реализовать этот обход можно как используя готовые инструменты (например, ssl-kill-switch2), так и с помощью инструментов динамической интрументизации.
WebView. Если приложение использует WebView, то при тестировании стоит обратить особое внимание на конфигурацию и значения параметров. UIWebView (старая версия) и WKWebView предназначены для встраивания содержимого веб-страниц прямо в приложение, поддерживая CSS и JS. Также поддерживают базовую логику навигации в веб (переход вперед/назад/гиперссылки и т.д.). Начиная с iOS 8.0 и OS X 10.10, используйте WKWebView для добавления веб-содержимого в ваше приложение и не используйте UIWebView.
У WKWebView есть флаги, которые могут быть для нас интересны:
Для экспериментов или отладки своего приложения удобно использовать Web Inspector в Safari (для этого приложение должно быть собрано с возможностью отладки). Включив Web Inspector на девайсе, мы сможем подключиться к WebView и посмотреть, что происходит: как выглядит HTML, выполнить какой-то JavaScript и т.д.
Подключение к DVIA-v2 через Web Inspector
Хранение данных на устройстве
Безопасное хранение данных на iOS-девайсах должно быть реализовано с использованием Keychain. Это хранилище предназначено для хранения паролей, криптографических ключей, сертификатов и другой важной информации. Разработчику предоставляется API для работы с Keychain, при этом все важные операции вынесены в отдельную подсистему безопасности на уровне «железа» — Security Enclave.
Схема разделения зон ответственности между приложением, OS и Secure Enclave
У Keychain есть много параметров. При разработке приложения стоит внимательно подойти к тому, какие секреты с какими параметрами будут сохранены. Все параметры можно разделить на атрибуты доступности и параметры контроля доступа.
Атрибуты доступности указывают на то, когда данное значение может быть получено. Возможные модификаторы:
Суффиксы указывают на состояние девайса:
- Always — данные доступны всегда;
- WhenPasscodeSet — требует наличия пасскода на девайсе;
- WhenUnlocked — данные доступны, когда устройство разблокировано;
- AfterFirstUnlock — данные доступны после первой разблокировки девайса и до следующего перезапуска.
Суффикс ThisDeviceOnly указывает на то, что элементы не переносятся на новое устройство (например, после восстановления из резервной копии). У каждого из возможных параметров есть рекомендации на портале разработчика.
Флаги контроля доступа (ACL — access control flags, поддерживают «and» and «or»):
Анализ значений в Keychain для приложений может быть реализован с использованием инструментов:
Попробуем сдампить Keychain для тестового приложения:
Пример вывода содержимого Keychain’а
Локальная аутентификация
При установке на девайс приложения сначала просят пройти полноценную аутентификацию: ввести имя пользователя, пароль, подтвердить номер по SMS. Дальше пользователь может поставить четырехзначный пароль и использовать биометрию. Такую аутентификацию на устройстве будем называть локальной.
Есть разные варианты локальной аутентификации:
- Пасскод (обычно 4-6 цифр)
- Биометрия (Touch ID, Face ID)
При тестировании локальной аутентификации стоит обратить внимание на то, где хранятся пасскод и пароль, какие флаги и атрибуты выставлены для значений в Keychain, как реализован механизм подсчета попыток входа, можно ли обойти аутентификацию, используя кастомные схемы приложения и т.д.