CyberGlossary

Уязвимости

Spectre

Также известно как: Атака спекулятивного исполнения

Определение

Семейство микроархитектурных атак, использующих спекулятивное исполнение в CPU для утечки данных через границы безопасности по кэш-каналам.

Раскрытое в январе 2018 года, семейство Spectre (CVE-2017-5753 вариант 1, CVE-2017-5715 вариант 2 и последующие варианты) эксплуатирует тот факт, что современные внеочередные процессоры спекулятивно исполняют инструкции после неверных предсказаний ветвлений или непрямых переходов. Транзиентные инструкции воздействуют на кэши, оставляя наблюдаемые эффекты, которые атакующий считывает с помощью точных временных измерений — даже если спекулятивный результат архитектурно не зафиксирован. Spectre затрагивает Intel, AMD, ARM и других, нарушает изоляцию процессов и виртуальных машин и трудно поддаётся полному устранению. Меры защиты — компиляторные барьеры (retpoline, LFENCE, speculative load hardening), обновления микрокода (IBRS, IBPB, STIBP, eIBRS), изоляция процессов, site-isolation в браузерах, архитектурные изменения в новых CPU.

Примеры

  • Spectre v1 (Bounds Check Bypass): утечка памяти ядра из пользовательских процессов.
  • Spectre v2 (Branch Target Injection): пересечение границ VM в облачных средах.

Связанные термины