Дослідники стверджують, що низькорівневі ключі безпеки материнської плати просочилися через злам MSI

Дослідники стверджують, що низькорівневі ключі безпеки материнської плати просочилися через злам MSI

Вихідний вузол: 2641177

Близько місяця тому ми писали про а повідомлення про порушення даних випускається основним виробником материнських плат MSI.

Компанія сказала:

Компанія MSI нещодавно зазнала кібератаки на частину своїх інформаційних систем. […] Наразі уражені системи поступово відновили нормальну роботу без істотного впливу на фінансовий бізнес. […] MSI закликає користувачів отримувати оновлення прошивки/BIOS лише з її офіційного веб-сайту та не використовувати файли з інших джерел, окрім офіційного веб-сайту.

Провина компанії сталася через два дні після того, як банда кібервимагачів під назвою Money Message заявила про викрадення вихідного коду MSI, інструментів розробки BIOS і особистих ключів.

У той час злочинці все ще були в режимі зворотного відліку і стверджували, що так і буде «опублікувати вкрадені дані після закінчення таймера»:

Знімок екрана за три години до закінчення таймера злому [2023-04-07].

Годинник зупинився

«Таймер розкриття» на скріншоті вище закінчився 2023 квітня 04 року, трохи більше місяця тому, але сайт Money Message у темній мережі не змінився з моменту першої публікації банди:

Через місяць [2023-05-09].

Тим не менш, дослідники з дослідницької компанії Binarly стверджують, що не тільки отримали дані, викрадені під час зламу, але й шукали в ньому вбудовані крипографічні ключі та знайшли численні збіги.

Поки що Binarly претендує на Github та Twitter отримати численні ключі підпису з даних, якими він володіє, зокрема те, що описується [2023-05-09T14:00Z] як:

  • 1 ключ Intel OEM. Очевидно, цей ключ можна використовувати для керування налагодженням прошивки на 11 різних материнських платах.
  • 27 ключів підпису зображення. Binarly стверджує, що ці ключі можна використовувати для підпису оновлень прошивки для 57 різних материнських плат MSI.
  • 4 клавіші Intel Boot Guard. Ці виточені ключі, очевидно, контролюють перевірку під час виконання коду прошивки для 116 різних материнських плат MSI.

Апаратний захист BIOS

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

Перший приходить BIOS Guard, що дозволяє лише коду, підписаному криптографічним ключем, указаним виробником, отримувати доступ для запису до флеш-пам’яті, яка використовується для зберігання т.зв. Початковий завантажувальний блокабо IBB.

Як випливає з назви, IBB - це місце, де знаходиться перший компонент коду запуску постачальника материнської плати.

Його підрив дасть зловмиснику контроль над зараженим комп’ютером не лише на рівні, нижчому за будь-яку операційну систему, яка пізніше завантажується, але й на рівні, нижчому за рівень будь-яких утиліт прошивки, встановлених в офіційному EFI (розширений інтерфейс прошивки) розділ диска, можливо, навіть якщо цей розділ захищено власною системою цифрового підпису мікропрограми Secure Boot.

Після приходить BIOS Guard Запобіжник, який перевіряє код, завантажений з IBB.

Ідея тут полягає в тому, що хоча BIOS Guard має запобігти будь-яким неофіційним оновленням мікропрограми від спалаху в першу чергу, забороняючи доступ до запису для шахрайських інструментів оновлення мікропрограм...

… він не може сказати, що прошивці, «офіційно» підписаній постачальником материнської плати, не можна довіряти через витік ключа підпису образу прошивки.

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

Одноразове зберігання ключів

Щоб підвищити рівень криптографічної перевірки, який надають BIOS Guard і Boot Guard, а також прив’язати процес до конкретної материнської плати або сімейства материнських плат, використовувані ними криптографічні ключі не зберігаються у перезаписуваній флеш-пам’яті.

Вони врятовані, або видутий, на жаргоні, в пам’ять одноразового запису, вбудовану в саму материнську плату.

Слово видутий походить від того факту, що схема накопичувача побудована як серія наноскопічних «сполучних проводів», виконаних у вигляді крихітних електричних запобіжників.

Ці з’єднання можна залишити недоторканими, що означає, що вони читатимуться як двійкові одиниці (або 1, залежно від того, як вони інтерпретуються), або «роздуваються» – іншими словами – з’єднуються – у одноразовій модифікації, яка назавжди перевертає їх у двійкові 0 (або 0).

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

Це хороша новина.

Коли ключі криптографічної перевірки BIOS Guard і Boot Guard записуються в плавку пам’ять, вони блокуються назавжди, і ніколи не можна підірвати.

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

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

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

Intel документація містить три рівні налагодження.

зелений позначає доступ до налагодження, дозволений будь-кому, який не повинен відкривати будь-які секрети низького рівня або дозволяти змінювати процес завантаження.

помаранчевий позначає повний доступ до налагодження для читання та запису, дозволений тому, хто має відповідний закритий ключ постачальника.

червоний позначає те саме, що й помаранчевий, але відноситься до головного приватного ключа, що належить Intel, який може розблокувати материнську плату будь-якого внедора.

Як досить очевидно і прямо заявляє Intel у своїй документації:

Передбачається, що виробник платформи не надаватиме свій ключ автентифікації [помаранчевий режим] жодному іншому набору налагоджувачів.

На жаль, Binarly стверджує, що шахраї розкрили ключ оранжевого режиму, який може ввімкнути низькорівневе налагодження під час завантаження на 11 різних материнських платах від HP, Lenovo, Star Labs, AOPEN і CompuLab.

Остерігайтеся буткіта

Таким чином, твердження Binarly, здається, припускають, що за допомогою ключа підпису мікропрограми та ключа підпису Boot Guard зловмисник може не лише змусити вас та ваші інструменти оновлення мікропрограми встановити те, що виглядає як справжнє оновлення мікропрограми…

…але також мати можливість обдурити материнську плату, яка була апаратно заблокована за допомогою захисту Boot Guard, щоб дозволити завантажувати цю фальшиву мікропрограму, навіть якщо оновлення виправляє сам початковий блок завантаження.

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

Простіше кажучи, принаймні теоретично ви могли б отримати не просто a rootkit, але а буткіт.

A rootkitНа жаргоні це код, який маніпулює ядром операційної системи, щоб запобігти навіть самій операційній системі виявити, повідомити або запобігти певним типам зловмисного програмного забезпечення пізніше.

Деякі руткіти можна активувати після завантаження операційної системи, як правило, шляхом використання вразливості на рівні ядра для внесення неавторизованих внутрішніх змін до самого коду операційної системи.

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

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

Буткіт на цьому рівні означає, що навіть видалення або заміна всього жорсткого диска (включно з т.зв. Системний розділ інтерфейсу розширеного мікропрограмного забезпечення, скорочено EFI або ESP) недостатньо для дезінфекції системи.

Типове налаштування диска Mac.
Розділ EFI позначено відповідно.
Типове налаштування диска Windows 11.
тип c12a7...ec93b позначає розділ EFI.

Як аналогію, ви можете подумати про руткіт, який завантажується після операційної системи, як про спробу підкупити присяжних, щоб виправдати винного обвинуваченого в кримінальному процесі. (Ризик того, що це станеться, є однією з причин, чому суди присяжних у кримінальних справах зазвичай мають 12, 15 або більше членів.)

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

Але буткіт більше схожий на те, щоб змусити законодавчу владу скасувати сам закон, за яким звинувачують підсудного, так що справа, незалежно від того, наскільки ретельно були зібрані та представлені докази, не може продовжуватися взагалі.

Що ж робити?

Відкриті ключі Boot Guard, записані на вашу материнську плату, не можна оновити, тому, якщо їхні відповідні закриті ключі зламано, ви нічого не зможете зробити, щоб вирішити проблему.

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

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

Щоразу, коли ви змінюєте один зі зламаних замків, ви зменшуєте корисність викраденого ключа, але доки ви не зміните кожен окремий замок, ви не вирішите належним чином проблему безпеки.

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

Тому найкращим вибором у цьому випадку є чітко дотримуватися початкової поради MSI:

[O]отримуйте оновлення прошивки/BIOS лише з офіційного веб-сайту [MSI] і [не] використовуйте файли з інших джерел, окрім офіційного веб-сайту.

На жаль, ця порада, ймовірно, зводиться до п’яти не зовсім корисних слів і знаку оклику.

Будьте обережні там, люди!


Оновлення. PR-компанія Intel надіслала нам електронний лист, щоб повідомити, що компанія «знає про ці повідомлення та активно розслідує». Вони також просили нас вказати на це «ОЕМ-ключі Intel Boot Guard генеруються виробником системи, [тому] це не ключі підпису Intel». Абревіатура OEM є скороченням від виробник оригінального обладнання, дещо заплутаний, але давно усталений термін, який відноситься не до постачальника або постачальників окремих компонентів, вбудованих у продукт, а до постачальника, який виготовив всю систему. Наприклад, коли ви купуєте те, що ви можете назвати «материнською платою Intel» від MSI, MSI є OEM, тоді як Intel є постачальником мікросхеми процесора та, можливо, інших компонентів чіпсета, які є серцевиною готового продукту. (Якби ваша материнська плата була кабелем безпеки для велосипеда, тоді Intel виготовила б замок, але виробник обладнання зварив би кабель, покрив продукт захисним покриттям і вибрав би номери для комбінації.) [2023-05]. -09T22:45Z]


Часова мітка:

Більше від Гола безпека