Een Google-ingenieur stelde softwarebescherming van processors tegen LVI-aanvallen voor

Enige tijd geleden werd bekend over een nieuwe kwetsbaarheid in de speculatieve architectuur van Intel-processors, die werd genoemd Laad waarde injectie (LVI). Intel heeft zijn eigen mening over de gevaren van LVI en aanbevelingen om deze te beperken. Uw eigen versie van bescherming tegen dergelijke aanvallen hij bood ingenieur bij Google. Maar u zult voor de beveiliging moeten betalen door de processorprestaties met gemiddeld 7% te verminderen.

Een Google-ingenieur stelde softwarebescherming van processors tegen LVI-aanvallen voor

We merkten eerder op dat het gevaar van LVI niet schuilt in het specifieke mechanisme dat door de onderzoekers is ontdekt, maar in het principe zelf van de LVI-zijkanaalaanval, dat voor het eerst werd aangetoond. Zo werd een nieuwe richting geopend voor dreigingen die niemand eerder had vermoed (tenminste, dit werd niet besproken in de publieke ruimte). De waarde van de ontwikkeling van Google-specialist Zola Bridges ligt dan ook in het feit dat zijn patch het gevaar van zelfs onbekende nieuwe aanvallen op basis van het LVI-principe verkleint.

Eerder in de GNU Project Assembler (GNU-assembler) zijn er wijzigingen aangebracht die het risico op de LVI-kwetsbaarheid verkleinen. Deze wijzigingen bestonden uit het toevoegen barrière-instructies LFENCE, dat een strikte volgorde vaststelde tussen geheugentoegang voor en na de barrière. Het testen van de patch op een van Intel's Kaby Lake-generatieprocessors liet een prestatiedaling tot wel 22% zien.

De Google-ontwikkelaar stelde zijn patch voor met de toevoeging van LFENCE-instructies aan de LLVM-compilerset en noemde de bescherming SESES (Speculative Execution Side Effect Suppression). De door hem voorgestelde beschermingsoptie vermindert zowel LVI-bedreigingen als andere soortgelijke bedreigingen, bijvoorbeeld Spectre V1/V4. Dankzij de SESES-implementatie kan de compiler LFENCE-instructies op geschikte locaties toevoegen tijdens het genereren van machinecode. Plaats ze bijvoorbeeld vóór elke instructie voor het lezen uit het geheugen of het schrijven naar het geheugen.

LFENCE-instructies voorkomen voorrang op alle volgende instructies totdat eerdere geheugenlezingen zijn voltooid. Uiteraard heeft dit invloed op de prestaties van processors. De onderzoeker ontdekte dat SESES-bescherming de snelheid waarmee taken via de beschermde bibliotheek werden voltooid, gemiddeld met 7,1% verminderde. Het bereik van de productiviteitsreductie varieerde in dit geval van 4 tot 23%. De aanvankelijke voorspelling van de onderzoekers was pessimistischer en riep op tot een 19-voudige prestatievermindering.



Bron: 3dnews.ru

Voeg een reactie