Predodžba, također poznata kao L1 Terminal Fault, još je jedan problem s spekulativnom izvedbom u Intelovim procesorima. Omogućuje zlonamjernom softveru da se upadne u sigurnim područjima koja ni propusti Spectre i Meltdown ne mogu ispucati.
Konkretno, Foreshadow napada Intelovu softversku ekstenziju (SGX). To je ugrađeno u Intelove čipove kako bi programi stvorili sigurne "enklave" kojima se ne može pristupiti, čak i kod drugih programa na računalu. Čak i ako su na računalu zlonamjerni softver, nije mogao pristupiti teoriji sigurne enklave. Kada su objavljeni Specter and Meltdown, sigurnosni istraživači otkrili su da je memorija zaštićena SGX uglavnom imuna na napade Specter i Meltdown.
Tu su i dva povezana napada, koju sigurnosni istraživači zovu "Foreshadow - Next Generation" ili Foreshadow-NG. One omogućuju pristup informacijama u načinu upravljanja sustavom (SMM), kernela operativnog sustava ili hypervisora virtualnog stroja. Teoretski, kod koji se izvodi u jednom virtualnom stroju na sustavu mogao bi čitati podatke pohranjene u drugom virtualnom stroju na sustavu, iako bi ti virtualni strojevi trebali biti potpuno izolirani.
Foreshadow i Foreshadow-NG, kao što su Spectre and Meltdown, koriste nedostatke u spekulativnom izvršenju. Suvremeni procesori nagađaju kod koji misle da bi se mogli pokrenuti i preemptively izvršiti kako bi uštedio vrijeme. Ako program pokuša pokrenuti kôd, izvrsno - već je to učinjeno, a procesor zna rezultate. Ako ne, procesor može odbaciti rezultate.
Međutim, ovo spekulativno izvršenje ostavlja neke informacije. Na primjer, na temelju koliko dugo provodi spekulativni proces izvršavanja za obavljanje određenih vrsta zahtjeva, programi mogu zaključiti koji su podaci na području memorije - čak i ako ne mogu pristupiti tom području memorije. Budući da zlonamjerni programi mogu koristiti ove tehnike za čitanje zaštićene memorije, čak bi mogli pristupiti podacima pohranjenima u L1 predmemoriji. Ovo je memorija niske razine na CPU-u gdje su pohranjeni sigurni kriptografski ključevi. Zato se ti napadi nazivaju i "L1 Terminal Fault" ili L1TF.
Da biste iskoristili Prednosti, napadač mora samo moći pokrenuti kôd na računalu. Kôd ne zahtijeva posebne dozvole - to bi mogao biti standardni korisnički program bez pristupa sustavu niske razine ili čak softver koji se izvodi unutar virtualnog stroja.
Od objavljivanja Spectera i Meltdowna, vidjeli smo neprekidan tok napada koji zlorabljuje funkcionalnost spekulativne izvedbe. Na primjer, napad spekulativnog skladišta (SSB) zahvatio je procesore Intel i AMD, kao i neke ARM procesore. Najavljen je u svibnju 2018. godine.
Foreshadow je otkrio istraživači sigurnosti. Ti istraživači imaju dokaz koncepta - drugim riječima, funkcionalni napad - ali to u ovom trenutku ne objavljuju. To daje svima vremena da stvaraju, oslobađaju i primjenjuju zakrpe za zaštitu od napada.
Imajte na umu da su samo računala s Intelovim čipovima ranjiva na Foreshadow. AMD čipovi nisu ranjivi na ovaj nedostatak.
Većina Windows računala trebaju samo ažuriranja operacijskog sustava kako bi se zaštitili od Foreshadow, prema Microsoftovom službenom sigurnosnom savjetniku. Samo pokrenite Windows Update da biste instalirali najnovije zakrpe. Microsoft kaže da nije primijetio gubitak performansi od instalacije ovih zakrpa.
Neka računala također trebaju novi Intel mikrokod kako bi se zaštitili. Intel kaže da su to ista ažuriranja mikrokodova koji su objavljeni početkom ove godine. Možete dobiti novi firmver, ako je dostupan za vaše računalo, instaliranjem najnovijih ažuriranja UEFI ili BIOS s računala ili proizvođača matične ploče. Također možete instalirati ažuriranja mikrokodova izravno od tvrtke Microsoft.
Računala koja izvode hypervisor softver za virtualne strojeve (na primjer, Hyper-V) također će trebati ažuriranja tog hypervisor softvera. Na primjer, uz Microsoftovo ažuriranje za Hyper-V, VMWare je objavio ažuriranje softvera za virtualni stroj.
Sustavi koji koriste Hyper-V ili virtualizacijsku sigurnost mogu zahtijevati drastične promjene. To uključuje onemogućivanje hiper-navoja, što će usporiti računalo. Većina ljudi neće to morati učiniti, ali administratori sustava Windows Server koji izvode Hyper-V na Intelovim procesorima morat će ozbiljno razmotriti onemogućavanje hiper-navoja u BIOS sustavu kako bi virtualni strojevi bili sigurni.
Cloud provideri poput Microsoft Azure i Amazon Web Services također krpe svoje sustave kako bi zaštitili virtualne strojeve od zajedničkih sustava od napada.
Moguće je i zakrpe za druge operacijske sustave. Na primjer, Ubuntu je objavio ažuriranja Linux kernela kako bi zaštitila te napade. Apple još nije komentirao ovaj napad.
Konkretno, CVE brojevi koji identificiraju ove nedostatke su CVE-2018-3615 za napad na Intel SGX, CVE-2018-3620 za napad na operativni sustav i način upravljanja sustavom, a CVE-2018-3646 za napad na virtualni upravitelj stroja.
U postu na blogu, Intel je rekao da radi na boljim rješenjima za poboljšanje performansi dok blokira L1TF-temeljene eksploatacije. Ovo rješenje primjenjuje zaštitu samo kada je to potrebno, poboljšavajući performanse. Intel kaže da je već predviđen mikrokontroler CPU-a prije puštanja s ovim značajkom nekim partnerima i ocjenjuje ga objavljivanjem.
Napokon, Intel primjećuje da "L1TF također rješava promjene koje izvršavamo na razini hardvera." Drugim riječima, budući Intelovi procesori će sadržavati hardverske poboljšanja kako bi bolje zaštitili od Spectra, Meltdown, Foreshadow i drugih spekulativnih napada na temelju izvršenja manje gubitka performansi.
Slikovni kredit: Robson90 / Shutterstock.com, Foreshadow.