LVI เปเบกเปˆเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU

เบˆเบฑเบ”เบžเบตเบกเบกเบฒ เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป‚เบˆเบกเบ•เบตเปเบšเบšเปƒเปเปˆ LVI (Load Value Injection, CVE-2020-0551) เบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU Intel, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบฎเบปเปˆเบงเบ„เบตเปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบฅเบฑเบšเบˆเบฒเบ Intel SGX enclaves เปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†.

เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบตโ€‹เปเบšเบšโ€‹เปƒเปเปˆโ€‹เปเบกเปˆเบ™โ€‹เบญเบตเบ‡โ€‹เปƒเบชเปˆโ€‹เบเบฒเบ™โ€‹เปเบนเบ™โ€‹เปƒเบŠเป‰โ€‹เป‚เบ„เบ‡โ€‹เบชเป‰เบฒเบ‡โ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ›เบฑเบ”โ€‹เบ•เบฐโ€‹เบเบฐโ€‹เบเบณโ€‹เบˆเบธโ€‹เบฅเบฐโ€‹เบžเบฒเบโ€‹เปเบšเบšโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบ—เบตเปˆโ€‹เปƒเบŠเป‰โ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบต MDS (เบเบฒเบ™เป€เบเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณเบˆเบธเบฅเบฐเบžเบฒเบ), Spectre เปเบฅเบฐ Meltdown. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปƒเบซเบกเปˆเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบชเบฐเบเบฑเบ”เป‚เบ”เบเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบ‚เบญเบ‡เบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ Meltdown, Spectre, MDS เปเบฅเบฐเบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบญเบทเปˆเบ™เป†. เบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ LVI เบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ•เบดเบœเบปเบ™เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบฎเบฒเบ”เปเบงเบเบฑเบš CPU. เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™, เป‚เบ”เบเบเบฒเบ™เป€เบžเบตเปˆเบกเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ LFENCE เป‚เบ”เบ compiler เบซเบผเบฑเบ‡เบˆเบฒเบเปเบ•เปˆเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบซเบผเบ”เบˆเบฒเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ RET เบเบฑเบš POP, LFENCE เปเบฅเบฐ JMP, เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›เปเบกเปˆเบ™เบšเบฑเบ™เบ—เบถเบเป„เบงเป‰ - เบญเบตเบ‡เบ•เบฒเบกเบ™เบฑเบเบ„เบปเป‰เบ™เบ„เบงเป‰เบฒ, เบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™เบŠเบญเบšเปเบงเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เบˆเบฐเบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบซเบผเบธเบ”เบฅเบปเบ‡เปƒเบ™. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบ 2-19 เบ„เบฑเป‰เบ‡.

เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเปƒเบ™เบเบฒเบ™เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบŠเบปเบ”เป€เบŠเบตเบเป‚เบ”เบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบเบฒเบ™เป‚เบˆเบกเบ•เบตเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™เบ—เบดเบ”เบชเบฐเบ”เบตเบซเบผเบฒเบเบเปˆเบงเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” (เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบต, เปเบ•เปˆเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เปเบœเปˆเบžเบฑเบ™เป„เบ”เป‰เปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเบฑเบ‡เป€เบ„เบฒเบฐ).
Intel เป€เปเบฒเบฐเบชเบปเบก เบšเบฑเบ™เบซเบฒเบกเบตเบฅเบฐเบ”เบฑเบšเบญเบฑเบ™เบ•เบฐเบฅเบฒเบเบ›เบฒเบ™เบเบฒเบ‡ (5.6 เบˆเบฒเบเบ—เบฑเบ‡เปเบปเบ” 10) เปเบฅเบฐ เบ›เปˆเบญเบเบญเบญเบเบกเบฒ เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เป€เบŸเบตเบกเปเบงเปเบฅเบฐ SDK เบชเปเบฒเบฅเบฑเบšเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก SGX, เป€เบŠเบดเปˆเบ‡เบกเบฑเบ™เบžเบฐเบเบฒเบเบฒเบกเบชเบฐเบเบฑเบ”เบเบฑเป‰เบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเป‚เบ”เบเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เปเบเป‰เป„เบ‚. เบงเบดเบ—เบตเบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบตเปˆเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™เปƒเบŠเป‰เป„เบ”เป‰เบเบฑเบšเป‚เบ›เป€เบŠเบ”เป€เบŠเบต Intel เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™, เปเบ•เปˆเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเบ•เบปเบง LVI เบชเปเบฒเบฅเบฑเบšเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบญเบทเปˆเบ™เป†เบ—เบตเปˆเบเบฒเบ™เป‚เบˆเบกเบ•เบต Meltdown-class เปเบกเปˆเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเป€เบชเบ”เป„เบ”เป‰.

เบšเบฑเบ™เบซเบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป„เบ”เป‰เบ–เบทเบเบฅเบฐเบšเบธเปƒเบ™เป€เบ”เบทเบญเบ™เป€เบกเบชเบฒเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเป‚เบ”เบเบ™เบฑเบเบ„เบปเป‰เบ™เบ„เบงเป‰เบฒ Jo Van Bulck เบˆเบฒเบเบกเบฐเบซเบฒเบงเบดเบ—เบฐเบเบฒเป„เบฅ Leuven, เบซเบฅเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ”เป‰เบงเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเบ‚เบญเบ‡เบ™เบฑเบเบ„เบปเป‰เบ™เบ„เบงเป‰เบฒ 9 เบ„เบปเบ™เบˆเบฒเบเบกเบฐเบซเบฒเบงเบดเบ—เบฐเบเบฒเป„เบฅเบญเบทเปˆเบ™เป†, เบซเป‰เบฒเบงเบดเบ—เบตเบเบฒเบ™เป‚เบˆเบกเบ•เบตเบžเบทเป‰เบ™เบ–เบฒเบ™เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เปเบ•เปˆเบฅเบฐเบงเบดเบ—เบตเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบกเบตเบขเบนเปˆเป„เบ”เป‰เบชเบฐเป€เบžเบฒเบฐ. เบ•เบปเบงเป€เบฅเบทเบญเบ. เป€เบญเบเบฐเบฅเบฒเบ”, เปƒเบ™เป€เบ”เบทเบญเบ™เบเบธเบกเบžเบฒเบ‚เบญเบ‡เบ›เบตเบ™เบตเป‰, เบ™เบฑเบเบ„เบปเป‰เบ™เบ„เบงเป‰เบฒเบˆเบฒเบ Bitdefender เบเบฑเบ‡ เบ„เบปเป‰เบ™เบžเบปเบš เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ•เบปเบงเปเบ›เบเบฒเบ™เป‚เบˆเบกเบ•เบต LVI เปเบฅเบฐเบฅเบฒเบเบ‡เบฒเบ™เบกเบฑเบ™เปƒเบซเป‰ Intel. เบ•เบปเบงเปเบ›เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปเบกเปˆเบ™เบˆเปเบฒเปเบ™เบเป„เบ”เป‰เป‚เบ”เบเบเบฒเบ™เปƒเบŠเป‰เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบˆเบธเบฅเบฐเบžเบฒเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบŠเบฑเปˆเบ™: เบšเบฑเบŸเป€เบŸเบตเบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™ (SB, Store Buffer), เบšเบฑเบŸเป€เบŸเบตเบเบฒเบ™เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™ (LFB, Line Fill Buffer), FPU context switch buffer เปเบฅเบฐ cache เบฅเบฐเบ”เบฑเบšเบ—เปเบฒเบญเบดเบ” (L1D), เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เป€เบกเบทเปˆเบญเบเปˆเบญเบ™. เปƒเบ™โ€‹เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบตโ€‹เป€เบŠเบฑเปˆเบ™โ€‹:โ€‹ ZombieLoad, RIDL, Fallout, LazyFP, เบฎเบนเบšเบŠเบปเบ‡ ะธ Meltdown.

LVI เปเบกเปˆเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU

เบ•เบปเป‰เบ™เบ•เป เบเบฝเบ”เบ™เบดเบเบปเบก LVI เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เป‚เบˆเบกเบ•เบต MDS เปเบกเปˆเบ™เบงเปˆเบฒ MDS เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ microarchitectural เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเบขเบนเปˆเปƒเบ™ cache เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเบซเบผเบทเบเบฒเบ™เป‚เบซเบผเบ”เปเบฅเบฐเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ.
เบเบฒเบ™เป‚เบˆเบกเบ•เบต LVI เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบœเบนเป‰เป‚เบˆเบกเบ•เบตเบ–เบทเบเปƒเบชเปˆเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ microarchitectural เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบญเบดเบ”เบ—เบดเบžเบปเบ™เบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบœเบนเป‰เบ–เบทเบเป€เบ„เบฒเบฐเบฎเป‰เบฒเบ. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบซเบกเบนเบ™เปƒเบŠเป‰เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบœเบนเป‰เป‚เบˆเบกเบ•เบตเบชเบฒเบกเบฒเบ”เบชเบฐเบเบฑเบ”เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเปˆเบงเบ™เบ•เบปเบงเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบชเบฐเป€เบžเบฒเบฐเปƒเบ”เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฑเบ CPU เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบ.

LVI เปเบกเปˆเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU

เป„เบ› เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบ‚เบนเบ”เบฎเบตเบ” เปƒเบ™เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบœเบนเป‰เบ–เบทเบเป€เบ„เบฒเบฐเบฎเป‰เบฒเบ เบ„เบงเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡ เบฅเปเบฒเบ”เบฑเบšเบžเบดเป€เบชเบ”เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ” (gadgets) เบ—เบตเปˆเบ„เปˆเบฒเบ—เบตเปˆเบ–เบทเบเบ„เบงเบšเบ„เบธเบกเป‚เบ”เบเบœเบนเป‰เป‚เบˆเบกเบ•เบตเบ–เบทเบเป‚เบซเบฅเบ”, เปเบฅเบฐเบเบฒเบ™เป‚เบซเบผเบ”เบ„เปˆเบฒเบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™ (เบ„เบงเบฒเบกเบœเบดเบ”, เบเบฒเบ™เบเบปเบเป€เบฅเบตเบเบซเบผเบทเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญ) เบ—เบตเปˆเบ–เบทเบเบ–เบดเป‰เบก, เบเบปเบเป€เบฅเบตเบเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบชเบฑเปˆเบ‡เบ„เบทเบ™เปƒเบซเบกเปˆ. เป€เบกเบทเปˆเบญเบกเบตเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™, เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเบˆเบฐเบ›เบฒเบเบปเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ—เบตเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบขเบนเปˆเปƒเบ™ gadget เบฎเบปเปˆเบง. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ” (gadget) เปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเบเบธเบ”เบ•เบดเบ—เปเบฒเปเบฅเบฐเบกเป‰เบงเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบเบฑเบšเบ„เบทเบ™เบชเบนเปˆเบชเบฐเบžเบฒเบšเป€เบ”เบตเบกเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เปเบ•เปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบ›เบธเบ‡เปเบ•เปˆเบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปเบกเปˆเบ™เบ–เบทเบเบเบฒเบเป„เบงเป‰เปƒเบ™ cache L1D. เปเบฅเบฐ microarchitectural buffers เปเบฅเบฐเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ”เบถเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบžเบงเบเป€เบ‚เบปเบฒเป‚เบ”เบเบ™เปเบฒเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเป‚เบ”เบเบœเปˆเบฒเบ™เบŠเปˆเบญเบ‡เบ—เบฒเบ‡เบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบก.

เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™ "เบŠเปˆเบงเบ", เบšเปเปˆเบ„เบทเบเบฑเบšเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™ "เบ„เบงเบฒเบกเบœเบดเบ”", เปเบกเปˆเบ™เบˆเบฑเบ”เบเบฒเบ™เบžเบฒเบเปƒเบ™เป‚เบ”เบเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบ—เบซเบฒเบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบŠเบญเบšเปเบง. เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบชเบฒเบกเบฒเบ”เป€เบเบตเบ”เบ‚เบถเป‰เบ™เป„เบ”เป‰, เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบกเบทเปˆเบญเบšเบดเบ” A (เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡) เบซเบผเบท D (เป€เบ›เบทเป‰เบญเบ™) เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡. เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบ•เบปเป‰เบ™เบ•เปเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ‚เบญเบ‡เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเป‚เบ”เบเบเบฒเบ™เบซเบกเบนเบ™เปƒเบŠเป‰เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบœเบนเป‰เบ–เบทเบเป€เบ„เบฒเบฐเบฎเป‰เบฒเบ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเปเปˆเบกเบตเบงเบดเบ—เบตเบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰, เปเบ•เปˆเบกเบฑเบ™เบเปเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบžเบปเบšเป€เบซเบฑเบ™เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”. เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบกเบฒเบฎเบญเบ”เบ›เบฐเบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบขเบทเบ™เบขเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš Intel SGX enclaves, เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบทเปˆเบ™เป†เปเบกเปˆเบ™เบ—เบดเบ”เบชเบฐเบ”เบตเบซเบผเบทเบเบฒเบ™เปเบœเปˆเบžเบฑเบ™เปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบชเบฑเบ‡เป€เบ„เบฒเบฐ (เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบก gadgets เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบชเปˆเบฅเบฐเบซเบฑเบ”).

LVI เปเบกเปˆเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU

LVI เปเบกเปˆเบ™เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบเปˆเบฝเบงเบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™ CPU

vectors เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰:

  • เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบฅเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ kernel เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบฅเบฐเบ”เบฑเบšเบœเบนเป‰เปƒเบŠเป‰. เบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™เบ‚เบญเบ‡ Linux kernel เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เป‚เบˆเบกเบ•เบต Spectre 1, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบปเบ™เป„เบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ SMAP (Supervisor Mode Access Prevention), เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡เบเบฒเบ™เป‚เบˆเบกเบ•เบต LVI เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เบเบฒเบ™เป€เบžเบตเปˆเบกเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบชเปˆเปเบเปˆเบ™เบญเบฒเบ”เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบ–เป‰เบฒเบงเบดเบ—เบตเบเบฒเบ™เป‚เบˆเบกเบ•เบต LVI เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบเบงเปˆเบฒเป„เบ”เป‰เบ–เบทเบเบฅเบฐเบšเบธเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”.
  • เบ‚เปเป‰เบกเบนเบ™เบฎเบปเปˆเบงเป„เบซเบผเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบšเบฒเบ‡เบชเปˆเบงเบ™เปƒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปเบฅเบฐเบ„เปเบฒเบ™เบดเบเบฒเบกเบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบ–เบดเป‰เบกเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบ.
  • เบ‚เปเป‰เบกเบนเบ™เบฎเบปเปˆเบงเป„เบซเบผเบˆเบฒเบเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป‚เบฎเบชเป„เบ›เบซเบฒเบฅเบฐเบšเบปเบšเปเบ‚เบ. เบเบฒเบ™เป‚เบˆเบกเบ•เบตเป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบ›เบฐเป€เบžเบ”เป€เบ›เบฑเบ™เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เป€เบเบตเบ™เป„เบ›, เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเปˆเบเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบเบดเบ”เบˆเบฐเบเปเบฒเบ•เปˆเบฒเบ‡เป†เปƒเบ™เบฅเบฐเบšเบปเบš.
  • เบ‚เปเป‰เบกเบนเบ™เบฎเบปเปˆเบงเป„เบซเบผเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเปเบ‚เบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. vector เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปเบกเปˆเบ™เบขเบนเปˆเปƒเบเป‰เบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบฅเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เปเบ•เปˆเบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฑเบ‡เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบซเบกเบนเบ™เปƒเบŠเป‰เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เป€เบžเบทเปˆเบญเบ‚เป‰เบฒเบกเบเบฒเบ™เป‚เบ”เบ”เบ”เปˆเบฝเบงเบฅเบฐเบซเบงเปˆเบฒเบ‡เบฅเบฐเบšเบปเบšเปเบ‚เบ.

เบˆเบฑเบ”เบžเบตเบกเบกเบฒเป‚เบ”เบเบ™เบฑเบเบ„เบปเป‰เบ™เบ„เบงเป‰เบฒ เบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡ เบ•เบปเป‰เบ™เปเบšเบš เบ”เป‰เบงเบโ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เปƒเบซเป‰โ€‹เป€เบซเบฑเบ™โ€‹เบซเบฅเบฑเบโ€‹เบ—เบณโ€‹เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบต, โ€‹เปเบ•เปˆโ€‹เบเบฑเบ‡โ€‹เบšเปเปˆโ€‹เบ—เบฑเบ™โ€‹เป€เปเบฒเบฐโ€‹เบชเบปเบกโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เป‚เบˆเบกโ€‹เบ•เบตโ€‹เบ•เบปเบงโ€‹เบˆเบดเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เปเบฒเบญเบดเบ”เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡เบœเบนเป‰เบ–เบทเบเป€เบ„เบฒเบฐเบฎเป‰เบฒเบ, เบ„เป‰เบฒเบเบ„เบทเบเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบเบฑเบšเบ„เบทเบ™ (R.O.P.,Return-Oriented Programming). เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบœเบนเป‰เบ–เบทเบเป€เบ„เบฒเบฐเบฎเป‰เบฒเบเปเบกเปˆเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบเบฐเบเบฝเบกเบžเบดเป€เบชเบ”เบ—เบตเปˆเบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™ (เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡เบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบกเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบ). เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเบชเบญเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเปเบŠเบเปเบŠเบ‡เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ” AES เบžเบฒเบเปƒเบ™ Intel SGX enclave เปเบฅเบฐเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบ‚เปเป‰เบกเบนเบ™เบฎเบปเปˆเบงเป„เบซเบผเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเป€เบžเบทเปˆเบญเบŸเบทเป‰เบ™เบŸเบนเบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”.


เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™