αααα»αα’αααααααΆαααααΆαααααΈααΆαααα·ααααΆααααα·ααααΆααΆααααα αα·ααα αα αααα·ααααΆααΆαααΆαααΆαα·αααααααααααααααααααΆαα ααΆαααα·ααααΆαααααΆαα·αα·ααα αα»ααΈ αα·α ETH Zurich ααΆααααααΎααα·ααΈααΆαααααααααΈαααα»αααΆαααΆααααα αΆαααΎαααααΆααααααΆα αααα Intel SGX (Software Guard eXtensions) α ααΆαααΆααααα αΆαααααΌαααΆαααα α ααΆ SmashEx α αΎαααααΌαααΆαααααα‘αΎαααααααα αΆααΆαα½αααΉαααΆαα αΌαα‘αΎααα·ααα ααααααααααΆαααααΆαααΆαααααΈααΎααααααα‘α»ααααααααα·ααααα·ααΆααααααΆαααΆαα»ααααΎαααΆααααααΆαα Intel SGX α αα·ααΈααΆαααααααΆααααα αΆααααααΆαααααΎα‘αΎα ααααΎα±ααααΆα’αΆα αα αα½α ααααα·αααΎα’αααααΆαααΆααααααααααααΎααααααααααααα·ααααα·ααΆα ααΎααααΈααααααα·αααααααααααΆαααααααΆαααΈααΆαααα αααα»ααααααα α¬αααα αααΆαα ααααααΌαααααα’ααααα αααα»αα’αααα αα αΆααααα enclave αα·αααΆαααααα·ααααα·ααααααΆα
ααααΌααααΆαααααααααααα ααααΌαααΆααααα ααααααΆαα enclaves ααΆαα½αααΉααααααααΆααααΎαααΆααααααα’ααααΎ Intel SGX SDK (CVE-2021-0186) αα·α Microsoft Open Enclave (CVE-2021-33767) α αααα»αααααΈααααΌα αααααααΆααααα»αααΆαααΆααααα RSA αααααααΎαα ααΎαααΆαααΈαααααα ααααααααααΆαα HTTPS ααααΌαααΆααααα αΆα α αΎααα αααα»αααΈααΈα ααΆα’αΆα αααααααΆαα·ααΆαααααα½αααΆααααα§αααααααααΎααααΆαα cURL αααααααΎαααΆααα ααΆααααα»αααααααα ααΆαααΆααααααααααααΌαααΆααααααααΆαααΆααααααα·ααΈαα½α α αΎααα αααα»αααΆαα ααααααΆα Intel SGX SDK 2.13 αα·α Open Enclave 0.17.1 α ααααααααΈααΎ Intel SGX SDK αα·α Microsoft Open Enclave ααΆαααΆααααααααααααα α‘αΎααα αααα»α Google Asylo SDK, EdgelessRT, Apache Teaclave, Rust SGX SDK, SGX-LKL, CoSMIX αα·α Veracruz αααααα
α αΌαααΎαα αΆαααΆαα αα αααα·ααααΆ SGX (Software Guard Extensions) ααΆααααα αΆααααα½ααα αααα»α Intel Core processors (Skylake) ααααΆααααΈααααΆααα½α α αΎααααααααΌαααΆαααααΆαααΆαααααααααΆαααααα’αα»ααααΆαα±αααααααα·ααΈααααα·αα’αααααααΎααααΆαααααα αααααααα’αααα αα αΆααα·ααα·α - enclaves ααΆαα·ααΆααααα·αα’αΆα α’αΆαααΆα αα·α ααΆαααααααααΌααααΈαααααααΊααα αα·αααΌααααααΆαααααα·ααααα·αααα»ααααα ring0, SMM αα·α VMM α ααΆαα·αα’αΆα αα αα½α αααααα»αααΆααααααααΆαααααααααααα αααααΌααα αααα»ααααααααααααααΎαα»αααΆααααααααααααααΈ αα·αα§ααΆαααααΆαα½αααΆαα α»αααααα αα·αααα - ααΆαααααΆαααααΈαααααΆααααααΎαααΆαα·ααα EENTER, EEXIT αα·α ERESUME ααααΌαααΆαααααΎααΎααααΈαααααααΆαααααααααααα ααα·ααααΆααααααααΎααΆααααα½ααα·αα·αααα’αΆααααΆααα αααα»αααααΈααα αααααΌααααααΆαααααα»αααααααα’αΆα ααααΎαα·ααΈα α ααΌααααααα»ααΆα ααΎααααΈα αΌαααααΎαα»αααΆαααΆααααα»ααααααα αα·αααΆαααααΆααα·αααααΎααααΈα α αα»αααΆαααΆααααα α ααΆαα’αα·αααααΈαα’αααα αα αΆα Enclave ααααΌαααΆαααααΎααΎααααΈααΆαααΆααααααΆααααΉαααΆαααΆααααα αΆααααααααΉα ααΌα ααΆααΆαααααΆαααα αααΌαα»α DRAM ααΆααΎαα
αααα αΆααΊααΆαα αα αααα·ααααΆ SGX α’αα»ααααΆαα±ααααααααααααααα·ααααα·ααΆαααααΌαααΌααα½αααααααα ααααΆαααΎαααααααααααΉα α αΎααααα»αα αα»αααααααα·αα’αα»ααααα±ααααΆαααααΉαααααΌαααΌααα»αααααΆααααααΆαααααααααΆαααΆαααΎαααααααααααααα’αΆααΌαα αα·αααΌα ααΊαααααααααααααααααααα·ααααα·ααΆα αα·ααααααα·ααΈααααααΆαα ααΌααα ααΆααααα»αααα·ααααΆααα·αααΆααα·αααα·α αΌαααααΎααααααααΆαααααα ααααααααΆαα’αΆααΌαα·α αα αα ααααααααααΆαααΆαααΎααααααααα·αααααΆαααααα ααΎααααΆααα»αααα ααα»α’αΆααΌαα·ααααααΆααααααΆαααα α§αααααααααα’αΆα ααααΌαααΆαααααΆααααααααα α αΎααααα‘αααα ααΆαααααα·ααααα·αα·α ααΌααααΈαααα ααααααααα αααααα enclave αααα»αααααΎαααΆααααααααααΆααα αα·ααααα·ααααα»αααααΆαααΆααα·αααΆααα»ααααα·ααΆα (α§ααΆα ααα αα ααααααααΆαα α»αααααα CPU αα·αααααΌαααΆααααααΆαα»α/ααααΆαα‘αΎααα·α)α
αααααΆααααααα·ααααα·ααΆαααααααΆ αα αα αααα·ααααΆ SGX α’αα»ααααΆαα±ααααΆαααααα·ααααα·ααα§αααααααααααααΌαααΆαααααΆααααααΆαααΎαααααααααααΉααααα’αΆα ααααααα ααΆααααααααααΆαα αααααααα·ααααααα’αα»ααααΆαα±ααααα·ααααΆααααααααΎαααΆα enclave ααΎααααΈα’αα»ααααααΆααααααααΆαααααΈααΎαααααααα»ααααααα α¬ααααΎαααΆααααααΆ ααα»ααααααΆααα’αΆα αααααΆαα±ααααΆαααα α»αα‘αΎααα·ααααααα ααΆαααΆααααα αΆα SmashEx ααΊααα’ααααΎααΆαααααααααααα αα»ααα·ααααα·αα αααα»α SDK αααααΆαααααααΆαααΆαααααΆαα α ααΌαααααααα α’ααααααααααΆαααααΈααΎααααα‘αΎααα·ααα·αααααΌαααΆααααααααΆαα±ααααΆαααααΉαααααΌαα ααΆααΆαααΆααααααΆαααααααΆ ααΎααααΈααΆαααααΆαααΆαααααααα α’αααααΆααααα αΆαααααΌαααα’αΆα ααααΆααααααΆαααααα·ααααα·αα enclave αααααΊα§α ααααΌααααααααααααααααα·ααααα·ααΆαααααα·ααααΆαααααααααα
αααααΆααααΈααααααααΆαααΎαααα α’αααααΆααααα αΆαααα½αααΆααα·αααΌαααααααΆααΌα αα½α αααα»αα’αα‘α»ααααααααααααααα‘αΆαααααα·ααααα·α’αΆα ααααΌαααΆαααααΆααα αΆααααΆααααααΆααααα ααααΆαααΆαααααααααα αΌαα ααΆαα·ααα ααααα·αααΎα’αααααΆααα·αααα·α αΌαααααΎαααααααα (ααα·ααααΆαααΆααααα ααα·ααααΆα) α’αααα’αΆα αααααΎαααααΈααΎααααααααΈααααΆαααααααΆααααΈααααα·ααααα·ααΆαααααΆαα’αααΈααΆαα»α αΌα (EENTER) αααααΉααααα‘ααααΆαααααααααααα αααααααααα·ααα ααααΆααααΆααα½ααα ααααααααΆαααα‘αΎαααααααααΆαα enclave αα·αβααΆααβααΆαβαααα ααβαα βα‘αΎαβαα αααβαααα»αβαααβααααΆαααΆαβααβααΆαβα α»αβααααα CPU ααβααααΌαβααΆαβαααααΆβαα»αβααβαααα
αααααΆααααααααααααα’αΆα αααα‘ααααΆαααααααααααααα‘αααα enclave αα·α ααα»αααααααααΆα stack αααα enclave αα·αααααΌαααΆαααααααα ααΆαααααααααα ααα interrupt ααα enclave ααΉαααααα·ααααα·ααΆαα½α stack ααααα αααα»α memory system αααα’αΆα ααααΌαααΆαααααΎααΎααααΈααααΎααααΆαααααααα·ααΈ back-oriented programming (ROP ) αα αα αααααααααααααααα α αααααα·ααΈαααααααα·α)α αα αααααααΎαα αα ααααα ROP α’αααααΆααααα αΆααα·αααααΆααΆαααΆααααΌαααααααΆαααααα»αα’αααα αα αΆααα ααα»ααααααααΎαααΆαααΎαααααααααΆαααααΆααααααααΆαααΈααααααΆααα½α α αΎααα αααα»ααααααΆααααααααΆααααα»α ααααααα αααααααΆαααααΆααααα‘ααααΆαααααααααα (ααΆαααα½α ααΆαααααααΊααΆαα»αααΆααααααΆααααααα αα) . ααΆαααΆαααααΆαααααααααααα ααααΎααΆααααΆααααααααααΆααααααΆαα α αα ααΆαααααα»αααααααααααΆ ("α§ααααα") ααΎααααΈααα½αααΆααα»αααΆααααα ααααΆαα
ααααα: opennet.ru