Googles LVI-beskyttelsessoftware viste et 14x præstationshit

Zola Bridges fra Google Han tilbød til LLVM-kompilersættet, en patch med implementering af SESES-beskyttelse (Speculative Execution Side Effect Suppression), som hjælper med at blokere angreb på den spekulative eksekveringsmekanisme i Intel-CPU'er, som f.eks. HVAC. Beskyttelsesmetoden er implementeret på compilerniveau og er baseret på tilføjelse af instruktioner fra compileren ved generering af maskinkode LFENCE, som indsættes før hver hukommelses læse- eller skriveinstruktion, såvel som før den første greninstruktion i den gruppe af instruktioner, der afslutter blokken.

LFENCE-instruktionen venter på, at alle tidligere hukommelseslæsninger begås og deaktiverer foregribelse af efterfølgende instruktioner efter LFENCE, indtil commit er fuldført. Brugen af ​​LFENCE fører til et betydeligt fald i ydeevnen, så beskyttelse foreslås brugt i ekstreme tilfælde til særligt kritisk kode. Ud over fuld beskyttelse tilbyder patchen tre flag, der giver dig mulighed for selektivt at deaktivere visse niveauer af beskyttelse for at reducere den negative indvirkning på ydeevnen.

I de gennemførte test førte brugen af ​​SESES-beskyttelse til BoringSSL-pakken til en reduktion i antallet af operationer pr. sekund udført af biblioteket med 14 gange - ydeevnen af ​​den beskyttede version af biblioteket var i gennemsnit kun 7.1% af ubeskyttet version (variation afhængig af testen fra 4% til 23%).

Til sammenligning, foreslog Tidligere, for GNU Assembler, viste en mekanisme, der udfører LFENCE-substitution efter hver hukommelsesindlæsningsoperation og før nogle greninstruktioner, et ydelsesfald på omkring 5 gange (22% af koden uden beskyttelse). Også beskyttelsesmetode foreslog и implementeret af Intels ingeniører, men resultaterne af præstationstest for det er endnu ikke blevet offentliggjort. Oprindeligt forudsagde forskerne, der identificerede LVI-angrebet, et 2- til 19-dobbelt fald i ydeevnen, når der blev anvendt fuld beskyttelse.

Kilde: opennet.ru

Tilføj en kommentar