Рекомендуємо, 2024

Вибір Редакції

Що таке Strongly Enforced Verified Boot в Android Nougat?

Якщо ви стежили за подіями в Android, ви, мабуть, чули назву "Verified Boot" зовсім небагато останніх років. Google представив функцію безпеки в Android 4.4 (Kitkat), повністю і ненав'язливо, і повільно збільшував свою видимість в нових версіях своєї операційної системи Android.

Протягом останніх двох днів ми бачили новини про наявність " Строго примусового перевіреного завантаження " в останній версії Google із найпоширенішою у світі мобільною ОС. Під час завантаження пристрою Android Nougat використовуватиме більш високий рівень перевірки безпеки. Хоча, на Marshmallow, Verified Boot дав користувачеві попередження, у разі виявлення чогось невідповідного з системним розділом, Android Nougat піде на ще один крок і використає те, що Google називає "Strictly Enforced Verified Boot", що дозволить не дозволяти пристрою завантажуватися взагалі, у разі виявлення аномалій в розділі, змін, внесені в завантажувач, або наявності «шкідливого» коду в пристрої. Це викликає запитання: «Що саме це означає для користувачів?», Виходить, відповідь відрізняється для двох основних категорій користувачів Android (випадкові та потужні користувачі), і ми дамо відповідь на обидві з них. .

Строго примусово перевірене завантаження

По-перше, трохи фону на перевіреному завантаженні: зазвичай, коли Android запускає перевірочний тест на розділи, він робить це, розділяючи розділи на 4KiB-блоки і перевіряючи їх на підписану таблицю. Якщо все перевіряється, це означає, що система повністю чиста. Однак, якщо деякі блоки виявляються підробленими або пошкоджені, Android інформує користувача про проблеми і залишає їх користувачеві, щоб вирішити їх (чи ні).

Все, що збирається змінитися з Android Nougat, і Strictly Enforced Verified Boot. Коли перевірено завантаження виконується в примусовому режимі, воно не допускатиме помилок у розділах. Якщо він виявляє будь-які проблеми, він не дозволить пристрою завантажитися, і може дозволити користувачеві завантажитися в безпечне середовище, щоб спробувати виправити проблеми. Проте Strictly Enforced Verified Boot - це не лише перевірка на погані блоки даних. Зазвичай він може виправляти помилки в блоках даних. Це стало можливим завдяки наявності коду Forward Error Correcting, що може використовуватися для виправлення помилок в блоках даних. Однак, це не завжди може працювати, і в тих випадках, коли цього не відбувається, ви дуже мертві у воді.

Strictly Enforced Verified: Добре, погано і потворно

1. Добре

Забезпечення перевірки завантаження на пристроях Android покращить безпеку пристроїв. У випадку, якщо пристрій заразиться шкідливим програмним забезпеченням, Strictly Enforced Verified Boot виявить його наступного разу, коли ви завантажите пристрій, і або виправите його, або, цілком можливо, запропонує вам щось зробити з цього приводу.

Ця функція також перевірятиме пошкодження даних, і в більшості випадків вона зможе виправити будь-які помилки, введені в дані, завдяки кодам FEC. Google використовує коди FEC, які можуть виправити одну невідому помилку в 255 бітах . Звичайно, це схоже на досить маленьке число, але давайте розглянемо це в перспективі, що стосується мобільного пристрою:

Примітка: Значення, наведені нижче, взяті з публікації в блозі інженера Google Самі Толванена на розробниках Android.

Google міг би використовувати RS (255, 223) коди FEC: ці коди могли б виправити 16 невідомих помилок в 255 бітах, але простір накладних через 32 біт надлишкових даних, був би майже 15%, і це багато, особливо на мобільних пристроях. Додайте, що до того, що Android є переважною ОС на бюджетних смартфонах, що поставляються з 4-8 Гб пам'яті, і 15% додаткового простору дійсно здається багато.

Пожертвувавши можливостями виправлення помилок, на користь економії простору, Google вирішив використовувати RS (255, 253) коди FEC. Ці коди можуть виправити лише одну невідому помилку в 255 бітів, але накладні простори становлять лише 0, 8%.

Примітка: RS (255, N) - це представлення кодів Ріда-Соломона, які є типом кодів корекції помилок.

2. Погано

Коли-небудь чули про "Є дві сторони монети"? Звичайно у вас є. Хоча наміри Google з Strictly Enforced Verified Boot, без сумніву, були чистими, як дитячий єдиноріг, вони поставляються зі своїм набором проблем.

Коли перевірка завантаження перевіряється на наявність шкідливих програм, вона також перевіряє наявність незаконних модифікацій ядра, завантажувача та інших матеріалів, з якими я не буду вас набридати, але це означає, що Android Nougat, ймовірно, зіткнеться з багатьма проблемами з вкоріненням. миготіння Custom ROM, тому що Verified Boot не може розрізняти небажаний шкідливий код і код, який розблокував ваш завантажувач. Це означає, що якщо ваш пристрій поставляється з заблокованим завантажувачем, і ваш OEM не дозволяє розблокування завантажувача, ви це не зможете зробити. Будемо сподіватися, що хтось зрозуміє, чи може це зробити.

На щастя, більшість людей, які коренізують свої пристрої, і спалахують користувальницькі диски для додаткових функцій і функціональності, йдуть з дружніми для розробників телефонами, наприклад Nexus. Про цю тему можна багато розглянути, і це, безумовно, не кінець користувацьких дисків, принаймні, не на пристроях, які постачаються з розблокованим завантажувачем, або які дозволяють розблокувати завантажувач. Однак пристрої, такі як телефони Samsung, офіційно не дозволяють розблокування завантажувача, і на цих пристроях розблокування завантажувача найімовірніше буде розглянуто як «проблема» перевіреного завантаження, що запобігає завантаженню пристрою.

Іншою проблемою, яка виникатиме при застосуванні Strictly Enforced Verified Boot, є той, який впливатиме навіть на користувачів, які дійсно не піклуються про отримання кореневих прав або встановлення користувацьких дисків. З часом, коли ви використовуєте свій пристрій, у пам'яті має бути природне пошкодження даних; не через наявність шкідливого програмного забезпечення, а просто тому, що це відбувається. Зазвичай це не проблема, або, принаймні, не така серйозна проблема, на яку перетвориться перевірена завантаження. Якщо у вас є пошкоджені дані, які неможливо виправити під час завантаження Strictly Enforced Verified Boot, він не дозволить завантажувати ваш пристрій. На мою думку, це більша, більш помітна проблема, ніж деякі пошкоджені дані в розділі користувача.

3. Потворний

З усіма перевагами забезпечення перевіреного завантаження та всіх потенційних проблем найбільш тривожним є, ймовірно, той факт, що OEM-виробники можуть почати зловживати цим пристроєм, щоб заблокувати свої пристрої таким чином, щоб люди не могли використовувати Android, для чого він мав на увазі бути: відкритим, зручним для розробників і повністю настроюваним. Strictly Enforced Verified завантаження буде поставлено в руки OEM-виробників, які гарантують, що люди не зможуть розблокувати завантажувачі на своїх пристроях, тим самим забороняючи їм встановлювати спеціальні диски та засоби підвищення якості, такі як модулі Xposed.

Android Nougat: радикальна зміна способу роботи Android?

Хоча ми впевнені, що наміри Google полягають у тому, щоб уникнути можливих проблем для випадкових користувачів Android, які не знатимуть, що робити у випадку, якщо їхній пристрій постраждав від шкідливого програмного забезпечення, або якщо їхня пам'ять має пошкоджені блоки даних, можливо, передали OEM та ідеальний інструмент виробника для того, щоб заблокувати користувачів у житті з тим, що вони були запропоновані, і нічого більше.

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

Вибране зображення надано Flickr

Top