Сучасні процесори, ймовірно, постійно переслідуються недоліками безпеки привидів
З тих пір, як було виявлено ряд недоліків безпеки Spectre і Meltdown, виникли питання про те, наскільки безпечними можуть бути сучасні процесори, які ми використовуємо. У той же час, різниця, в якій компанії піддавалися конкретним атакам, створювала плутанину щодо того, як зважувати докази. Або, скажемо прямо - чи була Spectre дійсно лише проблемою для Intel, з випадковою експозицією для інших компаній?
Група дослідників Google має відповідь на це питання, і це не одна людина, яка не сподобається. Цитуємо:
Уразливості від спекулятивного виконання не є помилками процесорів, але більш належним чином вважаються фундаментальними недоліками конструкції, оскільки вони не виникають з помилок. Ці фундаментальні недоліки в дизайні десятиліттями не помічалися. У нашій роботі показано, що ці витоки є не тільки недоліками дизайну, але насправді є фундаментальними, на самій основі теоретичних обчислень.
Дослідницькі групи оцінювали безліч ідей, включаючи максимальне можливе вимкнення спекулятивного виконання за допомогою використання інструкції LFENCE, з використанням стратегій пом'якшення таймерів (коригування точності різних таймерів системи), а також використання матриці без відгалуження, замість того, щоб покладатися на інструкції гілок ввести в дію те, що не довіряє коду. Жодне з цих рішень не є повним виправленням проблеми. Ніхто з них не може розраховувати на те, щоб забезпечити безпеку від усіх типів атак із бічних каналів, і навіть комбінація передового досвіду програмного і апаратного забезпечення не змогла захистити від будь-якого типу експлуатації.
Немає легких виправлень, немає швидких рішень
На думку дослідників, стан мікроархітектур у чорній коробці та їхня залежність від ІС закритого джерела представляє величезний бар'єр для дослідження та вирішення подвигів побічних каналів. Ще важче знати, як розробити стратегії ефективного довгострокового пом'якшення в майбутніх продуктах.
Вони пишуть:
Комп'ютерні системи стали масово складними в переслідуванні цілей першого виду виконання. Ми були надзвичайно успішні в тому, щоб зробити їх більш швидкими і потужними, але й більш складними, полегшеними багатьма способами створення абстракцій. Башта абстракцій дозволила нам завоювати довіру до наших проектів через окремі міркування та перевірку, розділяючи апаратне забезпечення від програмного забезпечення, і впроваджуючи межі безпеки. Але ми знову бачимо, що наші абстракції протікають, бічні канали існують поза нашими моделями, і тепер, в глибині апаратних засобів, де ми не повинні були бачити, є вразливості в самих чіпах, які ми розгортали в усьому світі. Наші моделі, наші ментальні моделі, неправильні; ми постійно торгували безпекою продуктивності та складності і не знали цього.
Ступінь, якою ми зробили або не «знали» про ці речі, здається, є предметом інтерпретації. Звичайно, ідея, що спекулятивне виконання може представляти загрозу безпеці, була концептуально відома десятиліттями. Збільшення кількості транзисторів процесора з кожним поколінням продуктів, як правило, було сприйнято як хороша річ, навіть якщо стало важче охолодити ці транзистори або запустити їх на високій тактовій частоті.
До теперішнього часу в природі не спостерігали подій, спрямованих на Spectre і Meltdown. Це виглядає як випадок «коли», а не «якщо», але гравці в галузі ЦП не хочуть розглядати їх як ігнорують ці проблеми. Водночас, не зрозуміло, чи можна їх вирішити, не відкинувши спекулятивне виконання, а також величезні переваги, які вона надає.
Читати далі
Як працюють кеші процесорів L1 та L2 та чому вони є важливою частиною сучасних чіпів
Вам коли-небудь цікаво було, як працюють кеші L1 та L2? Ми раді, що ви запитали. Тут ми глибоко зануримось у структуру та природу одного з найважливіших обчислювальних проектів та інновацій.
Розміщення продуктів, незабаром до класичного фільму, сучасного телевізора біля вас
Нова маркетингова компанія AI-powered хоче рекламувати місця, коли раніше вважало недосяжним, щоб поставити більше продуктів перед вашими очними яблуками.
RISC проти CISC - це неправильна лінза для порівняння сучасного X86, ручного процесора
Спробуйте розслідувати відмінності між сім'ями процесорів X86 та ARM (або X86 та Apple M1), і ви побачите акроніми CISC та RISC. Це загальний спосіб рамки обговорення, але не дуже корисний. Сьогодні "RISC проти CISC" затьмарює більше, ніж це пояснює.
Інтегрована графіка ноутбука все ще є маргінальними для сучасних ігор
Ви можете потрапити 1080p ігор на деяких сучасних ноутбуках, але наскільки добре ви будете залежати від того, що ви намагаєтеся грати.