CPU ievainojamības pēdējā laikā ir bijušas ļoti populāras, un divas nesenas ir Zenbleed un Downfall. Bet cik uztraukties jums vajadzētu būt?
CPU ievainojamības pēdējos gados ir bijušas un nav bijušas ziņas, un tās bieži vien nāk ar diezgan biedējošu ziņojumu, kad runa ir par to izpaušanu. Gadījumā, ja Zenbleed un Kritums, jebkura lietojumprogramma jūsu datorā varēja piekļūt jebkuras citas programmas atmiņai, kas darbojas pareizajos apstākļos. Izklausās intensīvi, vai ne?
Tomēr tas nav tik slikti, kā šķiet. Acīmredzot tas ir pietiekami nozīmīgs, lai garantētu informācijas izpaušanu un programmatūras atjauninājumu, lai novērstu kļūdas, pat uz veiktspējas rēķina, bet kas tieši notiek, lai izraisītu šīs drošības problēmas? Vai jums vajadzētu uztraukties?
Vai jums vajadzētu uztraukties par CPU ievainojamībām, piemēram, Zenbleed, Downfall un Inception?
Godīgi sakot, neviens no šiem varoņdarbiem neskar lielāko daļu cilvēku. Lai gan tie var nopludināt datus no vienas programmas uz otru, jebkurai ļaunprātīgai programmatūrai patērētāja datorā jau ir augsts piekļuves līmenis, ko tā var ļaunprātīgi izmantot. Tā vietā, kur šie uzbrukumi ir īpaši satraucoši, ir mākoņdatošanas kontekstā.
Lai saprastu problēmu, jums ir jāsaprot, ka daudzi dažādi mākoņa serveri ir vienkārši datori ar lielu zirgspēku, lielu tīkla joslas platumu un kādu citu specializētu aparatūru, ja nepieciešams. Daudzi uzņēmumi iznomā tā saukto VPS vai virtuālo privāto serveri, kas ir virtualizētas mašīnas ar ierobežotu jaudu, uz kurām var darboties desmitiem citu virtuālo mašīnu.
Problēma var būt tāda, ka viena persona vienā virtuālajā mašīnā varētu izpildīt vienu no šīm darbībām ievainojamības, gūstot ieskatu par to, kādi dati plūst caur procesoru, tostarp dati no citiem virtuālās mašīnas. Tam nevajadzētu būt iespējamam, un tas ir būtisks drošības pārkāpums. Tāpēc, kad Zenbleed tika atklāts, jau bija ielāpi AMD Epyc procesoriem, kas ir paredzēti servera lietošanai.
Pašlaik vissmagākās CPU ievainojamības
Nozares standarts ievainojamību "ranžēšanai" un to nopietnībai ir, izmantojot kopējo ievainojamību vērtēšanas sistēmu (CVSS). Tas nodrošina kvantitatīvu smaguma pakāpi, jo dažādi ievainojamības aspekti ietekmēs rezultātu. Tā mēra, ņemot vērā:
- Uzbrukuma vektors: tīkls/blakus/lokāls/fizisks
- Uzbrukuma sarežģītība: Zemu augstu
- Nepieciešamas privilēģijas: Nav/Zems/Augsts
- Lietotāja mijiedarbība: Nav/obligāts
- Darbības joma: Nemainīts/mainīts
- Konfidencialitāte: Nav/Zems/Augsts
- Integritāte: Nav/Zems/Augsts
- Pieejamība: Nav/Zems/Augsts
Tas viss klasificē kļūdas smagumu. Piemēram, ievainojamība, ko var izpildīt tīklā ar zemu sarežģītību, nav nepieciešamas privilēģijas, nav lietotāja mijiedarbības, ar mainītu darbības jomu, augsta datu konfidencialitātes noplūde, liels datu integritātes pārkāpums un liela ietekme uz pieejamību CVSS 3.1 novērtēs perfektu 10 — augstāko punktu skaitu. iespējams.
Izmantojot šo metriku, mēs varam novērtēt Zenbleed un Downfall radītos zaudējumus. Spoileris: tie ir vienādi, lai gan tie ietekmē dažādus CPU. Tāpēc, kamēr viņi iegūst noteiktu summu ievainojamību kontekstā tie var ietekmēt dažādu produktu daudzumu, un tas neietekmēs tos rezultāts. CVSS rezultāti būtībā ir paredzēti tikai šķirošanai, taču tie neatspoguļo visu.
Zenbleed: 6,5 (vidēja)
- Uzbrukuma vektors: Vietējais
- Uzbrukuma sarežģītība: Zems
- Nepieciešamas privilēģijas: Zems
- Lietotāja mijiedarbība: Nav
- Darbības joma: Mainīts
- Konfidencialitāte: Augsts
- Integritāte: Nav
- Pieejamība: Nav
Paskaidrojums: Uzbrukuma vektoram ir nepieciešama lokāla piekļuve iekārtai (tāpat kā tas darbojas iekārtā), vienlaikus neietekmējot iekārtā esošo datu integritāti vai tās pieejamību. Tomēr tas maina darbības jomu (tas nozīmē, ka tas ietekmē resursus, kas pārsniedz tā privilēģijas) un uzbrukuma sarežģītību, un izpildei nepieciešamās privilēģijas ir zemas. Tas arī pilnībā pārkāpj iekārtā esošās informācijas konfidencialitāti.
Kritums: 6,5 (vidējs)
- Uzbrukuma vektors: Vietējais
- Uzbrukuma sarežģītība: Zems
- Nepieciešamas privilēģijas: Zems
- Lietotāja mijiedarbība: Nav
- Darbības joma: Mainīts
- Konfidencialitāte: Augsts
- Integritāte: Nav
- Pieejamība: Nav
Paskaidrojums: Uzbrukuma vektoram ir nepieciešama lokāla piekļuve iekārtai (tāpat kā tas darbojas iekārtā), vienlaikus neietekmējot iekārtā esošo datu integritāti vai tās pieejamību. Tomēr tas maina darbības jomu (tas nozīmē, ka tas ietekmē resursus, kas pārsniedz tā privilēģijas) un uzbrukuma sarežģītību, un izpildei nepieciešamās privilēģijas ir zemas. Tas arī pilnībā pārkāpj iekārtā esošās informācijas konfidencialitāti.
Sākums: 5,6 (vidējs)
- Uzbrukuma vektors: Vietējais
- Uzbrukuma sarežģītība: Augsts
- Nepieciešamas privilēģijas: Zems
- Lietotāja mijiedarbība: Nav
- Darbības joma: Mainīts
- Konfidencialitāte: Augsts
- Integritāte: Nav
- Pieejamība: Nav
Paskaidrojums: Uzbrukuma vektoram ir nepieciešama lokāla piekļuve iekārtai (tāpat kā tas darbojas iekārtā), vienlaikus neietekmējot iekārtā esošo datu integritāti vai tās pieejamību. Tomēr tas maina darbības jomu (tas nozīmē, ka tas ietekmē resursus, kas pārsniedz tā privilēģijas), uzbrukuma sarežģītība ir augsta, un izpildei nepieciešamās privilēģijas ir zemas. Tas arī pilnībā pārkāpj iekārtā esošās informācijas konfidencialitāti.
Spektrs: 5,6 (vidējs) (lāpīts)
Spektrs, neskatoties uz to, ka tā ir plašāk izplatīta parādība, faktiski iegūst punktus mazāk nekā Zenbleed un Downfall. Tas ir pateicoties tam, ka uzbrukuma sarežģītība tika nodēvēta par "augstu", kas samazināja rezultātu.
- Uzbrukuma vektors: Vietējais
- Uzbrukuma sarežģītība: Augsts
- Nepieciešamas privilēģijas: Zems
- Lietotāja mijiedarbība: Nav
- Darbības joma: Mainīts
- Konfidencialitāte: Augsts
- Integritāte: Nav
- Pieejamība: Nav
Paskaidrojums: Uzbrukuma vektoram ir nepieciešama lokāla piekļuve iekārtai (tāpat kā tas darbojas iekārtā), vienlaikus neietekmējot iekārtā esošo datu integritāti vai tās pieejamību. Tomēr tas maina darbības jomu (tas nozīmē, ka tas ietekmē resursus, kas pārsniedz tā privilēģijas), uzbrukuma sarežģītība ir augsta, un izpildei nepieciešamās privilēģijas ir zemas. Tas arī pilnībā pārkāpj iekārtā esošās informācijas konfidencialitāti.
Sabrukums: 5,6 (vidējs) (lāpīts)
Tāpat kā Spectre, Meltdown rezultāti ir zemāki nekā Zenbleed un Downfall, jo ir nepieciešama lielāka uzbrukuma sarežģītība.
- Uzbrukuma vektors: Vietējais
- Uzbrukuma sarežģītība: Augsts
- Nepieciešamas privilēģijas: Zems
- Lietotāja mijiedarbība: Nav
- Darbības joma: Mainīts
- Konfidencialitāte: Augsts
- Integritāte: Nav
- Pieejamība: Nav
Paskaidrojums: Uzbrukuma vektoram ir nepieciešama lokāla piekļuve iekārtai (tāpat kā tas darbojas iekārtā), vienlaikus neietekmējot iekārtā esošo datu integritāti vai tās pieejamību. Tomēr tas maina darbības jomu (tas nozīmē, ka tas ietekmē resursus, kas pārsniedz tā privilēģijas), uzbrukuma sarežģītība ir augsta, un izpildei nepieciešamās privilēģijas ir zemas. Tas arī pilnībā pārkāpj iekārtā esošās informācijas konfidencialitāti.
Lielākais iemesls: filiāles prognozēšana
Avots: AMD
Nozares prognozēšana un spekulatīvā izpilde kopumā attiecas uz gadījumiem, kad jūsu dators veic darbības, kas pašlaik nav vajadzīgas, bet tiks veiktas nākamajos ciklos. Tas bieži tiek darīts brīžos, kad jūsu sistēmai ir brīvi resursi, jo tas paātrina kopējo apstrādi, kad instrukcijas vai dati citādi vēl nebūtu gatavi CPU. Ja paveiktais darbs nav vajadzīgs, tas parasti tiek izmests, un procesors var pāriet atpakaļ uz vajadzīgo vietu, lai izpildītu nākamo pareizo instrukciju. Kad tas tiek darīts, to sauc par filiāles nepareizu prognozēšanu.
Lai iegūtu padziļinātu izpratni par zaru prognozētājiem, iedomājieties scenāriju, kurā programma izpildes laikā konsekventi pievieno vienus un tos pašus divus skaitļus. Kādā posmā procesors var atpazīt šo modeli un sagatavot nākamās darbības, ja metodi, kurā šie divi skaitļi tiek pievienoti, tiek izsaukta vēlreiz. Ja šis rezultāts kādā brīdī mainās, pat ja procesors plānoja, ka tie paši divi skaitļi ir vienādi, minējums tiks izmests un aizstāts ar faktisko izpildes plūsmu. Tomēr uz laiku, ka šie skaitļi ir tas pats, tad procesors var ātri izlaist šīs instrukcijas.
Tomēr ir daudz problēmu, kad runa ir par spekulatīvu izpildi, un rezultātā rodas ievainojamības, piemēram, Spectre, Zenbleed, Downfall un citas. Tā ir jaudīga funkcija, kurai esam parādā lielu mūsdienu CPU veiktspēju, taču tas ir galvenais mērķis, kad pētnieki meklē CPU ievainojamības.
Mazināšana: veiktspējas inhibitors
Šo ievainojamību mazināšana ir ārkārtīgi svarīga, taču problēma ir tā, ka šie mazināšanas pasākumi bieži vien apgrūtina veiktspēju. AMD jaunākā Zenbleed gadījumā, lai mazinātu veiktspēju, varētu būt ievērojamas pieskaitāmās izmaksas.
Iemesls tam ir tas, ka vienīgais reālais veids, kā to apiet, ir atspējot vai mainīt zaru prognozētāja darbību ietekmētajā procesorā. Tādu pašu veiktspējas rezultātu var atrast arī Intel sabrukuma mazināšanā, ar agrīniem ziņojumiem, kas liecina par veiktspējas ietekmi līdz pat 39%. Episkās spēles reiz slaveni dalīta CPU izmantošanas grafiki, kad tika atklāta Meltdown ievainojamība, un tas, cik lielu ietekmi šie mazināšanas pasākumi atstāja uz uzņēmuma CPU izmantošanu. Kā jau varēja gaidīt, CPU lietojums ievērojami palielinājās. Notikumi kļūst biedējoši, pateicoties AMD darbības sākumam, tika konstatēts, ka veiktspēja ir samazinājusies līdz pat 54%.
Tā kā šādas ievainojamības ietekmē procesora pamatfunkcijas, ir grūti tās patiešām novērst, izņemot galveno funkciju atspējošanu vai nopietnu sakropļošanu. Spekulatīva izpilde ir neticami svarīga, un šos mazināšanas pasākumus jutīs daudzi cilvēki. Spēļu veiktspēja ir mazāk paredzama, tādēļ, ja jūsu datora galvenais lietojums ir spēles, iespējams, jūs to darāt labi, jo jūsu dators nevar prognozēt tik daudz, taču šīs problēmas kļūst daudz lielākas sistēmas.
Vai tiek ietekmēti nākamie procesori?
Par laimi, gan Intel Downfall, gan Zenbleed gadījumā šīs darbības ietekmē vecākus procesorus. Jaunāki procesori no abiem uzņēmumiem ir droši, un šobrīd nav par ko uztraukties. Parasti šīs problēmas tiek novērstas ar ievērojamu pārprojektēšanu. Piemēram, Spectre ietekmēja Intel astotās un devītās paaudzes CPU, bet devītā paaudze ietvēra ieviesto programmatūras labojumu aparatūras versiju, komplektā ar izpildījuma hitu. Intel 10. paaudze joprojām bija droša, taču arī šie mazināšanas pasākumi vairs neietekmēja veiktspēju.
Rezultātā, ņemot vērā to, ka gan Downfall, gan Zenbleed jau tika laboti to attiecīgo procesoru jaunākajās versijās, lietotājiem nav daudz jāuztraucas. Protams, vienmēr var tikt atklāts vairāk ievainojamību, taču šajā brīdī jūs esat drošībā.