Ang software ng proteksyon ng LVI ng Google ay nagpakita ng 14x na hit sa pagganap

Zola Bridges mula sa Google iminungkahi para sa LLVM compiler set, isang patch na may pagpapatupad ng proteksyon ng SESES (Speculative Execution Side Effect Suppression), na tumutulong sa pagharang ng mga pag-atake sa speculative execution mechanism sa mga Intel CPU, gaya ng LVI. Ang paraan ng proteksyon ay ipinatupad sa antas ng compiler at nakabatay sa pagdaragdag ng mga tagubilin ng compiler kapag bumubuo ng machine code LFENCE, na ipinapasok bago ang bawat memorya ng pagbabasa o pagsulat ng pagtuturo, pati na rin bago ang unang pagtuturo ng sangay sa pangkat ng mga tagubilin na nagtatapos sa bloke.

Ang pagtuturo ng LFENCE ay naghihintay para sa lahat ng nakaraang memory reads na mag-commit at hindi pinagana ang preemption ng mga kasunod na tagubilin pagkatapos ng LFENCE hanggang sa makumpleto ang commit. Ang paggamit ng LFENCE ay humahantong sa isang makabuluhang pagbaba sa pagganap, kaya ang proteksyon ay iminungkahi na gamitin sa matinding mga kaso para sa partikular na kritikal na code. Bilang karagdagan sa ganap na proteksyon, ang patch ay nag-aalok ng tatlong mga flag na nagbibigay-daan sa iyong piliing huwag paganahin ang ilang mga antas ng proteksyon upang mabawasan ang negatibong epekto sa pagganap.

Sa mga pagsusulit na isinagawa, ang paggamit ng proteksyon ng SESES para sa BoringSSL package ay humantong sa pagbawas sa bilang ng mga operasyon sa bawat segundo na isinagawa ng library ng 14 na beses - ang pagganap ng protektadong bersyon ng library ay nasa average na 7.1% lamang ng hindi protektadong bersyon (variation depende sa pagsubok mula 4% hanggang 23%) ).

Para sa paghahambing, iminungkahi Dati, para sa GNU Assembler, isang mekanismo na nagsasagawa ng pagpapalit ng LFENCE pagkatapos ng bawat operasyon ng pag-load ng memorya at bago ang ilang mga tagubilin sa sangay ay nagpakita ng pagbaba ng pagganap ng humigit-kumulang 5 beses (22% ng code nang walang proteksyon). Ang paraan ng proteksyon ay din iminungkahi ΠΈ ipinatupad ng mga inhinyero ng Intel, ngunit ang mga resulta ng pagsubok sa pagganap para dito ay hindi pa nai-publish. Sa una, ang mga mananaliksik na nakilala ang pag-atake ng LVI ay hinulaan ang isang 2- hanggang 19 na beses na pagbaba sa pagganap kapag nag-aaplay ng buong proteksyon.

Pinagmulan: opennet.ru

Magdagdag ng komento