Вслед за сообщениями о баге в чипах Intel процессорный гигант выпустил официальное заявление, в котором говорится, что проблема затрагивает множество типов устройств, не взирая на производителя CPU и операционную систему. Эту информацию подтверждают специалисты проекта Google Project Zero, которые опубликовали детали двух уязвимостей с кодовыми именами Meltdown и Spectre. Корнем всех проблем оказались недоработки механизма спекулятивного выполнения инструкций процессором, но обо всем по порядку.
Meltdown
Уязвимость Meltdown, которой подвержены процессоры Intel с архитектурой x86-64 и некоторые чипы ARM64, позволяет пользовательским приложениям считывать содержимое памяти ядра операционной системы, в которой могут храниться логины, пароли и другая закрытая информация. Спекулятивное выполнение позволяет оптимизировать работу чипа за счет предсказания и обработки инструкций до их подтверждения. Таким образом не теряется время на ожидание, а если проверка не пройдена, все изменения аннулируются.
Проблема заключается в том, что чипы заходят слишком далеко в предварительных оценках. При определенных условиях перед сбросом результатов выполнения в кэше процессора находятся данные из памяти ядра, и хакеры могут узнать о их наличии по скорости реакции на запросы. Проведение атаки по сторонним каналам позволяет получить содержимое памяти. В общем-то, способ не самый простой, однако его невозможно распознать с помощью антивирусов. Установлено, что с помощью Meltdown реально получить доступ к чужой памяти в системах виртуализации (с другой виртуальной машины или даже хост-системы).
Уязвимость Meltdown, которой подвержены процессоры Intel с архитектурой x86-64 и некоторые чипы ARM64, позволяет пользовательским приложениям считывать содержимое памяти ядра операционной системы, в которой могут храниться логины, пароли и другая закрытая информация. Спекулятивное выполнение позволяет оптимизировать работу чипа за счет предсказания и обработки инструкций до их подтверждения. Таким образом не теряется время на ожидание, а если проверка не пройдена, все изменения аннулируются.
Проблема заключается в том, что чипы заходят слишком далеко в предварительных оценках. При определенных условиях перед сбросом результатов выполнения в кэше процессора находятся данные из памяти ядра, и хакеры могут узнать о их наличии по скорости реакции на запросы. Проведение атаки по сторонним каналам позволяет получить содержимое памяти. В общем-то, способ не самый простой, однако его невозможно распознать с помощью антивирусов. Установлено, что с помощью Meltdown реально получить доступ к чужой памяти в системах виртуализации (с другой виртуальной машины или даже хост-системы).
Эта уязвимость позволяет обманным путем получить конфиденциальные данные других приложений. Она эксплуатирует особенности спекулятивного выполнения инструкций в большинстве современных процессоров. Под угрозой решения Intel, AMD и ARM. Описанное выше исправление для Meltdown здесь тоже не поможет. На практике воспользоваться Spectre гораздо сложнее (по словам представителей AMD, шансы практически нулевые), но и решения проблемы в настоящий момент не существует. Возможно, для этого понадобится изменить архитектуру всех процессоров. Обновления микрокода чипов и дополнительные уровни безопасности в приложениях позволяют лишь снизить риски.
Как защититься?
Пока единственный способ обезопасить себя — это установка обновлений операционной системы и браузера. Если, конечно, они поддерживаются производителем. По словам представителей Google, даже без патчей им не удалось воспроизвести уязвимость на Android-устройствах с ARM-процессором, но это слабое утешение.
Случаи атак с применением Meltdown и Spectre пока не зарегистрированы.
Источники: Liliputing, Ars Technica, Intel, Google Project Zero
Присоединяйтесь — мы покажем вам много интересного
Присоединяйтесь к ОК, чтобы подписаться на группу и комментировать публикации.
Нет комментариев