Наскільки безпечна macOS Catalina

Сталося те, що повинно було коли-небудь статися. Вирок, оголошений сім років тому, виконано. Щось дуже важливе пішло в минуле, можливо назавжди. Це не просто ще одна мажорна версія macOS, це рішучий крок в якесь ще не до кінця зрозуміле майбутнє - хоча деякі його риси вже видно. І вони жахливі, але це на перший погляд. Погляньмо на них ще раз. Відтепер, програмному забезпеченню анонімних авторів шлях у macOS закрито.

Це навіть не проблема, це можливість для максимально просунутих анонімів проявити себе і свої здібності на новому терені. Злом, проникнення, зі співучастю користувача навіть не підозрює про небезпеки яким він або вона себе піддає. Власне, те чого побоювалися в 2011-2012 роках, сталося. У лютому 2012 року Apple знизійшла до пояснень: Gatekeeper, технологію здатну задушити будь-які прояви свободи якщо вони не були схвалені чиновниками компанії, вирішили впроваджувати обережно, в оксамитовому її варіанті. Було очевидно: на цьому вони не зупиняться. На прикладі iPhone SDK і iOS було доведено що навіть до найсуворіших і найжорстокіших обмежень розробники легко звикають, так як гра стоїть звічень. App Store на кожному пристрої, додаток тут же стає доступним безпрецедентно широкій аудиторії потенційних клієнтів, а те що забороняють приймальні комісії App Store, якщо вдуматися, не так вже й нерозумно.


Проте 2012 року Mac OS X, яка плавно перетворюється на OS X, була острівцем свободи, де дозволялося все. Колишні Масівські програмісти, які через шалений попит на програмне забезпечення для iOS розлучилися (на час?) з рідною і улюбленою ОС не припиняли мріяти про повернення у відкритий і звичний світ. Суджу по собі, мріючи про повернення було легше переносити підступи приймачів App Store, підлаштовуватися під не завжди зручні вимоги і обмеження. І раптом - приймання, обмеження доступу до даних за межами власної «пісочниці» програми, заборона на багато ще - приходять і на Mac. Програми вільних розробників часто викликали жах, їх інтерфейс був разюче незручним, чужим, часто незрозумілим і непродуманим, але те що вміли робити ці програми часто було унікально. Ймовірність що вільні автори витратять свій дорогоцінний час на переробку програм для не самої (на жаль) популярної з підтримуваних ними платформ, що вони підпорядковуються безглуздим (з їх точки зору) правилам Mac App Store і будуть покірно виправляти проблемні, на думку відірваних від реального життя придурків з його «прийомки», була гнітюче низькою.

Встановлення програм від невстановлених розробників на Mac

У 2012 вирок цій свободі було оголошено, але його виконання було відкладено. На якийсь неназваний термін. Привратник і технічні та програмні засоби, що допомагають йому, потихеньку, готувалися до дня «Д». Його кілька разів збиралися оголосити, але відкладали. У зв'язці з контролюючим конфігурацію чіпом-шпигуном Apple T2 суворі правила стали б непереборною перешкодою на шляху цифрової нечисті і проявів необузданої творчості. Того разу рішення про введення в дію плану з невідомою назвою прийнято не було. Але наприкінці 2018 року група товаришів, яка скромно називає себе «мозком Apple», вирішила, що час настав. У macOS Catalina, Привратнику і його товаришам надані найширші повноваження. Поки ще не такі як в iOS або в iPadOS, але в цій системі дозволено запускати або свої власні додатки, як і в iOS/iPadOS, або додатки написані «офіційним членом спілки письменників», підписані його унікальним підписом, для отримання якого розробник повинен зареєструватися в Apple Developer Program. Або програми, придбані в Mac App Store.

У бажаючих писати програми для macOS тепер тільки два шляхи: проектувати свій продукт з урахуванням вимог Mac App Store і, після ретельної перевірки, дозволити Apple розмістити його на віртуальних полицях свого магазину, делегувавши їй турботи і проблеми не пов'язані з конструюванням і розробкою програмного забезпечення, при цьому дотримання правил віртуального магазину обов'язково. Або відмовившись від перевірки (в повному обсязі) і від допомоги в дистрибуції та контролі за оплатою покупок, зайнятися цими питаннями самостійно. До macOS Catalina, в цьому випадку ніхто і ні в найменшій мірі не обмежував розробника в його самовираженні. Починаючи з macOS Catalina і цей різновид програмного забезпечення будуть піддавати перевірці.

Перевірка здійснюється автоматично, при збиранні релізної версії програми, в Xcode, ця фаза називається «нотаріальним завіренням релізу», але що насправді при цьому перевіряється, що може стати причиною відмови в благословенні підписаного додатку - поки невідомо. Навіть якщо на перших порах ніяких репресій не буде, ввести їх в дію буде легше легкого. У 2012 році запуск анонімних додатків був, теоретично, заборонений. У системних параметрах можна було вибрати один з трьох режимів: дозволити запуск тільки програм з App Store, дозволити запуск тільки підписаних розробником програм або дозволити все, оптом. Останній вибір оголосили небезпечним, його не рекомендували - тому на більшості Масів був обраний саме він. Через кілька років вибір «дозволити все» з системних налаштувань прибрали, але відкрили трохи більш розумну і недоступну невмілим користувачам лазівку. Відкриваючи програму за допомогою меню користувач отримував можливість дозволити запуск забороненої програми, з цього моменту її можна було запускати по кожному. Це не вседозволеність у чистому вигляді, але реальна вразливість. Клієнт видобуває десь, швидше за все в мережі, програму яка обіцяє вирішити якісь його проблеми, природно дає добро на її безконтрольний запуск, пробує, говорить «фі» і забуває про неї. Програма анонімна, в ній може бути все що завгодно. Це вразливість. Навіть дивно що її так довго терпіли.

Неперевірені Apple програми, починаючи з macOS Catalina, можна поширювати у вигляді вихідних кодів. Для Xcode. Можливо, і для інших середовищ розробки (хоча не факт). Набуваюча сторона відкриває проект в Xcode, будує його, при бажанні вносить в код власні зміни або доповнення - і користується. Невразливих в принципі систем немає і не може бути. Я не сумніваюся, що з'являться й інші способи нелегального тиражування неперевірених програм, і щось на зразок jailbreak - але складнощів на шляху шкідливих програм стане більше.

Безпека у macOS Catalina

Тепер всім, хто пише програмне забезпечення для macOS для легального публічного поширення, доведеться реєструватися в Apple Developer Program (це платний підписний сервіс, вартістю 99 доларів - крім сертифіката розробника який необхідний для генерації підпису, права відправляти у відповідний App Store свої програми для всіх «яблучних» платформ, членство в програмі надає цілу низку корисних привілеїв - доступ до бета-версій операційних систем і програмних продуктів Apple, допуск на закриті форуми розробників Apple де на питання, час від часу, відповідають співробітники Apple і ще деякі.


Чому саме зараз? Відповіді у мене немає, просто повідомлю кілька фактів, можливо вже відомих вам: одночасно з цим, всі «яблучні» платформи переходять на нову файлову систему APFS. Apple File System. Буква «P», начебто, позначає другу букву в слові Apple. Хороша компанія, чому б не проявити до неї трохи більше поваги ніж до всіх інших і не позначити її першими двома літерами? А якщо це Apple Protected File System, про що ми поки не повинні здогадуватися? Apple T2, чіп з підозрілим набором функцій, який бере на себе все більше і більше турбот? Чи не повільний це перехід на ARM-процесори? Catalyst - стираємо ще одну межу між платформами. І багато іншого. До чого б це все?

У macOS Catalina у Привратника змінилися правила роботи, додатки невідомих авторів тепер заборонені. Безумовно і абсолютно. Поки що розробник має право поширювати свої додатки самостійно, не через Mac App Store, не пов'язуючи свою фантазію обмеженнями онлайн-магазину. Але, щоб програмне забезпечення могло працювати в macOS Catalina, автор повинен зареєструватися в Apple Developer Program (це «платний сервіс», за 99 доларів на рік) і підписувати свої програми, щоб у разі якогось неподобства автора можна було знайти і покарати. Такий спосіб майже безконтрольного поширення стороннього програмного забезпечення дебютував у тому ж 2012 році, рекомендувався Apple як відмінний компроміс, і досі ніяких особливих незручностей (крім необхідності щорічно продовжувати членство в Apple Developer Program) не доставляв. Тим хто бере на себе відповідальність за свій софт і воліє поширювати його самостійно, проходити перевірку в App Store, як і раніше, не потрібно. Але без «нотаріальної перевірки» з боку Apple підписати своє творіння вже не вдасться. Що перевіряє Apple - невідомо. Поки ніякої інформації про претензії до програм з боку «фруктових нотаріусів» немає. Але тепер, у будь-який момент, при першому ж «ахтунгу», Apple запросто може ввести будь-які обмеження.

Це не єдина зміна в системі безпеки. Привратник, починаючи з macOS Catalina, не обмежується перевіркою документів - він «просвічує» внутрішності додатків. Привратник не єдиний співробітник системи безпеки, який весь час на посаді - Мас'і з macOS Catalina, якщо вірити деклараціям Apple, будуть у більшій безпеці, ніж раніше.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND