Badacze bezpieczeństwa odkryli niezałataną lukę w Apple Silicon, która może pozwolić atakującym na złamanie szyfrowania i uzyskanie dostępu do poufnych kluczy kryptograficznych. Luka znajduje się w układach SoC M1, M2 i M3.
Luka tkwi w zależnym od pamięci prefetcherze (DMP) MChips, funkcji optymalizacji sprzętowej służącej do przewidywania i wstępnego pobierania danych, których uruchomiony kod prawdopodobnie będzie wymagał w najbliższej przyszłości. DMP zostały zaprojektowane w celu zmniejszenia opóźnień i poprawy wydajności, ale naukowcy odkryli, że można wykorzystać lukę w implementacji.
DMP traktuje dane przechowywane w chipie jako adresy pamięci w pewnych sytuacjach i przechowuje zawartość nawet wtedy, gdy nie jest ona faktycznie potrzebna. Poprzez wielokrotne wymuszanie tej luki, złośliwa aplikacja może potencjalnie odszyfrować klucze kryptograficzne w czasie.
Badacze zaprogramowali aplikację o nazwie GoFetch, aby zademonstrować lukę. Chociaż atak nie może bezpośrednio wykraść kluczy szyfrowania, może manipulować danymi pośrednimi w algorytmie szyfrowania, aby przypominały wskaźnik. Następnie DMP błędnie traktuje te dane jako adres i buforuje dane z tego „adresu”, wyciekając informacje, które mogą ostatecznie ujawnić tajny klucz.
Chociaż istnieją możliwe obejścia, takie jak oślepianie szyfrogramów lub uruchamianie procesów kryptograficznych na wydajnych jądrach bez DMP, rozwiązania te wiązałyby się ze znacznymi stratami wydajności.
Jednak aby wykorzystać lukę, atakujący musiałby nakłonić użytkownika do zainstalowania złośliwej aplikacji, co jest dość trudne, biorąc pod uwagę, że niepodpisane aplikacje Mac są domyślnie blokowane. Atak zajmuje również dużo czasu – od 54 minut do 10 godzin w testach badaczy.
Apple zostało poinformowane o odkryciach w grudniu, ale nie skomentowało publicznie sprawy. Do dzisiaj jednak nie doczekaliśmy się komentarza ze strony firmy.
Źródło: Maclife