Skrivet av Paddanx:
AMD är bara påverkad av Version 1 av Spectre och även den går att patcha i mjukvara utan märkbar prestandaskillnad. Dessutom var denna tydligen bara möjlig att göra med fysisk access till datorn, och med Linux (med icke standard kärna) av vad jag läst. (Är dock svårt att bekräfta 100% med så mycket info som flyger). Men det verkar mao som att AMD redan designat delvis skydd i Ryzen för detta, därav de påverkas inte av Version 2 bla. Så AMDs problem går att lösa, och det är så litet att det är löjligt ändå, jämfört.
???
Spectre Variant 1 patchas på x86 genom att man stoppar in "lfence" mellan punkten där spekulationen normalt startar samt punkten där man gör en minnesaccess som baseras på något data som den som attackerar på något sätt kan styra. "lfence" är inte superdyr men långt ifrån en av de billigare instruktionerna + att avbryta spekulering är i normalfallet dåligt för prestanda -> det är en prestandapåverkan (ja även på AMD).
Inte ens AMD hävdar att man är immun mot Variant 2, vad man säger är att det är nära noll procents risk att man är mottaglig mot denna och att ingen så här långt har lyckats gjort en fungerande attack (vilket fortfarande är sant). Vad AMD utelämnar här är att Variant 2 är den svåraste varianten att utnyttja bl.a. då den måste specialdesignas för varje specifik branch-predictor implementation.
Forskarna är övertygade om att även AMD är mottagliga mot denna, men AMD har så här långt vägrat lämnat ut de detaljer kring deras branchpredictoralgoritm som behövs. Man har inte heller haft tid att göra reverse engineering från forskarhåll. Intelkoden fungerar inte heller på ARM (även fast den är skriven i t.ex. C), men för påverkade Cortex har ARM själva gjort PoC som demonstrerar buggen på deras kretsar.
Skrivet av Paddanx:
Det är Intels CPUer som inte går att laga. Dessa lider av alla 3 (Spectre + Meltdown), oavsett OS, oavsett dator, oavsett chip och endast Meltdown går att lösa då med prestanda lidande problemen, som verkar bla döda SSD prestanda rätt hårt.
Sant, men är bara Meltdown (Variant 3), som man till 100 % kan lösa med en OS-patch.
Skrivet av Paddanx:
Spectre kan gå att minska risken för med Intel, men aldrig elimineras, pga deras design i hårdvaran.
Är exakt samma story för Intel, AMD och ARM här: spectre kan inte lösas med en enda fix, det kräver tyvärr att man uppdaterar varenda programvara + Variant 2 kräver även en uppdatering i mikrokod.
Med uppdatering i programvara och uppdatering av mikrokod hävdar i alla fall Intel (och ARM, AMD har inte sagt något än) att problemet ska helt gå att lösa. Kvarvarande problematiken är att det kommer finnas programvara som saknar fixar under lång lång tid framöver.
Skrivet av Paddanx:
Mja... det är så pass mycket skrivet om detta att det inte undgår att lite info kommer, men visst du har en valid poäng. Som sagt jag tror inte Intel kommer "försvinna" heller, men Intel tjänar mest på företagsmarknaden. Och där... har de precis tappat 20-30% prestanda. Ryzen Pro har dessutom inte ens Version 1 av problemet, då den har krypterat minnet. Så om företag vill ha det säkrat, har AMD guldåder att hämta där.
Tror du helt missförstått mekanismen hos denna bug, man är mottaglig även om RAM är krypterat!!! Orsak? Den process som attackeras "ser" ju den okrypterade varianten av data och det är den processen som läcker information genom att göra cache-access vars effekt kan detekteras av den attackerande processen.
Vidare så har nästan alla Skylake CPUer stöd för kryptering av RAM (och finns stöd i Linux som standard), det kallas SGX på Intel (och samma story här, SGX skyddar INTE mot buggen).
Skrivet av Paddanx:
Ang att utnyttja det så är Meltdown exakt den som är stört risk för att utnyttjas. Du kan köra detta direkt från en hackad sida i webbläsaren, då det inte behöver verken fysisk tillgång eller ens admin rättigheter. Det är mao en enorm säkerhetsrisk. Spectre är svårare att utnyttja, men går även remote, på Intel.
Både Spectre och Meltdown är klassade som "local exploits". Fast det betyder inte riktigt vad många kanske tror... En attack som utförs genom att webbläsaren kör JavaScript när man besöker en webbsida anses vara en "local exploit" då attacken bygger på att den som attackerar kör något lokalt (en viss JS-kod i detta fall).
Och nej, det är Spectre Variant 1 som är lättast att använda när man går via webbläsare och JS, effekten är att man kan läsa det som webbläsaren har i "sitt" addressutrymme (som kan t.ex. vara lösenord och kreditkortsnummer).
"Variant 1 (Spectre) can be used in Javascript to pull secrets from a user's browser, by attacking the process memory of the browser." Länk
Därför viktigt att ALLA ser till att applicera patcher för Variant 1. Har testat denna Spectre Varian 1 PoC, attacken lyckas på både både mitt Ryzen 5 1600 och i7-6770HQ så är knappast en "teoretisk attack". Finns allt fler kodsnuttar för att utnyttja just Spectre Variant 1, gissningsvis då det är varianten som fungerar på klart flest CPU-modeller. Som tur är finns det redan, eller kommer finnas inom kort, motmedel mot detta i alla populära webbläsare.
Meltdown är absolut den som har värsta implikationen (man kan läsa allt minne i systemet), men här betecknas en attack via just webbläsare+JS som "teoretiskt möjlig men extremt svår att få till i praktiken". Dock är Meltdown klart lättast att utnyttja sett på det stora hela, alla system där man får man kompilera sitt eget C/C++ program så är det en parkpromenad att utnyttja Meltdown så alla molnleverantörer måste bara applicera patchen.
Alla tre sårbarheter går att utnyttja utan speciella rättigheter på systemet utöver att man på något sätt får köra kod man själv kontrollerar.