Ataki nazwane Meltdown oraz Spectre są faktycznie niebezpieczne i dotyczą wielu rodzin procesorów.

 

 

Jann Horn, badacz z dostarczającego niekończący się ciąg błędów zespołu Project Zero, opublikował szczegóły techniczne odkrytych przez siebie błędów w procesorach Intela, AMD i ARM. Wcześniej zapowiedziano publikację informacji dopiero 9 stycznia, ale z racji niebezpieczeństwa przedstawiono je wcześniej.

Wyciek informacji z pamięci podręcznej - przedstawiamy opis podatności na podstawie artykułu na portalu zaufanatrzeciastrona.pl

Na początek kilka słów o tym, jak działają procesory – w ogromnym uproszczeniu. Jednym z podstawowych założeń działania procesorów jest izolacja. System operacyjny zna informacje, których potrzebuje do działania, ale nie powinien ich ujawniać każdej aplikacji. Przykładem niech będzie hasło, którym zaszyfrowany jest dysk twardy. System musi je znać, by zapisywać i odczytywać dane, ale nie musi go znać edytor tekstu, który prosi system o zapisywanie i odczytywanie plików. Na izolacji dostępu pomiędzy procesami oparte jest bezpieczeństwo wielu kluczowych informacji.

Twórcy procesorów zawsze starają się przyspieszyć ich działanie. Jednym z pomysłów jest wróżenie, jakie będą kolejne instrukcje. Procesor wykonuje instrukcje krok po kroku, ale aby działać szybciej, zgaduje, co będzie kolejnym krokiem i „wyprzedza” wykonanie procesu. Jeśli się pomylił – cofa się do punktu, gdzie popełnił błąd, a przetworzone dane zapomina.

Tu pojawiają się dwa problemy. Pierwszy jest taki, że operacje wykonane „z wyprzedzeniem” nie sprawdzają, czy użytkownik miał prawo je wykonać i poznać ich efekt. Ta kontrola następuje dopiero później, jeśli do wykonania instrukcji miało faktycznie dojść. Może się zatem zdarzyć, że odpowiednio zmanipulowany procesor sięgnie do informacji, do których użytkownik nie powinien mieć dostępu. Po ułamku sekundy je porzuca, jednak tu pojawia się drugi problem. Badacz, który odkrył atak, znalazł trzy różne sposoby na wydobycie tych porzuconych informacji z pamięci podręcznej procesora. Stosując bardzo sprytne metody zgadywania jej zawartości był w stanie wykraść z pamięci podręcznej porzucone dane, tym samym uzyskując dostęp do informacji, które nie były dla niego przeznaczone.

 

Skutki ataku

Badacze, stojący za odkryciami, opisali dwie kategorie ataków: Meltdown i Spectre.

Meltdown umożliwia nieuprzywilejowanemu procesowi odczytywanie zawartości całej pamięci systemowej. Na atak podatne są wszystkie procesory Intela wyprodukowane od roku 1995, oprócz Itanium i Intel Atom sprzed roku 2013 (zatem problem dotyczy zarówno komputerów osobistych jak i serwerów). Nie potwierdzono podatności procesorów AMD i ARM. Dostępne są lub lada moment będą aktualizacje usuwające problem.

Spectre umożliwia złośliwemu procesowi odczytywanie pamięci innych procesów. Podatne są procesory Intela, AMD i ARM, zatem nie tylko komputery osobiste, ale także serwery i smartfony. Trwają prace nad stworzeniem aktualizacji usuwających wykryte problemy. Atak Spectre jest trudniejszy do przeprowadzenia niż atak Meltdown.

Na skutek opisywanych ataków zaburzeniu ulega cały model bezpieczeństwa danych, zarówno w środowiskach lokalnych jak i chmurowych. To naprawdę poważne problemy, chociaż na szczęście ich wykorzystanie jest dalekie od trywialnego. To, co możecie zrobić już dzisiaj, to przynajmniej skonfigurować Google Chrome, by działanie każdej strony izolowała w osobnym fragmencie pamięci. Aktualizacje Windowsa, Androida czy OS X powinny już być lub wkrótce pojawić się na Waszych systemach (o ile używacie wspieranych wersji).

Pozostaje mieć nadzieję, że aktualizację nie spowolnią naszych systemów i że pojawią się wcześniej niż skuteczne ataki wykorzystujące te mechanizmy.