Уязвимость вызвана тем, что при возникновении исключения #DE при делении на ноль, процессор спекулятивно перенаправляет результат предыдущей операции деления, так как на CPU с микроархитектурой Zen1 в конвейере присутствует только один делитель, обслуживающий операций в разных потоках. На уязвимых системах атакующий может определить результат предыдущей операции деления, в том числе выполненной на том же ядре CPU в других контекстах, например, в ядре, в других процессах или вне виртуальной машины.
С практической стороны уязвимость может использоваться для организации скрытого канала передачи данных между процессами, sandbox-окружениями или виртуальными машинами, позволяющего обмениваться данными в обход системных механизмов разграничения доступа и без обращения к системным вызовам. Уязвимость также позволяет из пространства пользователя определить результат предыдущего фактического или спекулятивного выполнения инструкции DIV, которая может применяться при обработке конфиденциальных данных на более высоком уровне привилегий (например, деление может использоваться при выполнении криптографических операций и атакующий может определить параметры этих операций).
Исправления для блокирования уязвимости подготовлены для ядра Linux и гипервизора Xen. Проблема устранена через перезапись буфера делителя во время переключения контекста. Исправление эффективно только при отключении симметричной многопоточности (SMT).
Источник: http://www.opennet.ru/opennews/art.shtml?num=59814