Jailbreak (iOS)

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая 212.33.236.57 (обсуждение) в 06:24, 27 июня 2013 (Исправление ошибки с контактами на iOS 6.1.x). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
Файл:Iphone os 3.PNG
Главное меню iPhone 4 с Apple iOS 5.0.1, подвергнутого Jailbreak — видны сторонние приложения Cydia и iFile

Джейлбрейк (англ. Jailbreak — «Побег из тюряги») iPhone/iPod Touch/iPad — официально не поддерживаемая Apple операция[1], которая позволяет открыть программному обеспечению полный доступ к файловой системе устройства. Это позволяет расширить возможности аппарата, например, сделать возможным поддержку тем оформления, твиков и установку приложений из прочих источников помимо App Store.

Технические детали

Apple iOS исполняет все приложения от имени пользователя с ограниченными правами. Таким образом, приложения (независимо от средств разработки, использованных для их создания) не могут производить некоторые системные вызовы ядра ОС, а также не имеют доступа к некоторым каталогам.

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

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

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

В число «важных системных данных» входит, например, список установленных приложений. То есть без jailbreak можно устанавливать приложения только из App Store.

Что даёт джейлбрейк?

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

Jailbreak даёт следующие возможности:

  • использование приложений со стороны настольного ПК (ПО реализовано как надстройка над компонентами из iTunes), дающего полный доступ к файловой системе устройства по аналогии с Microsoft activesync.
  • возможность занесения в устройство ПО не только из App Store, но ещё, например, с помощью Cydia. В числе этого софта есть и инструменты для взлома защиты baseband (GSM-чипа) с отвязкой от AT&T, Verizon, Sprint.
  • возможность занесения в устройство BSD-подсистемы (портирована из «большого» Darwin), в которую входит SSH, то есть SSH-доступа к устройству с возможностью исполнения command-line (командная строка) инструментов (в том числе инструментов для отвязки от оператора).
  • возможность установки пиратского программного обеспечения.

Типы джейлбрейков

Существует три типа джейлбрейка:

Привязанный джейлбрейк

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

Отвязанный (непривязанный) джейлбрейк

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

Полупривязанный джейлбрейк(SemiTether)

Даёт возможность перезагружать устройство, не теряя возможность пользоваться им, но при этом после перезагрузки устройства все функции джейлбрейка выключаются и приходится делать «Just Boot» через утилиту redsnow или iBooty.

Последние созданные джейлбрейки

iOS 4.1

Джейлбрейк был сделан совместными усилиями geohot и @comex. «Тяжёлый» эксплойт bootROM, найденный в Limera1n, до сих пор используется для привязанного джейлбрейка iPhone 3GS, iPhone 4, iPod Touch 3G, iPod Touch 4G и iPad на тех прошивках, которых не сделан непривязанный джейлбрейк. С помощью Limera1n делался привязанный джейлбрейк для бета-версий iOS 5 и iOS 6.

iOS 4.3.3

Непривязанный джейлбрейк всех устройств на iOS 4.3.3 был создан силами @comex. Реализован в виде сайта JailbreakMe.com. Закрыть опасную дыру после джейлбрейка можно с помощью твика из Cydia.

iOS 5.0.1

Непривязанный джейлбрейк всех устройств на iOS 5.0.1 был создан силами @pod2g. Реализован в виде утилиты Absinthe v0.x, redsn0w 0.9.10, CLI или в виде твика из Cydia «Corona 5.0.1 Untether».

Проблемы с iBooks

Известны случаи, когда пользователи устройств с Jailbreak не могли получить доступ к каталогу электронных книг iBooks. Обусловлено это тем, что люди, пользовавшиеся привязанным jailbreak’ом, смогли установочным пакетом из Cydia Corona Untether 5.0.1 «отвязать» свой iДевайс. Corona была сделана хакерами на скорую руку, и поэтому повреждала каждый раз файлы iBooks при загрузке, но позже вышло обновление, которое исправило этот баг. [2].

iOS 5.1.1

Непривязанный джейлбрейк всех устройств на iOS 5.1.1 был создан силами @pod2g и @planetbeing. Реализован в виде CLI, Absinthe v2.0.x, redsn0w 0.9.12b2 и выше или в виде твика из Cydia «Rocky Racoon 5.1.1 Untether»

iOS 6.0 — 6.1.2

Непривязанный джейлбрейк всех устройств на iOS 6.0-6.1.2 был создан силами @planetbeing и @pimskeks, членами команды @evad3rs, позже им помогал @pod2g. Реализован в виде утилиты evasi0n. Последнюю версию evasi0n 1.5.3 вы можете скачать на сайте http://evasi0n.com

Исправление ошибок с яркостью

У некоторых не работает яркость после джейлбрейка. Установите твик из Cydia «BrigtnessFix for iOS 6.x», репозиторий ModMyi.

Исправление ошибок с погодой

В самой первой версии Evasi0n после джейлбрейка не работала погода. Устранить её можно 2 способами:

1. Обновление пакетов «Evasi0n 6.0-6.1.2 Untether» и «UIkit Tools» в Cydia

2. Скачать твик «Weather fix for iOS 6» из репозитория Bl00dra1n[3]

3. Выполнение в терминале кода, автор @pod2g[4]

Исправление ошибки с контактами на iOS 6.1.x

На iOS 6.1.x проявляется баг с контактами. Установите из репозитория iLEX твик «Contact Fix for iOS 6.1.x».

iOS 6.1.3

В iOS 6.1.3 часть уязвимости эксплуатируемые джейлбрейком на iPhone были закрыты. Для iPhone 3GS/4 и iPod Touch 4G на iOS 6.1.3, джейлбрейк все ещё работает в полупривязанном режиме[1].

Техническая информация

Установка сторонних приложений обычно происходит через менеджер пакетов, такой как Cydia для iPhone OS 2.0+ или Installer для iPhone OS 1.0 и до iPhone OS 1.1.5. В свою очередь, он представляет собой визуальный фронтенд для модифицированного менеджера пакетов Debian.

Файл:Тема оформления из Cydia.png
Одна из тем оформления, загруженная из Cydia

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

За и против jailbreak-а

С одной стороны, Jailbreak полезен, так как позволяет несколько компенсировать пользователям устройств неудобства, связанные с жесткой политикой Apple, такие как:

  • привязка телефона к одному сотовому оператору (в некоторых сериях)
  • отсутствие ряда стандарных для коммуникаторов/КПК и просто полезных функций, по какой-то причине, не реализованных Apple, например, «чёрный список» абонентов, отправка MMS в iPhone 2G, рингтоны произвольной длительности тех, которые Apple не желает видеть на своих устройствах, например, доступ к файловой системе со стороны пользователя (например, реализованного приложением iFile из репозитория Cydia) или других приложений, например для воспроизведения контента с внешнего диска (USB-накопителя, карты памяти) без необходимости избыточного копирования на устройство
  • привязка к App Store (с его достоинствами и недостатками) невозможность установки сторонних программ (в том числе неодобряемых Apple)
  • негибкие возможности настройки интерфейса

С другой стороны, Jailbreak может принести неудобства, так как программное обеспечение, доступное в Cydia, в отличие от App Store, не проверяется на надёжность и безопасность и может нанести ущерб данным на аппарате или стать причиной их кражи. Так, установка пакета OpenSSH (в целом очень полезного), без смены паролей UNIX на аппарате — залог спокойного воровства данных, что для деловых людей может нанести значительный ущерб. Ранее этот пакет устанавливался автоматически при выполнении процедуры джейлбрейка, однако в настоящее время это не так. Эта уязвимость привела к случаям взлома телефонов, подвергнутых джейлбрейку[5].""

Правовая информация

В США и России Jailbreak является нарушением авторских прав компании Apple[6] и третьих сторон, чьи приложения устанавливаются, минуя App Store, но законодательство варьируется в зависимости от стран.
Сама Apple придерживается точки зрения, что Jailbreak незаконен. После проведения процедуры разблокирования аппарата, он теряет гарантию Apple и не подлежит гарантийному ремонту. Но по закону в России вам обязаны починить телефон по гарантии.[7].

Дополнительно

Процедуры взлома, аналогичные Jailbreak для iOS, существуют и для других мобильных платформ с ограничениями на установку приложений и на доступ к файловой системе, включая Android, Windows Phone 7 и Symbian 9, для игровых консолей PS3, PSP, и для других устройств, например Kindle.

Примечания

  1. Владельцам iPhone в США разрешили взламывать их для установки приложений, которые распространяет не Apple. Соответствующие изменения Библиотека конгресса США внесла в закон о защите авторских прав в цифровую эпоху (DMCA). Руководитель библиотеки Джеймс Биллингтон рассудил, что процедура так называемого джейлбрейка не является нарушением авторских прав
  2. Apple отлучила взломанные устройства от своих электронных книг // Newsru.com
  3. cydia.myrepospace.com/Bl00dra1n
  4. #!/bin/bash chmod -x /usr/libexec/mobile_installation_proxy killall −9 mobile_installation_proxy rm /var/mobile/Library/Caches/com.apple.mobile.installation.plist /var/mobile/Library/Caches/com.apple.LaunchServices-045.csstore launchctl stop com.apple.mobile.installd launchctl start com.apple.mobile.installd while [ ! -f /var/mobile/Library/Caches/com.apple.mobile.installation.plist ]; do sleep 1 done while [ ! -f /var/mobile/Library/Caches/com.apple.LaunchServices-045.csstore ]; do sleep 1 done sleep 10 chmod +x /usr/libexec/mobile_installation_proxy sync reboot
  5. Голландский хакер захватил в «заложники» подвергнутые джейблрейку iPhone
  6. Библиотека Конгресса США разрешила «джейлбрейк» iPhone
  7. Официальная позиция Apple

Ссылки