Datora procesoriem ir liela dizaina kļūda, un visi to satver, lai to novērstu. Tikai viens no diviem drošības caurumiem var tikt ielīmēts, un ielāpi padarīs datorus (un Mac datorus) lēnākus Intel čipus.
Atjaunināt: Šī raksta iepriekšējā versija noteica, ka šis trūkums bija raksturīgs Intel mikroshēmām, taču tas nav viss stāsts. Patiesībā divi Šeit ir galvenās ievainojamības, ko sauc par "Meltdown" un "Spectre". Meltdown ir lielā mērā raksturīgs Intel procesoriem, un tas ietekmē visus CPU modeļus no pēdējo desmitgažu laikā. Mēs esam pievienojuši tālāk sniegto informāciju par šīm divām kļūdām un to starpību.
Spectre ir "būtisks dizaina trūkums", kas pastāv visos procesoros tirgū, tostarp AMD un ARM, kā arī Intel. Pašlaik nav programmatūras labošanas, un tas, visticamāk, prasīs pilnīgu aparatūras pārprojektēšanu centrālajiem procesoriem, lai gan, pateicoties drošības pētniekiem, par laimi tas ir diezgan grūti izmantot. Tas ir iespējams pasargāt no konkrētiem Spectre uzbrukumiem, un izstrādātāji strādā pie tā, taču vislabākais risinājums būs CPU aparatūras pārveidošana visām turpmākajām mikroshēmām.
Meltdown pamatā padara Specters sliktāk, padarot pamatā esošo trūkumu daudz vieglāk izmantot. Tas būtībā ir papildu trūkums, kas ietekmē visus Intel procesorus, kas izveidoti pēdējo desmitgažu laikā. Tas ietekmē arī dažus augstas klases ARM Cortex-A procesorus, taču tas neietekmē AMD mikroshēmas. Mūsdienās operētājsistēmās tiek ielādēts sabrukums.
Bet kā šīs nepilnības darbojas?
Jūsu datorā darbojas programmas ar dažādiem drošības atļaujas līmeņiem. Piemēram, operētājsistēmas kodolam - Windows kodolam vai Linux kodolam - ir visaugstākais atļauju līmenis, jo tas rāda demonstrējumu. Desktop programmām ir mazāk atļauju, un kodols ierobežo to, ko viņi var darīt. Kodols izmanto procesora aparatūras funkcijas, lai palīdzētu izpildīt dažus no šiem ierobežojumiem, jo tas ir ātrāks, ja to dara ar aparatūru, nevis programmatūru.
Problēma ir ar "spekulatīvu izpildi". Veiktspējas dēļ mūsdienu CPU automātiski izpilda instrukcijas, kuras, viņuprāt, varētu būt jāuzsāk, un, ja tās nav, tās var vienkārši attīt atpakaļ un atgriezt sistēmu iepriekšējā stāvoklī. Tomēr Intel un dažu ARM procesoru trūkums ļauj procesiem palaist operācijas, kuras parasti nevar darboties, jo darbība tiek veikta, pirms procesors nevēlas pārbaudīt, vai tai ir nepieciešama atļauja to palaist. Tā ir Meltdown bug.
Galvenā problēma gan Meltdown, gan Spectre atrodas CPU kešatmiņā. Pieteikums var mēģināt nolasīt atmiņu, un, ja tā kešatmiņā kaut ko nolasa, operācija tiks pabeigta ātrāk. Ja tā mēģina izlasīt kaut ko, kas nav kešatmiņā, tas tiks pabeigts lēnāk. Lietojumprogramma var redzēt, vai kaut kas pabeigts ātri vai lēni, un, kamēr viss pārējais spekulatīvās izpildes laikā tiek iztīrīts un izdzēsts, operācijas veikšanai nepieciešamais laiks nevar būt paslēpts. Pēc tam tā var izmantot šo informāciju, lai vienlaikus izveidotu mapi jebko, kas atrodas datora atmiņā. Caching ātrums lietas, uz augšu, bet šie uzbrukumi izmanto šo optimizāciju un pārvērš to drošības trūkums.
Tātad, sliktākajā gadījumā tīmekļa pārlūkprogrammā darbojas JavaScript kods varētu efektīvi izlasīt atmiņu, kurai tai nav jābūt piekļuvei, piemēram, privāta informācija, kas tiek turēta citās lietojumprogrammās. Īpaši riskam ir mākoņa pakalpojumu sniedzēji, piemēram, Microsoft Azure vai Amazon Web Services, kas izvieto vairākas dažādas uzņēmuma programmatūras dažādās virtuālās mašīnas vienā datorā. Teorētiski vienas personas programmatūra teorētiski spiegotu lietas citā uzņēmuma virtuālajā mašīnā. Tas ir sadalījums starp pieteikumiem. Mestīšanas plāksteri nozīmē, ka šis uzbrukums nebūs tik viegli, kā pievilkt. Diemžēl, veicot šīs papildu pārbaudes uz vietas, dažas darbības lēnāk ietekmēs aparatūru.
Izstrādātāji strādā pie programmatūras ielīmēm, kas padara Spectra uzbrukumus grūtāk izpildīt. Piemēram, Google Chrome jaunā vietņu izolēšanas funkcija palīdz aizsargāt pret to, un Mozilla jau ir veikusi dažas ātras izmaiņas Firefox. Microsoft arī veica dažas izmaiņas, lai palīdzētu aizsargāt Edge un Internet Explorer Windows atjauninājumā, kas tagad ir pieejams.
Ja jūs interesē padziļinātā zema līmeņa informācija par Meltdown un Spectre, izlasiet tehnisko skaidrojumu no Google Project Zero komandas, kas pagājušajā gadā atrada kļūdas. Plašāka informācija ir pieejama arī vietnē MeltdownAttack.com.
Atjaunināt: 9. janvārī Microsoft izlaida zināmu informāciju par plākstera veiktspēju. Saskaņā ar Microsoft sniegto informāciju Windows 10 no 2016. gada laikmeta PC ar Skylake, Kabylake vai jaunākiem Intel procesoriem rāda "vienas ciparu palēnināšanos", ko lielākā daļa lietotāju nevajadzētu pamanīt. Windows 10 no 2015. gada laikmeta PC ar Haswell vai vecāku procesoru var redzēt lielāku palēnināšanos, un Microsoft "sagaida, ka daži lietotāji pamanīs sistēmas veiktspējas samazināšanos".
Windows 7 un 8 lietotāji nav tik laimīgi. Microsoft saka, ka, "izmantojot Windows 7 vai 8, 2015. gada laikmeta datorā ar Haswell vai vecāku CPU, viņi" sagaida, ka lielākā daļa lietotāju pamanīs sistēmas veiktspējas samazināšanos. " Ne tikai Windows 7 un 8 izmanto vecākus CPU, kas nevar palaist patch tik efektīvi, bet "Windows 7 un Windows 8 ir vairāk lietotāju kernel pāreju, pateicoties mantotajiem dizaina lēmumiem, piemēram, visu fontu atveidošanu, kas notiek kodolā" , un tas arī palēnina lietas.
Nākotnē Microsoft plāno veikt savus kritērijus un atklāt plašāku informāciju, taču mēs nezinām precīzi, cik daudz Meltdown plāksteris ietekmēs ikdienas datoru izmantošanu.Dave Hansens, Linux kodola izstrādātājs, kas strādā Intel, sākotnēji rakstīja, ka izmaiņas Linux kodolā ietekmēs visu. Pēc viņa domām, lielākajā daļā darba slodžu ir vērojama viencilvēka samazināšanās, savukārt tautsaimniecības lejupslīde ir aptuveni 5%. Tomēr vissliktākais scenārijs ir tīkla testu palēninājums par 30%, tādēļ tas atšķiras no uzdevuma līdz uzdevumam. Tomēr tie ir Linux numuri, tāpēc tie ne vienmēr attiecas uz Windows. Fiksē palēnina sistēmas zvanus, tādēļ uzdevumi ar lielu skaitu sistēmas zvanu, piemēram, programmatūras apkopošana un virtuālo mašīnu darbināšana visticamāk palēnināsies. Bet katrs programmatūras gabals izmanto dažus sistēmas zvanus.
Atjaunināt: No 5.janvāra TechSpot un Guru3D ir izpildījuši dažus Windows kritērijus. Abās vietnēs secināts, ka galddatoru lietotājiem nav daudz jāuztraucas. Dažās datoru spēlēs ir redzams neliels 2% palēninājums ar plāksteri, kas nepārsniedz kļūdu robežu, bet citi, šķiet, darbojas vienādi. 3D attēlojums, produktivitātes programmatūra, failu saspiešanas rīki un šifrēšanas utilītas neietekmē. Tomēr faila lasīšanas un rakstīšanas etalonā ir redzamas ievērojamas atšķirības. Ātri lasot lielu daudzumu mazu failu, Techspot kritērijos kritās aptuveni 23%, un Guru3D atrada kaut ko līdzīgu. No otras puses, Tom's Hardware atrada tikai 3,21% vidējo veiktspējas kritumu, izmantojot patērētāju lietojumprogrammu krātuves testu, un apgalvoja, ka "sintētiskie kritēriji", kas norāda uz ievērojamām ātruma kritumiem, neatspoguļo reāllaika izmantošanu.
Datoriem ar Intel Haswell procesoru vai jaunāku ir PCID (Process-Context Identifiers) funkcija, kas palīdzēs plāksterim darboties labi. Datoriem ar vecākiem Intel procesoriem var rasties lielāks ātruma samazinājums. Iepriekš minētie kritēriji tika veikti ar mūsdienu Intel procesoriem ar PCID, tādēļ nav skaidrs, cik veci Intel procesori darbosies.
Intel apgalvo, ka vidējā datora lietotājam palēninājums "nedrīkst būt nozīmīgs", un līdz šim tā izskatās taisnība, bet dažās operācijās ir vērojama palēnināšanās. Mākonis Google, Amazon un Microsoft viss pamatā teica to pašu: lielākajai daļai darba slodžu viņi pēc plakņu izvēršanas neredzēja nozīmīgu veiktspēju. Microsoft teica, ka "neliels [Microsoft Azure] klientu skaits var radīt zināmu ietekmi uz tīkla darbību". Šie apgalvojumi ļauj atstāt zināmu slodzi, lai redzētu būtisku palēnināšanos. Epic Games vainoja Meltdown plāksteri, izraisot servera problēmas ar savu spēli Fortnite un ievietojis grafiku, parādot milzīgu CPU lietojuma pieaugumu tā mākoņa serveros pēc plākstera instalēšanas.
Bet viena lieta ir skaidrs: ar šo plāksteri noteikti nedarbojas ātrāk. Ja jums ir Intel procesors, to var iegūt tikai lēnāk - pat ja tas ir mazs.
Daži atjauninājumi, lai novērstu problēmu, kas saistīta ar Meltdown, jau ir pieejami. Microsoft ir izsniedzis ārkārtas atjauninājumu atbalstītajām Windows versijām, izmantojot Windows atjauninājumu 2018. gada 3. janvārī, bet tas vēl nav izdarīts visiem datoriem. Windows atjauninājums, kas atrisina Meltdown un pievieno zināmu aizsardzību pret Spectre, ir nosaukts KB4056892.
Apple jau ir izgājis problēmu ar macOS 10.13.2, kas tika izlaists 2017. gada 6. decembrī. Chromebook datori ar Chrome OS 63, kas tika izlaisti decembrī, jau ir aizsargāti. Patches ir pieejamas arī Linux kodolam.
Turklāt pārbaudiet, vai jūsu datoram ir pieejami BIOS / UEFI atjauninājumi. Kaut arī Windows atjauninājumā ir novērsta problēma "Meltdown", ir nepieciešams atjaunināt CPU mikrokodus no Intel, izmantojot UEFI vai BIOS atjauninājumus, lai pilnībā iespējotu aizsardzību pret kādu no Spectre uzbrukumiem. Jums vajadzētu arī atjaunināt savu tīmekļa pārlūkprogrammu, kā parasti, jo pārlūkprogrammas arī papildina aizsardzības pret Spectre.
Atjaunināt: 22. janvārī Intel paziņoja, ka lietotājiem jāpārtrauc izlaist sākotnējos UEFI programmaparatūras atjauninājumus, jo "lielāks nekā paredzēts reboots un cita neparedzama sistēmas uzvedība". Intel teica, ka jums vajadzētu nogaidīt UEFI programmaparatūras pēdējo, kas ir pienācīgi pārbaudīts un neradīs sistēmas problēmas. No 20. februāra Intel ir izlaidis stabila mikrokodu atjauninājumus Skylake, Kaby ezeram un Coffee Lake, kas ir 6., 7. un 8. paaudzes Intel Core platformas. Datoru ražotājiem drīzumā vajadzētu sākt jaunu UEFI programmaparatūras atjaunināšanu.
Kamēr atskaņošanas rezultāts izklausās slikti, mēs noteikti iesakām uzstādīt šos ielāpus. Operētājsistēmu izstrādātāji šādu masveida izmaiņu neveiks, ja vien tas nebūtu ļoti slikta kļūda ar nopietnām sekām.
Attiecīgais programmatūras ielāps noteiks Meltdown kļūdu, un daži programmatūras ielāpi var palīdzēt mazināt Spectera plaisu. Bet Specters, visticamāk, turpinās ietekmēt visus mūsdienu CPU, vismaz kādā formā, līdz jaunā aparatūra tiks atbrīvota, lai to novērstu. Nav skaidrs, kā ražotāji to izturēsies, taču pa to laiku viss, ko jūs varat izdarīt, ir turpināt izmantot datoru un sajust mierinājumu tam, ka Spectre ir grūtāk izmantot, un nedaudz bažījas par mākoņdatošanu, nekā gala lietotāji ar galddatori.
Attēlu kredīts: Intel, VLADGRIN / Shutterstock.com.