В ядре Linux найдена уязвимость (CVE-2019-7308), позволяющая обойти защиту от проведения атак класса Spectre v1 через использование подсистемы eBPF. Проблема устранена в выпусках ядра 4.19.19 и 4.20.6, но в дистрибутивах пока остаётся неисправленной (Debian, RHEL, SUSE, Ubuntu). Для чтения данных из привилегированных областей памяти при помощи атаки Spectre v1 необходимо наличие в привилегированном коде определённой последовательности команд. Подобные сочетания команд были удалены из ядра Linux, но разработчики не учли то, что подсистема eBPF позволяет инициировать выполнение в контексте ядра произвольных BPF-программ. Через манипуляцией с байткодом BPF атакующий может добиться выполнения JIT-компилятором eBPF необходимого для совершения атаки Spectre v1 сочетания машинных инструкций, приводящих к спекулятивному обращению к внешним областям памяти при совершении операций с указателем. Дополнительно, можно отметить предложение включить в состав ядра Linux патч, реализу
В eBPF найдена возможность обхода защиты ядра Linux от атаки Spectre
4 февраля 20194 фев 2019
66
1 мин