Kan du huske sikkerhedsudnyttelserne Spectre og Meltdown fra sidste år? Intel og AMD håber virkelig, at du ikke gør det. På trods af hvad de vil have dig til at tro, forsvinder disse spekulative henrettelsesudnyttelser ikke, i det mindste ikke med de løsninger, der er foreslået indtil videre.
Indhold
- Starter fra roden
- Sidespringende Spectre
- Sikkerhed, men til hvilken pris?
- Stor, lille og sikker
- At bringe det til masserne
I stedet for at forsøge at rette hver variant, der følger med, vil en permanent rettelse kræve en grundlæggende ændring af, hvordan CPU'er er designet. Forslaget? En "sikker kerne", der sørger for, at dine data forbliver sikre mod angribere, uanset hvilke fejl de forsøger at udnytte.
Anbefalede videoer
Det er måske ikke den vej, disse store processorvirksomheder ønsker at tage, men det er måske den eneste, der rent faktisk virker.
Relaterede
- AMDs forsvar mod Spectre V2 kan være utilstrækkeligt
Starter fra roden
Når en ny generation af processorer lanceres, er det første spørgsmål på nogens læber, "hvor hurtig er det?" Flere megahertz, flere kerner, mere cache, alt sammen for at få programmer til at køre hurtigere og spil til at fungere bedre. Sekundære overvejelser kan være strømkrav eller varmeproduktion, men sjældent spørger nogen om sikkerhed.
Forståelse af Spectre og Meltdown
Problemet med det er, at de seneste års præstationsforbedringer for det meste er drevet af spekulativ forudsigelse, det er CPU'er, der gætter på, hvad du skal gøre næste gang og gør alt, hvad du kan brug for det. Det er fantastisk til ydeevnen, men som Spectre og dets varianter har vist, er det forfærdeligt for sikkerheden.
“Spekulativ henrettelse har været en præstationsoptimerende funktion af CPU'er i lang tid nu, siger Malwarebytes senior sikkerhedsforskning, Jean-Philippe Taggart til Digital Trends. Han forklarede, hvordan det er netop den funktion, der gør Intel og andres CPU'er sårbare over for Spectre og lignende angreb. "CPU-arkitektur vil have brug for en seriøs genovervejelse, for enten at bevare disse ydeevneforbedringer, men beskytte dem mod angreb som Spectre, eller for at fjerne dem helt," sagde han.
"Det er svært i sikkerhed, hvis du altid er reaktiv, skal vente på sikkerhedssårbarheder og derefter rette dem"
En potentiel løsning er at tilføje et nyt stykke hardware til kommende generationer af CPU'er. I stedet for at håndtere følsomme opgaver (der foretager sådanne angreb umagen værd) på høje hestekræfter behandlingskerner, hvad nu hvis chipproducenter kombinerede disse kerner med en ekstra kerne, der er specifikt designet med sådanne opgaver i tankerne? En sikkerhedskerne.
Hvis du gør det, kan det gøre Spectre og dets varianter til et ikke-problem for ny hardware. Det ville ikke være ligegyldigt, hvis morgendagens vigtigste CPU-kerner var sårbare over for sådanne angreb, fordi private eller sikre oplysninger ikke ville blive håndteret af disse kerner længere.
Dette rod af tillidskoncept er mere end blot en grov oversigt. I nogle tilfælde er det allerede et levedygtigt produkt, og alle større chipvirksomheder som Intel eller AMD skulle gøre for at drage fordel af det, er at adoptere det.
Sidespringende Spectre
"Det er svært i sikkerhed, hvis du altid er reaktiv, skal vente på sikkerhedssårbarheder og derefter rette dem," Rambus' seniordirektør for produktledelse, Ben Levine fortalte Digital Trends, da han blev spurgt om den igangværende Spectre-variant trusler. "Det problem med at forsøge at gøre en kompleks processor sikker er virkelig den svære måde. Det var her, vi fandt frem til tilgangen til at flytte sikkerhedskritisk funktionalitet til en separat kerne."
Selvom det ikke er den første, der foreslår en sådan idé, har Rambus forfinet den. Dens CryptoManager Root of Trust er en separat kerne, der ville sidde på en større CPU-matrice, lidt ligesom big.little-konceptet, der findes i mange mobile processorer og endda Intels egne nyt Lakefield design. Hvor disse chips dog bruger mindre kerner til strømbesparelser, ville en sikker kernerod af tillid fokusere på sikkerhed frem for alt andet.
Det ville kombinere en processor uden spekulationsaspekterne fra større CPU'er, med acceleratorer til kryptografi og sin egen sikre hukommelse. Det ville være et relativt simpelt design sammenlignet med de monstrøse generelle CPU'er, der kører vores computere i dag, men det ville være langt mere sikkert.
Ved at beskytte sig selv kunne den sikre kerne derefter påtage sig de mest følsomme opgaver, som en ellers almindelig CPU-kerne typisk ville håndtere. Sikring af krypteringsnøgler, validering af banktransaktioner, behandling af loginforsøg, lagring af private oplysninger i sikker hukommelse eller kontrol af boot-registreringer er ikke blevet beskadiget under opstart.
"... Disse operationer er relativt langsomme at udføre i software, men en sikkerhedskerne kan have hardwareacceleratorer til at gøre det meget hurtigere."
Alt dette kunne hjælpe med at forbedre den generelle sikkerhed for et system, der brugte det. Endnu bedre, da det ville mangle spekulative ydeevneforbedringer, ville det være fuldstændigt sikkert mod Spectre-lignende angreb, hvilket gør dem ugyldige. Sådanne angreb kunne stadig pålægges de vigtigste CPU-kerner, men da de ikke ville håndtere nogen data, der ville være værd at stjæle, ville det ikke være ligegyldigt.
"Idéen er ikke at komme med én CPU, der kan gøre alt for at være meget hurtig og meget sikker, men lad os optimere forskellige kerner separat til forskellige formål," forklarede Levine. "Lad os optimere vores primære CPU til ydeevne eller lavere effekt, hvad end der er vigtigt for det system, og optimere en anden kerne til sikkerhed. Vi har nu disse to separat optimerede behandlingsdomæner og udfører behandling i den af dem, der er mest passende i betragtning af karakteristikken af beregningen og systemet i tankerne."
En sådan kerne ville fungere lidt som den T2-coprocessor-chip, Apple introducerede med sin iMac og senere implementeret i sin 2018
Sikkerhed, men til hvilken pris?
Det siges ofte, at kompleksitet er sikkerhedens fjende. Derfor er det sikre kernedesign, Rambus foreslår, relativt enkelt. Det er ikke en stor, monstrøs chip med flere kerner og en høj clockhastighed som typiske CPU'er, der findes i desktops eller bærbare computere.
Så betyder det, at vi ville ofre ydeevne, hvis sådan en kerne skulle bruges sammen med en moderne chip? Ikke nødvendigvis.
Det vigtige hjem fra ideen om en sikker kerne, hvad enten det var Rambus’ CryptoManager Root of Trust, eller et lignende design fra et andet firma, er, at det kun ville udføre opgaver, der var fokuseret på privatlivets fred eller sikkerhed. Du behøver det ikke for at overtage fodring af din grafikkort under en spilsession eller finjustering af billeder i Photoshop. Du foretrækker måske, at det håndterer kryptering af dine beskeder over en chat-app. Det er her den specialiserede hardware kan rumme nogle fordele ud over sikkerhed.
"Ting som kryptografiske algoritmer, kryptering eller dekryptering fra en algoritme som AES eller brug af en offentlig nøglealgoritme som RSA eller elliptisk kurve, disse operationer er relativt langsomme at udføre i software, men en sikkerhedskerne kan have hardwareacceleratorer til at gøre det meget hurtigere,” Levine sagde.
"Vi skyder efter enkelhed, og hvis du holder noget simpelt, holder du det lille. Hvis den er lille, er den lav effekt."
Det er Arms chef for IoT-sikkerhed, Rob Coombs meget enig i.
"Typisk vil root of trusts indbygge en kryptoaccelerator, så det kræver lidt mere silicium, men fordelen ved det er, at det er højere ydeevne for ting som kryptofunktioner, så du ikke kun er afhængig af processoren til at udføre regelmæssig kryptering af filen," han sagde. "Processoren kan sætte det op, og så kan kryptomotoren gnaske sig igennem dataene og kryptere eller dekryptere dem. Du får højere ydeevne.”
Moderne processorer fra f.eks. Intel har deres egne krypto-acceleratorer, så der er det måske ikke tilfældet, at kryptering eller dekryptering ville være grundlæggende hurtigere end en generel CPU, der udfører den samme opgave, men det kunne være sammenlignelig.
Selvom Coombs i sin chat med os fremhævede, at en rod af tillidskerne ville kræve en lille smule ekstra silicium at producere, er omkostningerne ved at gøre det på andre vigtige faktorer som f.eks. fremstillingsprisen, chippens strømforbrug eller dens termiske udgange, ville for det meste være upåvirket.
Rambus' Ben Levine var enig.
"Sikkerhedskernen er bare lille i forhold til alt andet," sagde han. "Der er virkelig ingen væsentlig indvirkning på prisen på chippen, strøm eller termiske krav. Du kan gøre meget på et ret lille logisk område, hvis du designer det omhyggeligt. Vi skyder efter enkelhed, og hvis du holder noget simpelt, holder du det lille. Hvis den er lille, er den lav effekt."
Hans eneste forbehold var, at i mindre enheder med lavere strømstyrke som dem, der bruges i IoT, ville Rambus' sikre kerne have en større indflydelse på strøm og omkostninger. Det er her, Arms mere modulære tilgang kunne komme ind.
Stor, lille og sikker
Arm var en tidlig pioner inden for ideen om stor.lille CPU'er, eller store kerner og små kerner i samme processor. I dag er det også en almindelig funktion i mobile enheder fra Qualcomm og Apple. Den ser større CPU-kerner brugt til tunge løft efter behov, mens mindre kerner håndterer de mere almindelige opgaver for at spare på strøm. Arms tilgang bygger på den idé om at bygge root of trust ind i hovedchips, såvel som meget mindre mikrocontrollere til brug i en bredere vifte af enheder.
"Vi har defineret noget, der hedder a PSA (platformsikkerhedsarkitektur) root of trust med nogle væsentlige sikkerhedsfunktioner indbygget som kryptografi, sikker opstart, sikker opbevaring; Alle IOT-enheder har brug for disse,” forklarede Coobs til Digital Trends.
Af alle de store chipproducenter var Arm uden tvivl den mindst påvirkede af Spectre og Meltdown. Hvor Intel var sårbar over for den bredeste række af potentielle angreb, og AMD var nødt til at frigive en række mikrokoder og softwaretweaks, var Arm i stand til at styrke sit allerede robuste forsvar, før spekulative udførelsesfejl blev afsløret.
Nu fokuserer Arm sin indsats på at sikre tingenes internet. Coombs mener, at en sikker kerne, root of trust er en af de bedste måder at gøre det på, og han ønsker at se enhver IoT-enhed implementere et sådant system. For at hjælpe med at opnå det tilbyder Arm open source-software, udviklingsvejledning og hardwareløsninger til de sikkerhedsproblemer, som nutidens IoT-udviklere står over for.
.. Meget af brugen af sikkerhedskernen vil ske på OS- og systemniveau og ikke på applikationsniveau
"Vi har skabt en open source- og referenceimplementering, og nu med PSA-certificeret har vi skabt en sikkerhedsordning på flere niveauer [hvor] folk kan vælge den sikkerhedsrobusthed, de har brug for,” sagde Coombs. “Forskellige systemer har brug for forskellige mængder af sikkerhed. Vi ønsker at få det til at passe til IoT-området."
Ved at anvende disse principper på større, generelle CPU'er, der findes i bærbare og stationære computere, ville slutresultatet ikke være drastisk anderledes. Selvom sådanne chips ikke ville have de små kerner ved siden af deres store, kunne de implementere en sikker kerne på terningen uden for meget besvær, ifølge Rambus' Ben Levine.
"Disse kerner burde være og skal være meget mindre end en af de vigtigste store CPU-kerner, som du får i en chip fra Intel eller AMD," sagde han. "Det bliver ikke syv plus én, det vil være otte eller en hvilken som helst kerneprocessor og en eller måske mere end én lille sikkerhedskerne, der giver sikkerhedsfunktioner til alle de andre kerner."
Det er også afgørende, at sådanne kerner ikke engang ville være komplicerede at implementere.
"Vi vil ikke tilføje meget til chipdesigncyklussen med at få en ny chip ind i et forbrugerprodukt," sagde han. "Vores påvirkning vil være ret minimal. Det vil bare være den normale produktlivscyklus med at få en chiparkitekturudvikling i produktion og derefter til at sende produkter."
At bringe det til masserne
Sikkerhed kan være et hønse- og ægproblem, hvor udviklere ikke er interesserede i at implementere det uden et specifikt behov eller efterspørgsel fra kunder. Men hvis hardwareproducenter skulle kombinere deres eksisterende CPU-kerner med en sikker kernerod af tillid, ville softwareudvikleres job være relativt let.
"Afhængigt af applikationen vil en stor del af brugen af sikkerhedskernen ske på OS- og systemniveau og ikke på applikationsniveau," forklarede Levine. "Hvis du opbygger dit operativsystem og din overordnede systemsoftware korrekt, kan du bruge det meste af den sikkerhedsfunktionalitet, uden at applikationsudviklere behøver at bekymre sig om det. Du kan levere API'er for at afsløre nogle af sikkerhedskernefunktionaliteten, som nemt kan forbruges af applikationsudvikleren, såsom kryptering og dekryptering af data."
Ved at inkorporere roden til tillid i selve hardwaren og overlade ansvaret for implementeringen til operativsystemer, softwareudviklere hurtigt kunne drage fordel af den ekstra sikkerhed, som det kunne bringe til alle facetter af computere, herunder at undgå faldgruberne i Spectre og dets lignende.
Det kan være her virksomheder som Intel og AMD har gået galt indtil videre. Mens deres patches, mikrokoderettelser og hardwarejusteringer har hjulpet med at afbøde nogle af problemerne med Spectre-lignende angreb, kommer de alle med deres egne faldgruber. Ydeevnen er blevet forringet, og i mange tilfælde anvendes de valgfri patches ikke af enhedsproducenter, fordi de ikke ønsker at tabe magtkampen.
I stedet søger Rambus, Arm og andre helt at undvige problemet.
"Vi påstår ikke, at vi reparerer Spectre eller Meltdown, det, vi siger, er først, at disse udnyttelser ikke er de eneste sårbarheder derude," sagde Levine. "Der vil altid være flere. Kompleksiteten af moderne processorer gør det uundgåeligt. Lad os ændre problemet og lad os acceptere, at der vil være flere sårbarheder i CPU'er til generelle formål og tingene som vi holder meget af, såsom nøgler, legitimationsoplysninger, data, lad os flytte det ud af CPU'en og lad os omgå hele problemet."
På denne måde kan brugerne stole på, at deres system er sikkert uden at skulle ofre noget. Roden til tillidshardware betyder, at enhver data, der bliver stjålet væk, er ubrugelig for nogen. Det efterlader spøgelset fra Spectre i redundansens skyggefulde område, hvor det kan fortsætte med at hjemsøge dem, der bruger gammel hardware. Men efterhånden som folk opgraderer til nye fremtidige generationer af hardware, der er udstyret med rod af tillid, ville det blive mere og mere irrelevant og langt mindre bekymrende.
Redaktørens anbefalinger
- AMD kan endelig slå Intel for den hurtigste mobile gaming CPU
- Intels chips er stadig sårbare, og den nye Ice Lake vil ikke lappe alt