Главная » Хабрахабр » [Перевод] Для устранения Spectre и Meltdown, возможно, придётся создать процессор совершенно нового типа

[Перевод] Для устранения Spectre и Meltdown, возможно, придётся создать процессор совершенно нового типа

Правда ли, что Meltdown и Spectre слишком фундаментальны для того, чтобы выпустить для них патч? Один эксперт считает именно так.

Этот вопрос был самой горячей темой среди энтузиастов микропроцессоров в этом году. Как определить и исправить такие ошибки, как Spectre и Meltdown? На одном из главных академических событий индустрии, конференции Hot Chips, эксперты согласились, что окончательное решение проблемы может потребовать – да, ещё больше разговоров.

Он перечислил такие решения, как специализированные ядра, сброс кэша при смене контекста и бизнес-идеи вроде увеличения платы за эксклюзивные виртуальные машины.
Но реальным ответом, как сказал он и другие выступающие, будет улучшение сотрудничества разработчиков софта и оборудования – и, возможно, полная переработка сегодняшних микропроцессоров. На встрече в Купертино профессора Марка Хилла из Висконсинского университета попросили порассуждать о последствиях атак по сторонним каналам или атак на спекулятивное выполнение команд у современных процессоров, которые изготавливают компании ARM, Intel, и другие.

Как целая индустрия чипов получила удар исподтишка

Информацию о Meltdown и Spectre неожиданно раскрыли в конце 2017 года, незадолго до того, как эти уязвимости должны были формально, по-тихому раскрыть на CES в январе 2018 года. Их обнаружила команда поиска уязвимостей нулевого дня из Google, Google Project Zero. Атаки пользуются такой возможностью современных микропроцессоров, как спекулятивное выполнение команд, когда процессор, по сути, «угадывает», какую ветвь инструкций нужно выполнять. Пол Тёрнер, инженер и руководитель основного костяка разработчиков Google, присутствовавший на конференции, рассказал, что никто из членов Project Zero не предупредил об открытии своих коллег; они узнали об этом вместе со всеми.

Они ошибались, что и доказали атаки по сторонним каналам. В течение 20 лет разработчики микропроцессоров считали, что неверная «догадка» просто отбрасывает данные, не создавая рисков для безопасности.

Это побудило производителей процессоров, в частности, Intel, совместно с Microsoft, выпустить исправляющие положение программы, или заплатки. С практической точки зрения это означает, что одна вкладка браузера может просматривать содержимое другой, или одна виртуальная машина может заглядывать в другую. Это наиболее эффективный способ защиты вашего ПК от Spectre, Meltdown, или любых других последующих атак, например, Foreshadow.

NetSpectre, способный удалённо воспользоваться уязвимостью Spectre, можно использовать для взлома облачного сервиса или удалённой машины. К счастью, проверка такой информации требует времени — в некоторых случаях, довольно много. С другой стороны, среднее время между взломом сервера и обнаружением этого факта составляет 100 дней, добавил он – что может дать уязвимости время поработать. С одной стороны, данные могут утекать не быстрее 1 бита в минуту, как говорит Джон Хеннесси, знаменитый разработчик микропроцессоров, член совета директоров Alphabet.

Процессоры Intel следующего поколения, вероятно, не смогут полностью исправить первый вариант Spectre, как сказал Хеннесси, несмотря на то, что разработка мер по устранению этого недостатка начнётся этой осенью, в проекте нового процессора Xeon, Cascade Lake.

Патчить или переделывать?

ARM, Intel, AMD и другие гиганты индустрии могут исправить проблему, приняв необходимые меры довольно быстро, добавил Хилл. Но для полного устранения проблемы могут потребоваться более фундаментальные изменения, сказал он.

– Или нам придётся относиться к ней, как к преступлениям, которые мы только пытаемся сдерживать». «В долгосрочной перспективе встаёт вопрос, как правильно описать этот процесс, чтобы потенциально полностью устранить проблему, — сказал Хилл.

Но такое выполнение расценивали, как «волшебный чёрный ящик», сказал он, без соответствующих вопросов со стороны пользователей или клиентов. Спекулятивное выполнение команд – одна из причин, по которым микропроцессор, а следовательно, и ПК, достигли рекордных продаж, отметил участник конференции Джон Мастерс, архитектор компьютерных систем из Red Hat. Устраните спекулятивное выполнение – и это замедлит работу процессора в двадцать раз, сказал Хилл. Этот джинн уже тоже выпущен из бутылки.

Одним решением может быть добавление более медленных и безопасных режимов исполнения; другим – разделение механизма исполнения команд между «быстрыми ядрами» и «безопасными ядрами». Среди предложенных Хиллом решений – изолирование элемента предсказания ветвления, добавление рандомизации, реализация улучшенной защиты оборудования. Наконец, Хилл отметил, что атаки вроде Spectre могут также привести к возрождению ускорителей: логики фиксированного назначения, оптимизированной для одной задачи, и не полагающейся на спекуляции. Он также предложил бизнес-решения, среди которых увеличение стоимости виртуальных машин – вместо разделения ресурсов оборудования между несколькими виртуалками, облачный провайдер мог бы обеспечивать эксклюзивный доступ.

Архитектура компьютера определяет, как процессор выполняет набор инструкций программы при помощи арифметических устройств, устройств для работы с плавающей запятой, и прочих. Но фундаментальным решением этой проблемы была бы полная переработка архитектуры, сказал Хилл. Но если базовая архитектурная модель имеет фундаментальный недостаток, сказал он, возможно, пришло время для новой модели. Сегодняшние чипы были разработаны для удовлетворения требований оригинальной модели. Иначе говоря, Spectre и Meltdown – это не баги, а недостатки в дизайне современных чипов, из-за чего может потребоваться новая модель.

«Часто бывает так, что разработчики оборудования создают какую-то прекрасную машину, и мы прекращаем говорить о ней, или разработчики ПО говорят – ну, это же железо, мне-то что до него. В итоге участники конференции сошлись на простых истинах, вроде той, что оборудование необходимо разрабатывать, помня о программном обеспечении, и наоборот – и обе стороны должны усиливать безопасность. Пора это прекращать», — сказал Мастерс.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

[Из песочницы] LVEE — самая неформальная и душевная ИТ-тусовка

О событии Под Минском завершилась ежегодная конференция LVEE 2018 (Linux Vacation/Eastern Europe), организованная белорусской группой пользователей Linux еще в 2005 году. В мероприятии принимали участие более сотни людей из 7 стран, а программу составили 23 доклада, лайтнинги, воркшоп, круглый стол, ...

Губительная ошибка новичков в геймдеве

Перед началом любого дела необходимо составить план, сделать «пробы пера», одним словом — черновик. Именно это помогает определить стартовую точку и понять направление движения. Не хотите тратить тонны усилий впустую? Хотите делать быстрее и качественней остальных? 90% начинающих разработчиков этого ...