Kā aizsargāt datoru no Intel Foreshadow trūkumiem
Foreshadow, kas pazīstams arī kā L1 termināla kļūme, ir vēl viena problēma ar spekulatīvu izpildi Intel procesoros. Tas ļauj ļaunprātīgai programmatūrai ielauzties drošās zonās, kurās pat Specter un Meltdown trūkumi nevarēja kreka.
Kas ir Foreshadow?
Konkrētāk, Foreshadow uzbrūk Intel Software Guard Extensions (SGX) funkcijai. Tas ir iebūvēts Intel mikroshēmās, lai ļautu programmām izveidot drošus “anklāvus”, kurus nevar piekļūt pat citās datorā esošajās programmās. Pat ja datorā bija ļaunprātīga programmatūra, tā nevarēja piekļūt drošai anklāvu teorijai. Kad tika paziņots Spectre and Meltdown, drošības pētnieki atklāja, ka SGX aizsargāta atmiņa lielākoties bija neaizsargāta pret Spectre un Meltdown uzbrukumiem.
Ir arī divi saistīti uzbrukumi, kurus drošības pētnieki sauc par „Foreshadow - Next Generation” vai Foreshadow-NG. Tie ļauj piekļūt informācijai sistēmas pārvaldības režīmā (SMM), operētājsistēmas kodolā vai virtuālās mašīnas hipervizorā. Teorētiski vienā virtuālajā mašīnā sistēmā darbojošs kods varētu nolasīt citā virtuālajā mašīnā glabāto informāciju, lai gan šīs virtuālās mašīnas ir pilnībā izolētas..
Foreshadow un Foreshadow-NG, piemēram, Specter un Meltdown, izmanto trūkumus spekulatīvā izpildē. Mūsdienu procesori uzminē kodu, kuru, pēc viņu domām, varētu darboties nākamais, un iepriekš to izpildīt, lai ietaupītu laiku. Ja programma mēģina palaist kodu, tas jau ir izdarīts, un procesors zina rezultātus. Ja tā nav, apstrādātājs var izmest rezultātus.
Tomēr šī spekulatīvā izpilde atstāj zināmu informāciju. Piemēram, pamatojoties uz to, cik ilgi spekulatīvs izpildes process veic, lai veiktu noteiktu veidu pieprasījumus, programmas var secināt, kādi dati atrodas atmiņas zonā, pat ja viņi nevar piekļūt šai atmiņas zonai. Tā kā ļaunprātīgas programmas var izmantot šīs metodes, lai lasītu aizsargātu atmiņu, tās var pat piekļūt datiem, kas saglabāti L1 kešatmiņā. Tā ir CPU zema līmeņa atmiņa, kurā tiek saglabātas drošas kriptogrāfiskās atslēgas. Tāpēc šie uzbrukumi ir pazīstami arī kā “L1 Terminal Fault” vai L1TF.
Lai izmantotu Foreshadow priekšrocības, uzbrucējam vienkārši jāspēj darbināt kodu datorā. Kods neprasa īpašas atļaujas - tas varētu būt standarta lietotāja programma bez zema līmeņa sistēmas piekļuves vai pat programmatūra, kas darbojas virtuālās mašīnas iekšpusē.
Kopš Specter un Meltdown paziņojuma mēs esam redzējuši pastāvīgu uzbrukumu plūsmu, kas ļaunprātīgi izmanto spekulatīvas izpildes funkcijas. Piemēram, spekulatīvā veikala apvedceļa (SSB) uzbrukums ietekmēja procesorus no Intel un AMD, kā arī dažus ARM procesorus. Tas tika paziņots 2018. gada maijā.
Vai Foreshadow tiek izmantota savvaļā?
Foreshadow atklāja drošības pētnieki. Šiem pētniekiem ir koncepcijas pierādījums, citiem vārdiem sakot, funkcionāls uzbrukums, bet šobrīd viņi to neatbrīvo. Tas dod ikvienam laiku, lai izveidotu, atbrīvotu un pielietotu ielāpus, lai aizsargātu pret uzbrukumu.
Kā jūs varat aizsargāt datoru
Ņemiet vērā, ka tikai datori ar Intel mikroshēmām ir neaizsargāti pret Foreshadow. AMD mikroshēmas nav neaizsargātas pret šo trūkumu.
Vairumam Windows datoru ir nepieciešami tikai operētājsistēmas atjauninājumi, lai pasargātu sevi no Foreshadow, saskaņā ar Microsoft oficiālo drošības konsultāciju. Lai instalētu jaunākos ielāpus, palaidiet Windows atjauninājumu. Microsoft saka, ka tas nav ievērojis nevienu veiktspējas zudumu, instalējot šos ielāpus.
Dažiem datoriem var būt nepieciešams jauns Intel mikrokods, lai aizsargātu sevi. Intel saka, ka tie ir tie paši mikrokoda atjauninājumi, kas tika izlaisti šā gada sākumā. Ja jums ir pieejams jūsu datoram, varat iegūt jaunu programmaparatūru, instalējot jaunākos UEFI vai BIOS atjauninājumus no sava datora vai mātesplates ražotāja. Jūs varat arī instalēt mikrokoda atjauninājumus tieši no Microsoft.
Kādi sistēmas administratori ir jāzina
Datoriem, kuros darbojas hipervizora programmatūra virtuālajām mašīnām (piemēram, Hyper-V), būs nepieciešami arī šīs hipervizora programmatūras atjauninājumi. Piemēram, papildus Microsoft Hyper-V atjauninājumam, VMWare ir izlaidis atjauninājumu savai virtuālās mašīnas programmatūrai.
Sistēmām, kas izmanto Hyper-V vai uz virtualizācijas balstītu drošību, var būt vajadzīgas lielākas izmaiņas. Tas ietver hiper-vītņu atspējošanu, kas palēninās datoru. Lielākai daļai cilvēku tas nebūs jādara, bet Windows servera administratoriem, kas izmanto Hyper-V uz Intel CPU, būs nopietni jāapsver iespēja atspējot hiper-vītni sistēmas BIOS, lai saglabātu savu virtuālo mašīnu drošību.
Mākoņpakalpojumu sniedzēji, piemēram, Microsoft Azure un Amazon Web Services, arī patching savas sistēmas, lai aizsargātu virtuālās mašīnas uz kopīgām sistēmām no uzbrukuma.
Patches var būt nepieciešamas arī citām operētājsistēmām. Piemēram, Ubuntu ir izlaidusi Linux kodola atjauninājumus, lai aizsargātu pret šiem uzbrukumiem. Apple vēl nav komentējis šo uzbrukumu.
Konkrētāk, CVE numuri, kas identificē šos trūkumus, ir CVE-2018-3615 par uzbrukumu Intel SGX, CVE-2018-3620 par uzbrukumu operētājsistēmai un sistēmas pārvaldības režīmam, un CVE-2018-3646 par uzbrukumu virtuālā mašīnu pārvaldnieks.
Emuāra ziņojumā Intel teica, ka tā strādā pie labākiem risinājumiem, lai uzlabotu veiktspēju, bloķējot L1TF balstītas ekspluatācijas iespējas. Šis risinājums piemēros aizsardzību tikai tad, kad tas būs nepieciešams, uzlabojot veiktspēju. Dažiem partneriem Intel saka, ka tā jau ir nodrošinājusi iepriekš izlaistā CPU mikrokodu ar šo funkciju, un novērtē tā atbrīvošanu.
Visbeidzot, Intel atzīmē, ka “L1TF tiek risinātas arī ar izmaiņām, ko mēs veicam aparatūras līmenī.” Citiem vārdiem sakot, nākotnes Intel CPU ietvers aparatūras uzlabojumus, lai labāk aizsargātu pret Specter, Meltdown, Foreshadow un citiem spekulatīviem uz uzvedību balstītiem uzbrukumiem mazāk veiktspējas samazināšanās.
Attēla kredīts: Robson90 / Shutterstock.com, Foreshadow.