Huidige CPU's hebben ontwerpfouten. Spectre heeft ze blootgelegd, maar aanvallen zoals Foreshadow en nu ZombieLoad maken gebruik van vergelijkbare zwakheden. Deze "speculatieve uitvoering" -fouten kunnen alleen echt worden verholpen door een nieuwe CPU met ingebouwde bescherming te kopen.
Patches vertragen vaak bestaande CPU's
De industrie is verwoed bezig met het patchen van "side-channel-aanvallen" zoals Spectre en Voorafschaduwing , die de CPU misleiden om informatie te onthullen die dit niet zou moeten doen. Bescherming voor huidige CPU's is beschikbaar gemaakt door microcode-updates, fixes op besturingssysteemniveau en patches voor applicaties zoals webbrowsers.
Spectre-fixes hebben vertraagde computers met oude CPU's , hoewel Microsoft op het punt staat versnellen ze weer . Het patchen van deze bugs vertraagt vaak de prestaties van bestaande CPU's.
Nu werpt ZombieLoad een nieuwe dreiging op: om een systeem volledig tegen deze aanval te vergrendelen en te beveiligen, moet je Intel's uitschakelen hyper-threading . Daarom heeft Google hyperthreading zojuist uitgeschakeld op Intel Chromebooks. Zoals gewoonlijk zijn CPU-microcode-updates, browserupdates en patches voor het besturingssysteem onderweg om te proberen het gat te dichten. De meeste mensen hoeven hyperthreading niet uit te schakelen als deze patches eenmaal zijn geïnstalleerd.
Nieuwe Intel-CPU's zijn niet kwetsbaar voor ZombieLoad
Maar ZombieLoad is geen gevaar op systemen met nieuwe Intel CPU's. Zoals Intel zegt het, ZombieLoad "wordt aangepakt in hardware, beginnend met geselecteerde 8e en 9e generatie Intel® Core ™ -processors, evenals de 2e generatie Intel® Xeon® schaalbare processorfamilie." Systemen met deze moderne CPU's zijn niet kwetsbaar voor deze nieuwe aanval.
ZombieLoad heeft alleen invloed op Intel-systemen, maar Spectre heeft ook invloed op AMD en sommige ARM-CPU's. Het is een industriebreed probleem.
CPU's hebben ontwerpfouten, waardoor aanvallen mogelijk zijn
Zoals de industrie realiseerde zich toen Spectre zijn lelijke kop opstak , moderne CPU's hebben enkele ontwerpfouten:
Het probleem hier is met "speculatieve executie". Om prestatieredenen voeren moderne CPU's automatisch instructies uit waarvan ze denken dat ze die nodig hebben, en als dat niet het geval is, kunnen ze eenvoudig terugspoelen en het systeem terugbrengen naar de vorige staat ...
Het kernprobleem met zowel Meltdown als Spectre ligt in de cache van de CPU. Een toepassing kan proberen geheugen te lezen en als het iets in de cache leest, wordt de bewerking sneller voltooid. Als het iets probeert te lezen dat niet in de cache staat, wordt het langzamer voltooid. De applicatie kan zien of iets snel of langzaam wordt voltooid en terwijl al het andere tijdens speculatieve uitvoering wordt opgeruimd en gewist, kan de tijd die nodig is om de bewerking uit te voeren niet worden verborgen. Het kan deze informatie vervolgens gebruiken om een kaart te maken van alles in het computergeheugen, bit voor bit. De caching versnelt de zaken, maar deze aanvallen profiteren van die optimalisatie en veranderen het in een beveiligingsfout.
Met andere woorden, prestatie-optimalisaties in moderne CPU's worden misbruikt. Code die op de CPU wordt uitgevoerd - misschien zelfs JavaScript-code die in een webbrowser wordt uitgevoerd - kan van deze fouten profiteren om geheugen buiten de normale sandbox te lezen. In het ergste geval kan een webpagina in het ene browsertabblad uw wachtwoord voor internetbankieren lezen op een ander browsertabblad.
Of, op cloudservers, kan een virtuele machine snuffelen naar de gegevens in andere virtuele machines op hetzelfde systeem. Dit zou niet mogelijk moeten zijn.
VERWANT: Welke gevolgen hebben de meltdown- en spookfouten voor mijn pc?
Softwarepatches zijn gewoon bananen
Het is geen verrassing dat patches ervoor hebben gezorgd dat CPU's iets langzamer presteren om dit soort side channel-aanvallen te voorkomen. De industrie probeert extra controles toe te voegen aan een prestatie-optimalisatielaag.
De suggestie om hyper-threading uit te schakelen is een vrij typisch voorbeeld: door een functie uit te schakelen waardoor uw CPU sneller werkt, maakt u hem veiliger. Schadelijke software kan deze prestatiefunctie niet langer misbruiken, maar het versnelt uw pc niet meer.
Dankzij veel werk van veel slimme mensen zijn moderne systemen redelijk beschermd tegen aanvallen zoals Spectre zonder veel vertraging. Maar patches zoals deze zijn slechts pleisters: deze beveiligingsfouten moeten worden verholpen op het CPU-hardwareniveau.
Fixes op hardwareniveau bieden meer bescherming, zonder de CPU te vertragen. Organisaties hoeven zich geen zorgen te maken of ze de juiste combinatie van microcode (firmware) -updates, besturingssysteempatches en softwareversies hebben om hun systemen te beveiligen.
Zoals een team van beveiligingsonderzoekers het in een onderzoekspaper , dit "zijn niet zomaar bugs, maar liggen in feite aan de basis van optimalisatie." CPU-ontwerpen zullen moeten veranderen.
Intel en AMD bouwen oplossingen voor nieuwe CPU's
Fixes op hardwareniveau zijn niet alleen theoretisch. CPU-fabrikanten werken hard aan architectonische veranderingen die dit probleem op CPU-hardwareniveau zullen oplossen. Of, zoals Intel het in 2018 uitdrukte, Intel was " het bevorderen van beveiliging op siliciumniveau "Met 8e generatie CPU's:
We hebben delen van de processor opnieuw ontworpen om nieuwe beschermingsniveaus te introduceren door middel van partitionering die bescherming bieden tegen zowel [Spectre] Variant 2 als 3. Beschouw deze partitionering als extra "beschermende muren" tussen applicaties en gebruikersprivileges om een obstakel te creëren voor slechte actoren.
Intel maakte eerder bekend dat het zijn 9e generatie CPU's gaat gebruiken omvatten extra bescherming tegen Foreshadow en Meltdown V3. Deze CPU's worden niet beïnvloed door de onlangs onthulde ZombieLoad-aanval, dus die beveiligingen moeten helpen.
AMD werkt ook aan veranderingen, hoewel niemand veel details wil onthullen. In 2018 heeft AMD's CEO Lisa Su zei : "Op de langere termijn hebben we wijzigingen aangebracht in onze toekomstige processorkernen, te beginnen met ons Zen 2-ontwerp, om potentiële Spectre-achtige exploits verder aan te pakken."
Voor iemand die de snelste prestaties wil zonder dat patches de zaken vertragen - of gewoon een organisatie die er volledig zeker van wil zijn dat zijn servers zo goed mogelijk zijn beschermd - is de beste oplossing om een nieuwe CPU te kopen met die hardwarematige fixes. Verbeteringen op hardwareniveau zullen hopelijk ook andere toekomstige aanvallen voorkomen voordat ze worden ontdekt.
Ongeplande veroudering
Terwijl de pers het soms heeft over 'geplande veroudering' - het plan van een bedrijf dat hardware verouderd raakt en je deze dus moet vervangen - is dit ongeplande veroudering. Niemand had verwacht dat er om veiligheidsredenen zoveel CPU's zouden moeten worden vervangen.
De lucht valt niet. Iedereen maakt het voor aanvallers moeilijker om bugs zoals ZombieLoad te exploiteren. U hoeft nu niet te racen om een nieuwe CPU te kopen. Maar een complete oplossing die de prestaties niet schaadt, vereist nieuwe hardware.