Procesory Arm o architekturze ARMv8-A (Cortex-A) mają lukę, która naraża je na atak. To błąd bardzo podobny do umożliwiającego atak Spectre, odkryty w 2018 roku. Arm udostępnił deweloperom dokumentację ze szczegółami, czekamy na łatki.
Błąd znaleziony w procesorach ARM został zakwalifikowany jako SLS, czyli Straight-Line Speculation (CVE-2020-13844). Pozwala na wykonanie ataku spekulatywnego z wykorzystaniem faktu, że dla zwiększenia wydajności procesor przetwarza dane „na wszelki wypadek”. Następnie ścieżki obliczeń, które nie zostały wykorzystane, są usuwane. Mechanizm ten można porównać do ładowania podstron przez przeglądarkę jeszcze zanim klikniesz któryś z linków. Dzięki temu wydaje ci się, że strony ładują się szybciej.
Zobacz: Samsung też będzie miał 64-bitowe mobilne procesory
Podczas ataku można dostać się do tych niepotrzebnych danych z bocznego kanału. Można je wykraść i na ich podstawie próbować odgadnąć, nad czym aktualnie pracuje komputer. To otwiera drogę do innych szkodliwych działań.
Na tej samej zasadzie działa atak Spectre, który w styczniu 2018 roku wywołał panikę w branży IT do spółki z pamiętnym Meltdown. Tym razem jednak skala zagrożenia jest znacznie mniejsza. Nie są podatne procesory wszystkich producentów, nie są nawet podatne wszystkie procesory firmy Arm. Błąd występuje w dość wąskim gronie czipów produkowanych w architekturze ARMv8-A. Ryzyko ataku jest dość małe, ale nie można go wykluczyć.
Zobacz: Snapdragon 875 w litografii 5 nm z nowym modemem 5G jeszcze w tym roku
Zobacz: 64-bitowy procesor Denver od Nvidii będzie najszybszy na rynku mobilnym
Firma Arm pracuje nad poprawieniem luki od 2019 roku. Jej programiści udostępnili łatki dla wielu projektów Open Source, w tym systemów FreeBSD, OpenBSD, Trusted Firmware-A czy OP-TEE. Przygotowane zostały także poprawki dla kompilatorów GCC i LLVM, dzięki czemu niemożliwe będzie skompilowanie programu wykorzystującego tę lukę. Co ważne, poprawki nie powinny negatywnie wpłynąć na wydajność systemów, jak miało to miejsce w przypadku luki Spectre.
Jakie modele procesorów są podatne? Na pewno procesory produkowane przez Arm. Narażone mogą być też układy produkowane na licencji. Podatną mikroarchitekturę implementują między innymi Apple Twister (A9, A9X), Qualcomm Kyro i Falkor, Samsung M1, Nvidia Denver (m.in. Tegra K1), Huawei Kunpeng czy serwerowy Cavium ThunderX.
Źródło zdjęć: Arm
Źródło tekstu: ZDNet