Meltdown
Что такое Meltdown?
MeltdownМикроархитектурная уязвимость (CVE-2017-5754), позволяющая непривилегированному коду читать память ядра, используя внеочередное исполнение и отложенную проверку прав.
Раскрытая в январе 2018 года вместе со Spectre, Meltdown затронула большинство процессоров Intel и часть ARM. Суть дефекта: команда загрузки, нарушающая права доступа к странице, всё равно передаёт значение в транзиентные операции до возникновения исключения; зависимые загрузки оставляют следы в кэше, раскрывающие защищённый байт. Пользовательский процесс мог сливать всё адресное пространство ядра со скоростью мегабайт в секунду. Основной мерой стала изоляция таблиц страниц ядра (KPTI/KAISER) на уровне ОС, дополнительно — обновления микрокода и переработка кремния в более новых CPU. На современном оборудовании и пропатченных ядрах уязвимость в основном устранена, но она показала, насколько катастрофическими могут оказаться невидимые архитектурные предположения.
● Примеры
- 01
PoC, печатающий /etc/shadow из непривилегированного процесса на уязвимом Intel CPU.
- 02
Развёртывание KPTI в облаках в начале 2018 года для ограничения чтения памяти ядра между арендаторами.
● Частые вопросы
Что такое Meltdown?
Микроархитектурная уязвимость (CVE-2017-5754), позволяющая непривилегированному коду читать память ядра, используя внеочередное исполнение и отложенную проверку прав. Относится к категории Уязвимости в кибербезопасности.
Что означает Meltdown?
Микроархитектурная уязвимость (CVE-2017-5754), позволяющая непривилегированному коду читать память ядра, используя внеочередное исполнение и отложенную проверку прав.
Как защититься от Meltdown?
Защита от Meltdown обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия Meltdown?
Распространённые альтернативные названия: Rogue Data Cache Load.