AMD potwierdza, że ​​Zen 3 jest podatny na atak Spectre-STL

Niedawno wypuścili rzecznicy AMD poprzez publikację raportu, w którym jest on podawany do wiadomości informacje o przeprowadzonej analizie bezpieczeństwa technologia optymalizacji PSF (Predictive Store Forwarding) zaimplementowana w procesorach Seria Zen 3.

Badanie teoretycznie potwierdziło zastosowanie metody ataku Spectre-STL (Spectre-v4) na technologię PSF, zidentyfikowaną w maju 2018 r., Ale w praktyce nie znaleziono jeszcze żadnych szablonów kodu zdolnych do sprowokowania ataku, a ogólne zagrożenie uważa się za znikome.

Rekord cytowane do specjalisty z Politechniki w Grazu, Daniel Gruss, który odkrył, że AMD PSF może być podatne na ataki do różnorodnych ataków kanałem bocznym, które przez lata bardzo się rozwinęły.

Przypomnij sobie, że atak Spectre-v4 (Spekulacyjne obejście sklepu) polega na przywracaniu danych, które zostały zapisane w pamięci podręcznej po odrzuceniu wyniku spekulatywnego wykonywania operacji przez przetwarzanie alternatywnych operacji odczytu i zapisu przy użyciu adresowania pośredniego.

Gdy operacja odczytu jest kontynuowana do operacji zapisu (na przykład mov [rbx + rcx], 0x0; mov rax, [rdx + rsi]), przesunięcie kierunku odczytu może już być znane Dzięki podobnym operacjom (operacje odczytu są wykonywane znacznie częściej, a odczyt można wykonać z pamięci podręcznej), a procesor może spekulacyjnie czytać przed zapisem, bez czekania na obliczenie przesunięcia pośredniego kierunku zapisu.

Ta funkcja umożliwia instrukcjom odczytu dostęp do poprzedniej wartości w dowolnym kierunku, podczas gdy operacja zapisywania jest nadal w toku. W przypadku błędu przewidywania nieudana operacja spekulacyjna zostanie odrzucona, ale ślady jej wykonania pozostaną w pamięci podręcznej procesora i można je odzyskać za pomocą jednej z metod określania zawartości pamięci podręcznej na podstawie analizy zmian czasu dostępu do pamięci podręcznej i dane niebuforowane.

Technologia dodana do procesorów AMD Zen 3 PSF optymalizuje metodę „Store-To-Load-Forwarding” (STLF), który spekulatywnie wykonuje operacje odczytu na podstawie przewidywania relacji między operacjami odczytu i zapisu. W klasycznym STLF procesor wykonuje operację „ładowania” danych bezpośrednio przekierowanych z poprzedniej instrukcji „zapamiętaj”, nie czekając na faktyczne zapisanie wyniku do pamięci, ale upewniając się, że adresy użyte w operacji „ładuj” y pasują instrukcje „sklepu”.

Optymalizacja PSF sprawia, że ​​weryfikacja adresu jest spekulatywna i wykonuje operację „ładowania” przed zakończeniem obliczania informacji o adresie, jeśli para magazyn / ładowanie została wcześniej wykonana przy manipulowaniu adresem. Jeśli prognoza się nie powiedzie, stan zostanie przywrócony, ale dane pozostaną w pamięci podręcznej.

Atak na same PSF jest to wykonalne w ramach przywilejów rówieśniczych, obejmuje tylko kontekst bieżącego procesu i jest blokowany przez metody izolacji przestrzeni adresowej lub sprzętowe mechanizmy piaskownicy. Jednak problem może mieć wpływ na techniki izolacji piaskownicy oprogramowania w procesach.

Atak stanowi zagrożenie dla systemów takich jak przeglądarki, maszyny wirtualne wykonujące kod i JIT, które uruchamiają kod stron trzecich w ramach tego samego procesu (w wyniku ataku niezaufany kod piaskownicy może uzyskać dostęp do innych danych dotyczących procesu).

Firma AMD udostępniła różne metody całkowitego lub selektywnego wyłączania PSF, ale biorąc pod uwagę znikome ryzyko dla większości aplikacji, nie zaleca się domyślnego wyłączania tej optymalizacji.

W celu wybiórczego zabezpieczenia procesów wykonujących w izolacji zawodny kod proponuje się wyłączenie PSF poprzez ustawienie bitów MSR „SSBD” i „PSFD”, nawet dla pojedynczych wątków. Dla jądra Linuksa wprowadzono łaty z implementacją opcji wiersza poleceń „psfd” i „nopsfd”, które sterują włączaniem i wyłączaniem PSF.

Osoby zainteresowane zapoznaniem się z raportem mogą skorzystać z konsultacji poniższy link.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.