ืืืงืจืื ืืืื ืืืจืกืืืช ืืืื ื ืืืืข ืืืื ืืืืืื ืฉื ืฆืื ืืฉืืจืืจ ืืขืืื ืฉื ืกืื, ืืืื ืืืจืกืืื ืืืืืืืช ืฉื ืกืื ืืคืืจ ื-ETH ืฆืืจืื ืคืืชืื ืฉืืืช ืืชืงืคื ืืืฉื ื ืื ืืืืืขืืช ืืืืืืืช ืฉื Intel SGX (Software Guard eXtensions). ืืืชืงืคื ื ืงืจืื SmashEx ืื ืืจืื ืืืขืืืช ืื ืืกื ืืืืจืืช ืืืืคืื ืืืจืืืื ืืืืื ืคืขืืืช ืจืืืื ืืื ืจืืฆื ืขืืืจ Intel SGX. ืฉืืืช ืืชืงืืคื ืืืืฆืขืช ืืืคืฉืจืช, ืื ืืฉ ืฉืืืื ืขื ืืขืจืืช ืืืคืขืื, ืืงืืืข ื ืชืื ืื ืกืืืืื ืื ืืฆืืื ืืืืืืขืช, ืื ืืืจืื ืืขืชืงื ืฉื ืืงืื ืืืืืจืื ืืืืืืขืช ืืืืฆืืขื.
ืืืืช ืืืคืืก ืฉื ื ืืฆืื ืืืื ื ืขืืืจ ืืืืืขืืช ืืื ืจืืฆื ืืืืืกืกืืช ืขื 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 (Skylake) ืืืฆืืขื ืกืืจืช ืืืจืืืช ืืืืคืฉืจืืช ืืืคืืืงืฆืืืช ืืจืืช ืืืฉืชืืฉ ืืืงืฆืืช ืืืืจื ืืืืจืื ืกืืืจืื - ืืืืืขืืช ืฉืื ื ืืชื ืืงืจืื ืืืฉื ืืช ืืช ืชืืื ื ืืคืืื ืขื ืืื ืืืื ืืงืื ืืืืฆืขืื ืขื ืืื ืืืฆืื ring0, SMM ื-VMM. ืื ืืคืฉืจ ืืืขืืืจ ืฉืืืื ืืงืื ืืืืืืขืช ืืืืฆืขืืช ืคืื ืงืฆืืืช ืงืคืืฆื ืืกืืจืชืืืช ืืื ืืคืืืฆืืืช ืขื ืจืืืกืืจืื ืืืืืกื ืืช - ืืืจืืืช ืืืฉืืช ืฉื ืืฆืจื ืืืืืื EENTER, EEXIT ื-ERESUME ืืฉืืฉืืช ืืืขืืจืช ืฉืืืื ืืืืืืขืช, ืืืืฆืขืืช ืืืืงืืช ืืจืฉืืืช. ืืืงืจื ืื, ืืงืื ืืืืฆื ืืืืืืขืช ืืืื ืืืฉืชืืฉ ืืฉืืืืช ืืงืจืืื ืืงืืืกืืืช ืืื ืืงืจืื ืืคืื ืงืฆืืืช ืืชืื ืืืืืืขืช ืืืืจืื ืืืืืืช ืืืชืงืฉืจ ืืคืื ืงืฆืืืช ืืืฆืื ืืืช. ืืฆืคื ืช ืืืืจืื ืืืืืขืช ืืฉืืฉืช ืืืื ื ืืคื ื ืืชืงืคืืช ืืืืจื ืืืื ืืืืืจ DRAM.
ืืืขืื ืืื ืฉืืื ืืืืืืืช SGX ืืืคืฉืจืช ืืืขืจืืช ืืืคืขืื ืืืคืจืืข ืืืืฆืืข ืืืืืืขืช ืขื ืืื ืืจืืงืช ืืจืื ืืืืจื, ืืืืืืขืืช ืืื ื ืืืืฉืืืช ืคืจืืืืืืืื ืืจืืื ืืืืคืื ืืืืื ืืืจืืืื ืืืื. ืฉืื ืืื ืืืืื ืฉื ืืขืจืืช ืืืคืขืื ืืืืฉืืืื ืจืืืืื, ืืงืื ืืชืื ืืืืืืขืืช ืืื ืืืฉื ืืคืจืืืืืืืื ืืืจืืื ืคืขืืืืช ืืืืืืืช ืืืืื ืืืืคืื ืืืจืืืื ืฉืืืขืื ืืืืคื ืืกืื ืืจืื ื. ืืื ืืคืจืืืืืืืื ืืืืืืืื ืฉืฆืืื ื, ื ืืชื ืืืคืกืืง ืืช ืืืืืืขืช ืืืืืืืจ ืืืชื ืืืืฆืืข ืืื ืขืช, ืื ืืืื ืื ืฉืืื ืงืืขืื ืงืจืืืืื ืืืืฆืขืื ืืืืืืขืช ืืืื ืืืฆื ืื ืืืื (ืืืืืื, ืืืฉืจ ืืืืจื CPU ืืื ื ื ืฉืืจืื/ืฉืืืืจื) .
ืขืืืจ ืคืขืืื ืจืืืื, ืืื ืืืืืืืช SGX ืืืคืฉืจืช ืื ืืืคืจืืข ืืืืฆืืข ืืืืืืขืช ืขื ืืจืืืื ืืืืืจื. ืชืืื ื ืื ืืืคืฉืจืช ืืืื ื ืจืืฆื ืืืืืขืช ืืืืฉื ืืืคืื ืืจืืืื ืชืื-ืืืืืขืช ืื ืืืคืื ืืืืชืืช, ืื ืืื ืืืืื ืื ืืืฆืื ืฉืืืืืช ืื ืืกื ืืืืจืช. ืืชืงืคืช SmashEx ืืืืกืกืช ืขื ื ืืฆืื ืคืืืื ื-SDK ืฉืืืืื ืืฆื ืืงืจืืื ืืืืฉ ืฉื ืืืืคื ืืืจืืืื ืืื ื ืืืืคื ืืจืืื. ืืฉืื ืฉืืื ืื ืฆื ืืช ืืคืืืขืืช, ืขื ืืชืืงืฃ ืืืืืช ืืกืืื ืืืคืจืืข ืืืืฆืืข ืืืืืืขืช, ืืืืืจ. ืืืื ืืฉืืื ืขื ืคืขืืืช ืกืืืืช ืืืขืจืืช.
ืืืืจ ืืจืืงืช ืืจืืื, ืืชืืงืฃ ืืงืื ืืืื ืืื ืงืื ืฉืืืืืื ื ืืชื ืืืืจื ืืช ืืจืืืช ืืืืฆืืข ืืืืฆืขืืช ืื ืืคืืืฆืื ืฉื ืคืจืืืจื ืืงืื. ืืคืจื, ืื ืืฉ ืื ืืืฉื ืืืขืจืืช (ืกืืืื ืืืืฅ ืืืืืืขืช), ืชืืื ืืืฆืืจ ืืจืืื ืืืฉื ืืื ืืืืจ ืืืฆืืข ืืืืจืื ืืืืื ืก ืืืืืืขืช (EENTER), ืฉืชืืืืจ ืืช ืืฉืืืื ืืืขืจืืช ืืฉืื ืฉืื ืชืฆืืจืช ืืืืกื ืืช ืขืืืจ ืืืืืืขืช ืืจื ืืืฉืืื, ืฉืื ืืกืคืจ ืื ืืืืกื ืืช ืืฆื ืืืืจื ื-CPU.
ืืืืจ ืืื ืืืขืจืืช ืืืืื ืืืืืืจ ืืช ืืฉืืืื ืืืืจื ืืืืืืขืช, ืื ืืืืืื ืฉืืืืกื ืืช ืื ืืืืืจื ืืืื ืืืคืจืขื, ืืืืืืขืช ืชืชืืฆืข ืืฉืืืืกื ืืช ื ืืฆืืช ืืืืืจืื ืืืขืจืืช, ืืฉืจ ื ืืชื ืืืฉืชืืฉ ืื ืืื ืืืืื ืชืื ืืช ืืื ืื ืืืจื (ROP ) ืืื ืืงืืช. ืชืื ืืช ืืืืื). ืืขืช ืฉืืืืฉ ืืืื ืืงืช ROP, ืืชืืงืฃ ืืื ื ืื ืกื ืืืงื ืืช ืืงืื ืฉืื ืืืืืจืื, ืืื ืคืืขื ืขื ืคืืกืืช ืืืจืืืช ืืืืื ื ืฉืืืจ ืืืื ืืช ืืกืคืจืืืช ืืืขืื ืืช, ืืืกืชืืืืืช ืืืืจืื ืืืืืจืช ืืงืจื (ืืืื, ืืื ืื ืืกืืืืื ืฉื ืืกืคืจืืื ืคืื ืงืฆืืืช). ืคืขืืืช ืื ืืฆืื ืืกืชืืืช ืืื ืืืช ืฉืจืฉืจืช ืงืจืืืืช ืืืืืงืื ืืืืื ("ืืืื'ืืื") ืืื ืืืฉืื ืืช ืืคืื ืงืฆืืื ืืืืช ืืจืฆืืื.
ืืงืืจ: OpenNet.ru