LINUX.ORG.RU

История изменений

Исправление dzidzitop, (текущая версия) :

моё предложение - написать статью про уязвимость Doink_the_Clown, которая описывает гипотетическую возможность (в стране розовых пони) через контролируемое переполнение данных в кэше понять каким образом специальным образом подготовленный процесс А на основе зловреного ввода меняет заданные линии кэша, который потом атакующий процесс Б вытесняет другими данными по следующему вводу через процесс А и по времени, затраченному на вытеснение или невытеснение данных из кэша выясняет какими данными оперировал процесс А во время первого ввода данных.

Это бред сивой кобылы и решение на такие «уязвимости» - убрать нахрен все кэши и вернуться в 80е годы.

Но эти люди будут «патчить» компиляторы, чтобы каждая программа вместо нормальных инструкций процессора использовала fences или ретурны, а процессор будет распознавать это и добровольно-принудительно тормозить код. При этом возможность атаковать как была гипотетической - так и останется в такой же мере гипотетической. Только работать всё будет медленнее. Офигенное решение.

Всё, что нужно сделать - это изолировать бранч предикшн между процессами. Кэш и так изолирован на уровне адресации (иначе тупо работать не будет). А на тайминг атаки показать средний палец паникёрам и предложить программистам рандомизировать чувствительный к этому софт. Компиляторы менять под спектре вообще никакой необходимости нет.

Исходная версия dzidzitop, :

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

Это бред сивой кобылы и решение на такие «уязвимости» - убрать нахрен все кэши и вернуться в 80е годы.

Но эти люди будут «патчить» компиляторы, чтобы каждая программа вместо нормальных инструкций процессора использовала fences или ретурны, а процессор будет распознавать это и добровольно-принудительно тормозить код. При этом возможность атаковать как была гипотетической - так и останется в такой же мере гипотетической. Только работать всё будет медленнее. Офигенное решение.

Всё, что нужно сделать - это изолировать бранч предикшн между процессами. Кэш и так изолирован на уровне адресации (иначе тупо работать не будет). А на тайминг атаки показать средний палец паникёрам и предложить программистам рандомизировать чувствительный к этому софт. Компиляторы менять под спектре вообще никакой необходимости нет.