Melindungi Data yang Digunakan dengan Lingkungan Eksekusi Terpercaya
Seiring dengan semakin banyak organisasi yang mengadopsi multi-cloud, cloud hibrid, dan edge computing, aplikasi mereka melacak, menyimpan, dan menganalisis data pengguna sensitif di berbagai lingkungan. Untuk memastikan kepatuhan dan privasi individu yang menggunakan aplikasi, data perlu dilindungi selama siklus hidupnya.
Kami mengenkripsi filesystem dan drive penyimpanan, dan menggunakan protokol SSH untuk menjaga data saat diam dan data dalam perjalanan tetap aman bahkan jika dicuri, membuatnya tidak berguna tanpa kunci kriptografi. Namun, data yang digunakan biasanya tidak terenkripsi dan rentan terhadap serangan dan eksploitasi.
Untuk menjaga aplikasi dan data tetap terlindungi saat runtime, pengembang semakin beralih ke Trusted Execution Environments, yang sering disebut sebagai “secure enclaves”.
Apa Itu Lingkungan Eksekusi Terpercaya?
Trusted Execution Environments (TEEs) adalah enclave privat terisolasi di dalam memori yang dienkripsi CPU, digunakan untuk melindungi data yang digunakan pada tingkat hardware.
Sementara data sensitif berada di dalam enclave, entitas yang tidak berwenang tidak dapat menghapusnya, memodifikasinya, atau menambahkan lebih banyak data ke dalamnya. Isi enclave tetap tidak terlihat dan tidak dapat diakses oleh pihak eksternal, dilindungi dari ancaman luar dan dalam.
Akibatnya, TEE memastikan hal berikut:
- Integritas data
- Integritas kode
- Kerahasiaan data
Bergantung pada vendor dan teknologi dasar, TEEs dapat mengaktifkan fitur tambahan, seperti:
- Kerahasiaan kode – Perlindungan algoritma yang dianggap sebagai kekayaan intelektual.
- Peluncuran terotentikasi – Penegakan otorisasi atau autentikasi untuk meluncurkan proses yang terverifikasi saja.
- Programabilitas – Akses ke kode pemrograman TEE dari produsen atau sumber aman lainnya.
- Attestation – Pengukuran asal dan keadaan saat ini enclave untuk antifalsifikasi.
- Pemulihan – Kembali ke keadaan aman sebelumnya dalam kasus TEE terkompromi.
Fungsi-fungsi ini memberikan pengembang kontrol penuh atas keamanan aplikasi, melindungi data dan kode sensitif bahkan ketika sistem operasi, BIOS, dan aplikasi itu sendiri terkompromi.
Cara Kerja Secure Enclave?
Untuk memahami cara kerja TEEs, mari kita lihat Intel® Software Guard Extensions (SGX).
Dengan Intel® SGX, data aplikasi dibagi menjadi bagian yang terpercaya dan tidak terpercaya. Bagian terpercaya dari kode digunakan untuk menjalankan aplikasi di dalam enclave yang terlindungi. CPU menolak semua akses lainnya ke enclave, terlepas dari hak istimewa entitas yang memintanya. Setelah diproses, data terpercaya tetap di dalam TEE dan informasi yang diberikan ke aplikasi di luar enclave dienkripsi lagi.
Enclave dibuat dan disediakan melalui perintah hardware yang memungkinkan pembuatan dan penambahan halaman memori, serta inisialisasi, penghapusan, atau pengukuran enclave.

Firmware platform menggunakan pengaturan konfigurasi untuk menyiapkan area untuk TEE. Setelah ekstensi diaktifkan, CPU menyisihkan bagian DRAM sebagai Processor Reserved Memory (PRM). Ukuran PRM dapat ditentukan melalui alat firmware.
Kemudian, CPU mengalokasikan dan mengonfigurasi PRM dengan menetapkan pasang register spesifik model (MSRs). Selanjutnya, Enclave Page Caches (EPC) dibuat di dalam PRM, berisi metadata dengan alamat dasar, ukuran enclave, dan informasi keamanan data.

Terakhir, CPU membuat hash kriptografi dari keadaan awal enclave dan mencatat keadaan lain yang mengikuti. Hash ini kemudian digunakan untuk attestation melalui kunci kriptografi dan akar kepercayaan hardware.
Setelah diinisialisasi, enclave dapat menghost aplikasi pengguna.
Seberapa Aman Trusted Execution Environments?
Untuk menjelaskan sebaiknya seberapa aman TEE, kita pertama-tama perlu membahas lingkaran hak istimewa CPU.

Kunci enkripsi tradisional disimpan dalam aplikasi, pada tingkat ring 3. Model ini membahayakan rahasia yang dilindungi dalam aplikasi setelah aplikasi tersebut terkompromi.
Dengan arsitektur modern, lingkaran hak istimewa melampaui kernel dan hypervisor, memperluas ke System Management Mode (SMM) dan Management Engine (ME). Ini memungkinkan CPU untuk mengamankan memori yang digunakan TEE, mengurangi permukaan serangan ke lapisan hardware terendah dan menolak akses ke semua kecuali tingkat hak istimewa tertinggi.
Kunci lain dari fungsionalitas dan keamanan TEE adalah attestation. Melalui attestation, seluruh platform dan enclave diukur dan divalidasi sebelum data apa pun dibagikan.
Misalnya, enclave dapat meminta laporan lokal dari dirinya sendiri atau enclave lain di platform yang sama dan menggunakan laporan untuk pemeriksaan dan verifikasi data. Demikian pula, verifier jarak jauh dapat meminta laporan attestation sebelum meminta data sensitif apa pun dari enclave. Setelah kepercayaan terbentuk, mereka dapat berbagi kunci sesi dan data melalui saluran aman yang tidak terlihat oleh pihak eksternal.

Karena rahasia yang tidak terenkripsi tidak pernah keluar dari TEE, secure enclave melindungi data dari:
- Aplikasi lain di host
- OS host atau hypervisor
- Administrator sistem
- Penyedia layanan
Bahkan pemilik infrastruktur dan entitas lain dengan akses fisik ke hardware tidak dapat mencapai data.
Secure Enclaves dalam Confidential Computing
Untuk mengaktifkan pemrosesan yang aman dan terstandar dari beban kerja pribadi di berbagai lingkungan cloud, Linux Foundation membentuk komunitas bernama Confidential Computing Consortium (CCC) pada tahun 2019. Seiri didirikannya, anggota CCC telah bekerja untuk mempercepat adopsi komputasi cloud dan mengaktifkan kolaborasi terbuka.
Berkat tingkat perlindungan data yang tinggi yang ditawarkannya, secure enclave berbasis hardware berada di inti inisiatif ini.
Melalui komputasi konfidensial yang didukung oleh TEEs, organisasi dapat menjaga segala sesuatu dari satu kunci kriptografi hingga beban kerja penuh terlindungi saat aplikasi mereka digunakan.
Mengapa Anda Harus Mengadopsi Confidential Computing?
Saat ini, rahasia melampaui sandi, mencakup informasi yang sangat rahasia dan tidak dapat diganti seperti catatan medis atau data biometrik.
Komputasi konfidensial menawarkan bisnis keunggulan kompetitif dengan melindungi data ini dan mencegah kerugian finansial atau kerusakan reputasi. Namun, ada kasus penggunaan lain untuk teknologi yang sedang berkembang ini.
Multi-Party Computation
Komputasi konfidensial memungkinkan organisasi untuk memproses data dari banyak sumber tanpa mengekspos kode dasar, kekayaan intelektual, atau informasi klien pribadi kepada pihak yang mereka bekerjasama. Bersaing atau tidak, organisasi pemerintah, perawatan kesehatan, atau institusi penelitian dapat memanfaatkan fitur ini untuk berkolaborasi dan berbagi wawasan untuk tujuan federated learning.

Keuangan dan Asuransi
Memanfaatkan komputasi konfidensial, lembaga keuangan mencegah aktivitas penipuan seperti pencucian uang. Sebuah bank dapat membagikan rekap rekening yang mencurigakan ke bank lain di dalam atau di luar jaringannya untuk diperiksa dan meminimalkan kemungkinan false positive.
Perusahaan asuransi dapat menggunakan pendekatan yang sama untuk mencegah penipuan. Mereka dapat membagikan klaim yang mencurigakan satu sama lain untuk pengenalan pola. Dengan data sensitif disimpan di enclave dan catatan data dibagikan di antara berbagai sumber, hasil dapat diperoleh tanpa informasi rahasia apa pun yang terungkap dalam prosesnya.
Kesimpulan
Alat enterprise untuk meningkatkan keamanan terus dikembangkan seiring komputasi konfidensial berevolusi. Ini merangsang adopsi, pertumbuhan, dan keamanan komputasi cloud, membuka potensi penuhnya.
Dengan menawarkan perlindungan data dan kode sensitif yang tidak pernah ada sebelumnya selama eksekusi, Trusted Execution Environments memungkinkan organisasi untuk memperkuat postur keamanan mereka dan memanfaatkan teknologi siap masa depan hari ini.