4

Naukowcy z MIT pokazują Intelowi jak załatać lukę Spectre

Za nieco ponad 2 miesiące minie dokładnie rok odkąd dowiedzieliśmy o podatnościach Spectre i Meltdown, na które podatne są procesory Intela oraz w mniejszym stopniu AMD. Od tego czasu pojawiła się już nowa generacja procesorów, ale nie załatała ona jeszcze wszystkich luk. Z pomocą przychodzą jednak naukowcy z MIT.

Poprawki są, ale głównie programowe

Kilka dni temu pisałem, że najnowsza, 9. generacja architektury Core posiada już pewne sprzętowe poprawki, które uodparniają te procesory na dwa warianty ataku Meltdown. Reszta błędów załatana jest na poziomie albo systemu operacyjnego albo UEFI/BIOS i oprogramowania Intel Management Engine. Te rozwiązania mają jedna to do siebie, że wpływają na wydajność, w zależności od testu może to być nawet różnica rzędu 10% i więcej. Nie wiadomo kiedy możemy spodziewać się kolejnych sprzętowych poprawek, ale może pomogą w ich realizacji naukowcy z MIT.

Skylake-X Refresh CoffeeLake-Refresh Cascade Lake Whiskey Lake Amber Lake
Spectre Variant 1 Bounds Check Bypass OS/VMM OS/VMM OS/VMM OS/VMM OS/VMM
Spectre Variant 2 Branch Target Injection Firmware + OS Firmware + OS Hardware + OS Firmware + OS Firmware + OS
Meltdown Variant 3 Rogue Data Cache Load Firmware Hardware Hardware Hardware Firmware
Meltdown Variant 3a Rogue System Register Read Firmware Firmware Firmware Firmware Firmware
Variant 4 Speculative Store Bypass Firmware + OS Firmware + OS Firmware + OS Firmware + OS Firmware + OS
Variant 5 L1 Terminal Fault Firmware Hardware Hardware Hardware Firmware

 

Vladimir Kiriansky, Ilia Lebedev, Saman Amarasinghe, Srinivas Devadas oraz Joel Emer opublikowali właśnie opracowanie, które opisuje nową metodę zarządzania pamięcią cache w procesorach, która eliminuje ryzyko ataku Spectre w obu wariantach (Bounds Check Bypass oraz Branch Traget Injection). Co ważniejsze, metoda ta wymaga tylko nieznacznych zmian w architekturze procesora i modyfikacji jądra systemu operacyjnego. W zamian za to cechuje się znacznie niższym spowolnieniem, rzędu 2-4%, pracy pamięci cache, a w rezultacie mniejszym spadkiem wydajności.

DAWG – Dynamically Allocated Way Guard

Skrót DAWG oznacza nowy sposób partycjonowania i ochrony pamięci cache w procesorze. Dzięki specjalnym ochronnym domenom, procesor może wyizolować wrażliwe dane w chronionej pamięci cache, do której żaden inny proces nie będzie miał dostępu. Jest to recepta na największą bolączkę systemu CAT (Cache Allocation Technology) stosowanego przez Intela, który umożliwia dostęp i transfer wrażliwych danych z pamięci cache przez niepożądany proces.

Jeśli jesteście ciekawi szczegółów to warto zapoznać się z tym kilkustronicowym opracowaniem, w którym szczegółowo została opisana metoda obrony przed Spectre.