Уязвимости ЦП в последнее время были в моде, две из них — Zenbleed и Downfall. Но насколько вам следует волноваться?
В последние годы об уязвимостях ЦП то появлялись, то исчезали новости, и они часто сопровождаются довольно пугающим сообщением, когда дело доходит до их раскрытия. В случае Зенблид и ПадениеДело в том, что любое приложение на вашем компьютере могло получить доступ к памяти любой другой программы, работающей при определенных обстоятельствах. Звучит напряженно, правда?
Однако все не так плохо, как кажется. Очевидно, что это достаточно важно, чтобы гарантировать раскрытие информации и обновление программного обеспечения для исправления ошибок, даже за счет производительности, но что именно происходит, вызывая эти проблемы безопасности? Стоит ли вам беспокоиться?
Стоит ли вам беспокоиться об уязвимостях ЦП, таких как Zenbleed, Downfall и Inception?
Честно говоря, ни один из этих подвигов не затрагивает подавляющее большинство людей. Хотя они могут передавать данные из одной программы в другую, любое вредоносное ПО на компьютере пользователя уже имеет высокий уровень доступа, которым оно может злоупотреблять. Вместо этого эти атаки вызывают особое беспокойство в контексте облачных вычислений.
Чтобы понять проблему, нужно понимать, что множество разных облачных серверов просто компьютеры с большой мощностью, большой пропускной способностью сети и другое специализированное оборудование, если необходимый. Многие компании сдают в аренду так называемые VPS или виртуальные частные серверы, которые представляют собой виртуализированные машины с ограниченной мощностью, к которым могут стремиться десятки других виртуальных машин.
Проблема может заключаться в том, что один человек на одной виртуальной машине может выполнить одно из этих действий. уязвимостей, получая представление о том, какие данные проходят через процессор, включая данные от других виртуальные машины. Это не должно быть возможным и является серьезным нарушением безопасности. Вот почему, когда был раскрыт Zenbleed, уже существовали патчи для процессоров AMD Epyc, предназначенные для использования на серверах.
Самые серьезные уязвимости ЦП на данный момент
Отраслевым стандартом «ранжирования» уязвимостей и их серьезности является Общая система оценки уязвимостей (CVSS). Он обеспечивает количественную меру серьезности, поскольку на оценку влияют различные аспекты уязвимости. Он измеряет, принимая во внимание следующее:
- Вектор атаки: Сеть/Смежный/Локальный/Физический
- Сложность атаки: Низкий высокий
- Требуемые привилегии: Нет/Низкий/Высокий
- Взаимодействие с пользователем: Нет/Обязательно
- Объем: Без изменений/Изменено
- Конфиденциальность: Нет/Низкий/Высокий
- Честность: Нет/Низкий/Высокий
- Доступность: Нет/Низкий/Высокий
Все это классифицирует серьезность ошибки. Например, уязвимость, которая может быть реализована в сети с низкой сложностью, без необходимости привилегий, без взаимодействия с пользователем, с измененной областью действия. высокая утечка конфиденциальности данных, высокий уровень нарушений целостности данных и большое влияние на доступность получат высшую оценку 10 в CVSS 3.1. возможный.
По этому показателю мы можем оценить ущерб, на который способны Zenbleed и Downfall. Спойлер: они одинаковы, но влияют на разные процессоры. Поэтому, пока они набирают определенную сумму в В контексте уязвимостей они могут затрагивать разное количество продуктов, и это не повлияет на их счет. Оценки CVSS, по сути, предназначены только для сортировки, но не отражают полную картину.
Дзенкровопускание: 6,5 (Средний)
- Вектор атаки: Местный
- Сложность атаки: Низкий
- Требуемые привилегии: Низкий
- Взаимодействие с пользователем: Никто
- Объем: Измененный
- Конфиденциальность: Высокий
- Честность: Никто
- Доступность: Никто
Объяснение: Вектор атаки требует локального доступа к машине (т.е. она выполняется на машине), но при этом не оказывает влияния на целостность данных на машине или ее доступность. Однако он меняет масштаб (то есть влияет на ресурсы, выходящие за рамки его привилегий) и сложность атаки, а привилегии, необходимые для выполнения, становятся низкими. Это также полностью нарушает конфиденциальность информации на машине.
Падение: 6,5 (Средний)
- Вектор атаки: Местный
- Сложность атаки: Низкий
- Требуемые привилегии: Низкий
- Взаимодействие с пользователем: Никто
- Объем: Измененный
- Конфиденциальность: Высокий
- Честность: Никто
- Доступность: Никто
Объяснение: Вектор атаки требует локального доступа к машине (т.е. она выполняется на машине), но при этом не оказывает влияния на целостность данных на машине или ее доступность. Однако он меняет масштаб (то есть влияет на ресурсы, выходящие за рамки его привилегий) и сложность атаки, а привилегии, необходимые для выполнения, становятся низкими. Это также полностью нарушает конфиденциальность информации на машине.
Начало: 5,6 (средний)
- Вектор атаки: Местный
- Сложность атаки: Высокий
- Требуемые привилегии: Низкий
- Взаимодействие с пользователем: Никто
- Объем: Измененный
- Конфиденциальность: Высокий
- Честность: Никто
- Доступность: Никто
Объяснение: Вектор атаки требует локального доступа к машине (т.е. она выполняется на машине), но при этом не оказывает влияния на целостность данных на машине или ее доступность. Однако он меняет область действия (то есть влияет на ресурсы, выходящие за рамки его привилегий), сложность атаки высока, а привилегии, необходимые для выполнения, низки. Это также полностью нарушает конфиденциальность информации на машине.
Спектр: 5,6 (Средний) (Исправлено)
Призрак, несмотря на то, что он является более распространенным явлением, на самом деле набирает очки. меньше чем Zenbleed и Downfall. Это благодаря тому, что сложность атаки была названа «Высокой», что снизило ее оценку.
- Вектор атаки: Местный
- Сложность атаки: Высокий
- Требуемые привилегии: Низкий
- Взаимодействие с пользователем: Никто
- Объем: Измененный
- Конфиденциальность: Высокий
- Честность: Никто
- Доступность: Никто
Объяснение: Вектор атаки требует локального доступа к машине (т.е. она выполняется на машине), но при этом не оказывает влияния на целостность данных на машине или ее доступность. Однако он меняет область действия (то есть влияет на ресурсы, выходящие за рамки его привилегий), сложность атаки высока, а привилегии, необходимые для выполнения, низки. Это также полностью нарушает конфиденциальность информации на машине.
Meltdown: 5,6 (Средний) (Исправлено)
Как и Spectre, Meltdown оценивается ниже, чем Zenbleed и Downfall, из-за требуемой большей сложности атаки.
- Вектор атаки: Местный
- Сложность атаки: Высокий
- Требуемые привилегии: Низкий
- Взаимодействие с пользователем: Никто
- Объем: Измененный
- Конфиденциальность: Высокий
- Честность: Никто
- Доступность: Никто
Объяснение: Вектор атаки требует локального доступа к машине (т.е. она выполняется на машине), но при этом не оказывает влияния на целостность данных на машине или ее доступность. Однако он меняет область действия (то есть влияет на ресурсы, выходящие за рамки его привилегий), сложность атаки высока, а привилегии, необходимые для выполнения, низки. Это также полностью нарушает конфиденциальность информации на машине.
Основная причина: предсказание ветвей
Источник: AMD
Прогнозирование ветвей и спекулятивное выполнение в широком смысле относятся к ситуациям, когда ваш компьютер выполняет операции, которые не нужны в данный момент, но будут выполняться в последующих циклах. Это часто делается в тех случаях, когда в вашей системе есть свободные ресурсы, поскольку это ускоряет общую обработку, когда в противном случае инструкции или данные еще не были бы готовы для ЦП. Если проделанная работа не нужна, она обычно отбрасывается, и процессор может вернуться туда, где ему нужно, чтобы выполнить следующую правильную инструкцию. Когда это происходит, это называется неправильным предсказанием ветвления.
Для более глубокого понимания предсказателей ветвления представьте себе сценарий, в котором программа последовательно добавляет одни и те же два числа во время своего выполнения. На каком-то этапе процессор может распознать этот шаблон и подготовить следующие шаги, если метод сложения этих двух чисел будет вызван снова. Если в какой-то момент этот результат изменится, даже если процессор планировал, что одни и те же два числа будут одинаковыми, тогда предположение будет отброшено и заменено фактическим потоком выполнения. Однако на данный момент эти цифры являются то же самое, то процессор может быстро пропустить эти инструкции.
Однако существует множество проблем, когда дело доходит до спекулятивного выполнения, и результатом являются такие уязвимости, как Spectre, Zenbleed, Downfall и другие. Это мощная функция, которой мы во многом обязаны производительности современных процессоров, но она является основной целью, когда исследователи ищут уязвимости в процессорах.
Смягчение: снижение производительности
Устранение этих уязвимостей имеет первостепенное значение, но проблема в том, что эти меры часто снижают производительность. В случае с последним Zenbleed от AMD, смягчение последствий может привести к огромным потерям производительности.
Причина этого в том, что единственный реальный способ обойти эту проблему — отключить или изменить поведение предсказателя ветвления в затронутом процессоре. Тот же самый удар по производительности можно найти в смягчении последствий Intel Downfall. при этом ранние отчеты предполагают снижение производительности до 39 %.. Эпические игры когда-то классно поделился Графики использования ЦП после обнаружения уязвимости Meltdown и того, какое влияние оказали эти меры на загрузку ЦП компании. Как и следовало ожидать, произошел значительный рост использования процессора. Что становится страшнее, так это исправление для AMD Inception. производительность снизилась на 54%..
Поскольку подобные уязвимости затрагивают фундаментальные функции процессора, их трудно исправить, кроме отключения или серьезного повреждения основных функций. Спекулятивное исполнение невероятно важно, и многие люди ощутят это смягчение последствий. Производительность в играх менее предсказуема, поэтому, если основное использование вашего компьютера — игры, возможно, вы хорошо, поскольку ваш компьютер не может делать столько прогнозов, но эти проблемы масштабируются гораздо сильнее. системы.
Будущие процессоры затронуты?
К счастью, в случае с Intel Downfall и Zenbleed эти эксплойты затрагивают старые процессоры. Новые процессоры от обеих компаний в безопасности, и пока не о чем беспокоиться. Значительный редизайн обычно решает эти проблемы. Например, Spectre затронул процессоры Intel восьмого и девятого поколений, но девятое поколение включало аппаратную версию реализованных программных исправлений, в комплекте с хитом производительности. 10-е поколение Intel по-прежнему было безопасным, но эти меры по смягчению последствий больше не влияли на производительность.
В результате, учитывая, что и Downfall, и Zenbleed уже исправлены в самых последних версиях соответствующих процессоров, пользователям не о чем беспокоиться. Конечно, всегда могут быть обнаружены новые уязвимости, но на данный момент вы в безопасности.