Чому випуск джейлбрейка Electra для iOS 11.3.1 був відкладений?

Вас цікавить, чому випуск довгоочікуваного джейлбрейку Electra для iOS 11.3.1 досі не відбувся? В цій статті

Розкажемо, чому так довго, і які перспективи злому iOS 11.3.1 в цілому.

Причину пояснив користувач Reddit під ніком Samg_is_a_Ninja.

Почнемо з того, що Єн Бір, член командибезпеки Google Project Zero, опублікував два експлойти: multi_path (він його назвав mp) і empty_list (відповідно, el). Як пише Samg_is_a_Ninja, експлойт mp мав більш високий шанс на успіх, однак його використання потребує акаунту Apple Developer, для якого, у свою чергу, необхідна підписка вартістю $99/рік. Експлойт, з іншого боку, не вимагає сертифіката розробника, але є менш стабільним. Відомий хакер pwn20wnd вніс ряд покращень, але шанс успіху все ще становить 1/3, що, як і раніше, дуже мало.

Користувач Reddit зазначає, що розробкаджейлбрейка iOS 11.3.1 була ускладнена ще й тим, що Apple додала нові захисні функції, що використовують снепшоти файлової системи APFS, а не кореневого розділу.

Всі думали, що буде досить легко використовуватистарий код від Electra для iOS 11.1.X просто замінивши експлойт ядра – використовувати mp або el замість async_wake. Проте при запуску нових експлойтів виявилося, що Apple додала нову захисну функцію: використання снепшотів APFS, а не кореневого розділу, як це було раніше.

Раніше повідомлялося, що затримка виходу Electraпов'язана з нестабільністю коду перемонтування. Samg_is_a_Ninja детальніше розкрив і проблему монтування, і причину, з якої Electra для iOS 11.3.1 досі не вийшла.

Одна з основних функцій джейлбрейка –можливість отримати доступ до повної файлової системи пристрою. Уявіть, що файлова система вашого смартфона & # 8211; це дві коробки з іграшками. Перша називаєтьсяdisk0s1s1, друга –disk0s1s2. Коробкаdisk0s1s2більше за розмірами і містить усі дані підрозділом/var, і поділена на секції – по одній на кожну програму, яка у вас встановлена, плюс фотографії, iBooks і все в цьому роді. Коробкаdisk0s1s1менше, і містить в собі дані під усіма іншими розділами (/ Applications, / System, / Library і т.д.), системні програми та файли, що забезпечують функціонування системи.

У стокове iOSdisk0s1s2монтується в режимі читання та запису та дозволяє кожному додатку записувати дані тільки у відведеній йому пісочниці. Записувати дані до інших частинdisk0s1s2може лише система. Запис уdisk0s1s1можлива лише під час оновлення або відновлення програм.

На 11.2.6 і новіше, як тільки ви отримуєте task_for_pid(0) (спасибі ескплойтам), не важко монтувати іdisk0s1s1, іdisk0s1s2в режимі читання та запису. Однак у iOS 11.3 Apple представила нову функцію: коли ви налаштовуєте свій пристрій, система робить знімок вмістуdisk0s1s1. З цього моменту щоразу, коли ви включаєте девайс, система дивиться на снепшот, потім на вмістdisk0s1s1і шукає відмінності.Якщо файли були переміщені або видалені, вона повертає їх назад. Будь-які додані об'єкти видаляються, а видалені – відновлюються. І в цьому вся проблема: наприклад, розділ Applications/Cydia.app буде видалятися при кожному запуску.

Є й добрі новини.Зокрема, нова захисна функція ще додана, і, схоже, сповнена вразливостей. Спочатку Джонатан Левін (@Morpheus______) збирався працювати над уразливістю, що дозволяє робити ремаунт (її виявив @SparkZheng), проте зараз, схоже, завершення експлойту відійшло у нього на далекий план.

Reddit-користувач також зазначає, що WebKit-версія el вже випущена. Це дає надію на вихід джейлбрейку iOS 11.3.1, який використовує Safari.

Ще одна хороша новина полягає в тому, щоентузіаст Том Мішо виявив вразливість у демона запуску (launch daemon). Можливо, це навіть призведе до виходу неприв'язаного джейлбрейка iOS 11.3.1. Ця вразливість нагадує ту, що використовується в неприв'язаному джейлбрейку evasi0n.

З огляду на, що мова йде про саму захищеноїопераційній системі в світі, не дивно, що фанатам джейлбрейка доводиться проявляти терпіння. Важливо дочекатися повноцінного тестування коду, щоб переконатися, що він надійний і ризику перетворити пристрій в цегла немає.