Kako će otapanje i nedostaci na spektaklu utjecati na moje računalo?
Računalni procesori imaju ogroman nedostatak u dizajnu i svi se pokušavaju popraviti. Samo jedna od dvije sigurnosne rupe može se zakrpati, a zakrpe će računala (i Macove) učiniti Intelovim čipovima sporijim.
ažuriranje: Ranija verzija ovog članka navodi da je ovaj nedostatak specifičan za Intelove čipove, ali to nije cijela priča. Zapravo postoje dva ovdje se pojavljuju velike ranjivosti, koje se sada nazivaju "Meltdown" i "Spectre". Otapanje je u velikoj mjeri specifično za Intel procesore i utječe na sve CPU modele iz proteklih nekoliko desetljeća. U nastavku smo dodali više informacija o ove dvije greške, kao i razliku između njih.
Što su topljenje i sablast?
Spectre je “temeljni nedostatak dizajna” koji postoji u svakom CPU-u na tržištu - uključujući one iz AMD-a i ARM-a, kao i Intel-a. Trenutno ne postoji nikakav softverski popravak i vjerojatno će zahtijevati potpuno redizajniranje hardvera za CPU-e preko cijele ploče - iako je, na sreću, prilično teško ga iskoristiti, tvrde istraživači sigurnosti. Moguće je zaštititi od određenih Spectre napada, a programeri rade na tome, ali najbolje rješenje bit će redizajn hardvera procesora za sve buduće čipove.
Otapanje u osnovi čini Spectre lošijim čineći temeljni nedostatak koji je u osnovi mnogo lakši za iskorištavanje. To je u biti dodatni nedostatak koji utječe na sve Intelove procesore napravljene u posljednjih nekoliko desetljeća. Također utječe na neke high-end ARM Cortex-A procesore, ali to ne utječe na AMD čipove. Danas se operacijski sustav krpa.
Ali kako funkcioniraju te mane?
Programi koji se izvode na računalu pokreću se s različitim razinama sigurnosnih dozvola. Primjerice, kernel operacijskog sustava - kernel sustava Windows ili Linux kernel - ima najvišu razinu dozvola jer pokreće emisiju. Programi za stolna računala imaju manje dozvola, a kernel ograničava ono što oni mogu učiniti. Kernel koristi hardverske značajke procesora kako bi pomogao u provedbi nekih od ovih ograničenja, jer je brže to učiniti hardverom nego softverom.
Problem je ovdje s "spekulativnim izvršenjem". Iz razloga performansi, moderni CPU-ovi automatski pokreću upute za koje misle da bi ih mogli pokrenuti, a ako to ne učine, mogu jednostavno premotati i vratiti sustav u prethodno stanje. Međutim, nedostatak u Intelu i nekim ARM procesorima omogućuje procesima pokretanje operacija koje inače ne bi mogli izvoditi, jer se operacija izvodi prije nego što procesor smeta da provjeri hoće li imati dozvolu za pokretanje ili ne. To je greška u kvaru.
Ključni problem s Meltdownom i Spectreom leži unutar cache procesora. Aplikacija može pokušati čitati memoriju i, ako nešto pročita u predmemoriji, operacija će se dovršiti brže. Ako pokuša pročitati nešto što nije u predmemoriji, završit će sporije. Aplikacija može vidjeti hoće li nešto završiti brzo ili sporo, a dok se sve ostalo tijekom spekulativnog izvršavanja čisti i briše, vrijeme potrebno za izvođenje operacije ne može se sakriti. Zatim može upotrijebiti ove informacije za izradu karte u memoriji računala, jednu po jednu. Caching ubrzava stvari, ali ovi napadi koriste tu optimizaciju i pretvaraju ga u sigurnosni propust.
Dakle, u najgorem slučaju, JavaScript kôd koji se izvodi u vašem web pregledniku može učinkovito čitati memoriju u koju ne bi trebao imati pristup, kao što su privatni podaci koji se čuvaju u drugim aplikacijama. Pružatelji usluga u oblaku kao što su Microsoft Azure ili Amazon Web Services, koji hostiraju višestruki softver tvrtke u različitim virtualnim strojevima na istom hardveru, posebno su u opasnosti. Softver jedne osobe u teoriji bi mogao špijunirati stvari u virtualnom stroju druge tvrtke. To je slom u razdvajanju između aplikacija. Zakrpe za Meltdown znači da ovaj napad neće biti tako jednostavan. Nažalost, stavljanje ovih dodatnih provjera na mjesto znači da će neke operacije biti sporije na pogođenom hardveru.
Programeri rade na softverskim zakrpama koje čine Spectre napade teže izvedivima. Na primjer, Googleova nova značajka izolacije web-lokacije pomaže u zaštiti od toga, a Mozilla je već izvršila neke brze izmjene na Firefoxu. Microsoft je napravio i neke promjene kako bi zaštitio Edge i Internet Explorer u Windows Updateu koji je sada dostupan.
Ako vas zanimaju duboki detalji o Meltdownu i Spectreu, pročitajte tehničko objašnjenje Googleovog tima Project Zero, koji je otkrio bugove prošle godine. Više informacija također je dostupno na web stranici MeltdownAttack.com.
Koliko će moj PC biti sporiji??
ažuriranje: 9. siječnja Microsoft je objavio neke informacije o izvedbi zakrpe. Prema Microsoftu, Windows 10 na PC-ima iz 2016. godine s Skylake, Kabylake ili novijim Intelovim procesorima pokazuje "jednoznamenkasto usporavanje" koje većina korisnika ne bi smjela primijetiti. Windows 10 na računalima iz 2015. godine s Haswell-om ili starijim CPU-om može imati veće usporavanje, a Microsoft „očekuje da će neki korisnici primijetiti smanjenje performansi sustava“.
Korisnici sustava Windows 7 i 8 nisu tako sretni. Microsoft tvrdi da "očekuju da će većina korisnika primijetiti smanjenje performansi sustava" kada koriste Windows 7 ili 8 na PC-u iz 2015. godine s Haswellom ili starijim CPU-om. Ne samo da Windows 7 i 8 koriste starije CPU-ove koji ne mogu učinkovito izvoditi zakrpu, već i "Windows 7 i Windows 8 imaju više prijelaza između jezgre korisnika zbog postojećih dizajnerskih odluka, kao što je prikazivanje svih fontova u kernelu" , a to također usporava.
Microsoft planira izvršiti vlastita mjerila i objaviti više detalja u budućnosti, ali ne znamo točno koliko će Meltdownova zakrpa utjecati na svakodnevno korištenje računala. Dave Hansen, programer Linux kernela koji radi u Intelu, izvorno je napisao da će promjene napravljene u Linux kernelu utjecati na sve. Prema njegovim riječima, većina radnih opterećenja bilježi jednoznačno usporavanje, pri čemu je tipično usporavanje od oko 5%. Najgori mogući scenarij bio je 30% usporavanje testa umrežavanja, tako da se razlikuje od zadatka do zadatka. To su, međutim, brojevi za Linux, tako da se ne odnose nužno na Windows. Ispravak usporava sistemske pozive, tako da će zadaci s mnogo sistemskih poziva, kao što su kompajliranje softvera i pokretanje virtualnih strojeva, vjerojatno najviše usporiti. Ali svaki dio softvera koristi neke sistemske pozive.
ažuriranje: Od 5. siječnja TechSpot i Guru3D izvršili su neke mjerila za Windows. Oba su web-mjesta zaključila da korisnici računala nemaju puno razloga za brigu. Neke PC igre vide malo usporavanje od 2% s patchom, koji je unutar margine pogreške, dok drugi izgledaju identično. 3D renderiranje, softver za produktivnost, alati za sažimanje datoteka i uslužni programi za šifriranje se ne mijenjaju. Međutim, mjerila za čitanje i pisanje datoteka pokazuju zamjetne razlike. Brzina brzog čitanja velike količine malih datoteka pala je za oko 23% u Techspotovim mjerilima, a Guru3D je pronašao nešto slično. S druge strane, Tomov hardver pronašao je samo 3,21% prosječnog pada performansi uz testiranje pohrane aplikacija za potrošače i tvrdio da "sintetička mjerila" koja pokazuju značajnije padove brzine ne predstavljaju stvarnu upotrebu.
Računala s Intelovim Haswell procesorom ili novijim imaju značajku PCID (Process-Context Identifiers) koja će dobro obaviti popravak. Računala sa starijim Intelovim procesorima mogu vidjeti veće smanjenje brzine. Gore navedena mjerila provedena su na modernim Intelovim procesorima s PCID-om, tako da je nejasno kako će stariji Intelovi CPU-i raditi.
Intel kaže kako usporavanje "ne bi trebalo biti značajno" za prosječnog korisnika računala, a za sada to izgleda istinito, ali neke operacije vide usporavanje. Za oblak, Google, Amazon i Microsoft sve su u osnovi rekli istu stvar: za većinu radnog opterećenja nisu vidjeli značajan učinak nakon izvođenja zakrpa. Microsoft je rekao da "mali skup [Microsoft Azure] korisnika može imati neki učinak umrežavanja". Te izjave ostavljaju prostor za neka radna opterećenja da bi se vidjelo značajno usporavanje. Epic Games okrivio je Meltdown patch za izazivanje problema s poslužiteljem u igri Fortnite i objavio je graf koji pokazuje ogroman porast korištenja CPU-a na svojim cloud poslužiteljima nakon instalacije zakrpe.
Ali jedna stvar je jasno: Vaše računalo definitivno ne dobiva brže s ovom zakrpom. Ako imate Intelov CPU, može se samo usporiti čak i ako je manji.
Što trebam učiniti?
Neka ažuriranja za rješavanje problema s Meltdownom već su dostupna. Microsoft je izdao hitnu nadopunu podržanim verzijama sustava Windows putem servisa Windows Update 3. siječnja 2018., ali još nije stigao na sva računala. Windows Update koji rješava Meltdown i dodaje neke zaštite protiv Spectrea zove se KB4056892.
Apple je već zakrpio problem s MacOS 10.13.2 objavljenim 6. prosinca 2017. Chromebook s Chrome OS-om 63, koji je objavljen sredinom prosinca, već je zaštićen. Nadogradnje su također dostupne za Linux kernel.
Osim toga, provjerite ima li vaše računalo dostupna ažuriranja BIOS-a / UEFI-ja. Dok je ažuriranje sustava Windows riješilo problem Meltdown, potrebna su ažuriranja CPU-a od strane Intelova isporučena putem UEFI ili BIOS ažuriranja kako bi se u potpunosti omogućila zaštita od jednog od napada Spectre. Također biste trebali ažurirati svoj web-preglednik - kao i obično - jer preglednici dodaju i neke zaštite protiv Spectre-a.
ažuriranje: 22. siječnja Intel je najavio da bi korisnici trebali prestati s uvođenjem početnih ažuriranja UEFI-ja zbog “viših od očekivanih ponovnih pokretanja sustava i drugih nepredvidivih ponašanja sustava”. Intel je rekao da trebate pričekati konačni UEFI firmware patch koji je ispravno testiran i neće uzrokovati probleme sustava. Od 20. veljače, Intel je izdao stabilna ažuriranja mikrokodova za Skylake, Kaby Lake i Coffee Lake - to je 6., 7. i 8. generacija Intel Core platformi. Proizvođači računala trebali bi uskoro početi s uvođenjem novih ažuriranja firmvera UEFI-ja.
Iako je pogađanje izvedbe loše, preporučujemo da svejedno instalirate te zakrpe. Razvojni sustavi operativnih sustava ne bi pravili tako velike promjene, osim ako je to bio vrlo loš bug s ozbiljnim posljedicama.
Programska zakrpa koja je u pitanju popravit će grešku u Meltdownu, a neke softverske zakrpe mogu pomoći u ublažavanju nedostatka Spectrea. No, Spectre će vjerojatno i dalje utjecati na sve moderne procesore - barem u nekom obliku - sve dok ne bude izdan novi hardver koji će ga popraviti. Nije jasno kako će proizvođači to riješiti, ali u međuvremenu, sve što možete učiniti je da nastavite koristiti računalo - i da ćete se utješiti u činjenici da je Spectre teže iskoristiti, i nešto više od brige za računalstvo u oblaku od krajnjih korisnika stolna računala.
Zasluge za slike: Intel, VLADGRIN / Shutterstock.com.