M365Con 2027 – konferensi online gratis · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Cara Memverifikasi Attestation Perangkat Keras di Azure Confidential Computing

By ·

Pelajari cara kerja attestation perangkat keras Azure, bandingkan AMD SEV-SNP dan Intel SGX, serta temukan cara mengintegrasikan verifikasi kriptografis ke dalam pipeline CI/CD Anda.

Automatically translated with AI from the original post. Read the English original

Cover: Azure Confidential Computing - Simply Explained

Attestation perangkat keras Azure adalah proses verifikasi kriptografis yang krusial untuk membuktikan bahwa Trusted Execution Environment Anda asli dan tidak diubah sebelum beban kerja sensitif dimuat. Dengan mengevaluasi pengukuran secure boot dan kunci perangkat keras terhadap baseline Microsoft dan vendor, attestation menjembatani celah kepercayaan antara operator cloud dan privasi data penyewa.

Poin Penting

Defisit Kepercayaan di Public Cloud

Saat memindahkan beban kerja sensitif ke public cloud, model keamanan tradisional melindungi data Anda saat transit menggunakan TLS dan saat disimpan menggunakan enkripsi AES-256. Namun, satu celah yang signifikan tetap ada: data saat digunakan. Secara historis, setiap kali prosesor menjalankan kode, data tersebut harus didekripsi dan ditampilkan dalam teks biasa di memori sistem. Dalam lingkungan cloud multi-penyewa, hal ini berarti harus mempercayai hypervisor, penyedia infrastruktur cloud, dan siapa pun yang memiliki akses administratif ke perangkat keras fisik yang mendasarinya.

Azure Confidential Computing mengubah paradigma ini dengan memperkenalkan Trusted Execution Environment (TEE) berbasis perangkat keras. Enclave aman dan mesin virtual terisolasi ini mengenkripsi isi memori menggunakan kunci perangkat keras khusus yang dikelola langsung oleh silikon CPU. Namun, memiliki ruangan yang terkunci hanyalah separuh dari solusi. Anda juga memerlukan cara untuk memastikan bahwa kunci tersebut tidak dibobol, bahwa pintunya dibangun dengan benar, dan bahwa tidak ada perangkat lunak tidak sah yang berjalan di dalam batas aman sebelum Anda menyerahkan kunci kriptografis Anda.

Cara Kerja Remote Attestation

Remote attestation adalah mekanisme verifikasi yang menjawab pertanyaan mendasar: Bagaimana Anda tahu bahwa lingkungan cloud tempat Anda melakukan deployment benar-benar aman dan tidak diubah? Tanpa attestation, penyerang dengan akses tingkat hypervisor secara teoretis dapat mengganti BIOS berbahaya atau memodifikasi bootloader, lalu mencegat kunci enkripsi Anda begitu kunci tersebut dimuat ke dalam memori.

Alur kerja attestation berjalan sebagai handshake kriptografis multi-langkah yang ketat:

Langkah 1: Secure Boot dan Pengukuran Platform

Saat mesin virtual atau instans kontainer Azure yang dikonfidensialkan melakukan boot, perangkat keras dan firmware merekam pengukuran kriptografis dari setiap komponen yang terlibat dalam proses boot. Ini mencakup bootloader, image kernel, dan initial ramdisk. Pengukuran tersebut disimpan dengan aman di register perangkat keras di dalam CPU, dan sistem operasi host maupun hypervisor tidak dapat mengubahnya.

Langkah 2: Membuat Laporan Kriptografis

Setelah workload diinisialisasi di dalam TEE, workload tersebut meminta laporan yang ditandatangani perangkat keras dari CPU. Prosesor menandatangani laporan pengukuran ini menggunakan private key yang tidak dapat diubah dan sudah tertanam di silikon saat proses manufaktur. Laporan ini berfungsi sebagai paspor digital yang tidak dapat dipalsukan, yang merepresentasikan kondisi persis dari software stack yang berjalan di dalam lingkungan terisolasi tersebut.

Langkah 3: Evaluasi oleh Azure Attestation Service

Laporan perangkat keras yang sudah ditandatangani dikirim ke layanan Microsoft Azure Attestation (MAA) atau verifier pihak ketiga yang kompatibel. Attestation service membandingkan pengukuran yang masuk dengan baseline kebijakan yang sudah terbukti aman dan ditetapkan oleh penyewa. Jika kode yang berjalan di enclave sesuai dengan kebijakan yang diotorisasi, layanan tersebut menghasilkan attestation token.

Langkah 4: Melepaskan Secret

Dengan attestation token yang valid, aplikasi Anda dapat dengan aman meminta kredensial database, sertifikat TLS, atau kunci enkripsi data dari Key Vault Managed HSM. Key Vault memverifikasi token tersebut dan hanya melepaskan secret ke TEE yang sudah terverifikasi, sehingga tidak ada lingkungan yang tidak berwenang yang dapat mengakses data plaintext Anda.

Perbedaan Arsitektur: AMD SEV-SNP vs. Intel SGX

Menerapkan attestation memerlukan pemahaman tentang arsitektur perangkat keras yang menjalankan node Azure Confidential Computing Anda. Microsoft Azure mendukung dua teknologi perangkat keras utama, dan masing-masing menangani isolasi serta attestation dengan cara yang sedikit berbeda.

Intel Software Guard Extensions (SGX) berfokus pada isolasi tingkat proses. Alih-alih melindungi seluruh mesin virtual, SGX memungkinkan developer mengisolasi kode dan struktur data tertentu ke dalam enclave yang sangat granular. Attestation pada SGX sangat bergantung pada quoting enclave yang mengemas kondisi perangkat keras menjadi quote yang dapat diverifikasi, lalu divalidasi terhadap infrastruktur Enhanced Privacy ID (EPID) atau Data Center Attestation Primitives (DCAP) milik Intel yang lebih modern.

Di sisi lain, AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP) melindungi seluruh mesin virtual. SEV-SNP menjaga integritas memori dengan memanfaatkan enkripsi memori berbasis perangkat keras dan mencegah hypervisor yang berbahaya memetakan ulang guest physical address. Attestation report yang dihasilkan oleh VM AMD SEV-SNP mencakup konfigurasi kebijakan guest dan launch measurement, sehingga lebih mudah memindahkan aplikasi kontainer yang sudah ada (lift-and-shift) tanpa menulis ulang kode untuk API khusus enclave.

Menerapkan Attestation dalam Pipeline CI/CD

Bagi cloud architect dan DevOps engineer, memverifikasi attestation report secara manual tidak scalable maupun praktis. Untuk membangun infrastruktur cloud yang tangguh, attestation harus terintegrasi secara mendalam ke dalam pipeline deployment otomatis Anda.

Deployment kontainer modern yang berjalan di Azure Kubernetes Service (AKS) dengan confidential node dapat menggunakan sidecar container atau device plugin untuk mengelola proses handshake attestation secara otomatis. Ketika confidential pod dimulai, attestation client mengambil hardware report, mengirimkannya ke layanan Azure Attestation, dan menyimpan token yang dihasilkan di cache. Hanya setelah token terverifikasi, kontainer aplikasi akan me-mount secure volume-nya dan mulai memproses permintaan.

Dengan menanamkan pemeriksaan attestation ke dalam release gate, Anda memastikan bahwa setiap perubahan kode yang tidak berwenang, baik yang tidak disengaja maupun yang berbahaya, akan langsung membatalkan pengukuran perangkat keras. Hal ini menghentikan proses pelepasan kunci dan mencegah workload yang disusupi untuk berjalan di lingkungan produksi.

Kesimpulan: Mengamankan Data yang Sedang Digunakan Hari Ini

Azure Confidential Computing menyediakan fondasi teknis yang diperlukan untuk melindungi beban kerja cloud yang sensitif dari ancaman infrastruktur modern, tetapi isolasi perangkat keras saja belum lengkap tanpa verifikasi yang ketat. Dengan menguasai remote attestation, arsitek cloud dapat membangun kepercayaan yang dapat diverifikasi antara kode penyewa dan perangkat keras bare-metal, sehingga data yang sedang digunakan tetap seaman data yang disimpan dan data yang sedang ditransmisikan. Untuk mendengarkan uraian lengkap tentang konsep keamanan cloud ini dan menjelajahi lanskap Microsoft 365 dan Azure yang lebih luas, dengarkan episode lengkapnya di M365 FM Podcast.

Pertanyaan Umum

Apa tujuan utama Azure Attestation?

Azure Attestation adalah layanan cloud terpadu yang memverifikasi secara kriptografis keandalan Trusted Execution Environment dan memvalidasi integritas perangkat lunak yang berjalan di dalamnya sebelum rahasia atau kunci enkripsi dilepaskan.

Dapatkah administrator cloud melewati hardware attestation?

Tidak. Hardware attestation mengandalkan kunci kriptografis yang tertanam langsung di silikon CPU oleh produsen perangkat keras. Karena kunci ini tidak dapat diakses oleh hypervisor maupun operator cloud, administrator tidak dapat memalsukan laporan attestation yang valid untuk lingkungan yang telah disusupi.

Apa perbedaan antara attestation tingkat VM dan tingkat proses?

Attestation tingkat VM (seperti AMD SEV-SNP) mengukur dan memvalidasi seluruh sistem operasi mesin virtual beserta beban kerjanya. Attestation tingkat proses (seperti Intel SGX) mengisolasi dan mengattest rutin kode atau enclave tertentu di dalam lingkungan sistem operasi standar.

Bagaimana token attestation terintegrasi dengan Azure Key Vault?

Setelah beban kerja confidential berhasil menyelesaikan handshake attestation, beban kerja tersebut menerima token yang ditandatangani. Token ini dapat ditunjukkan ke Azure Key Vault Managed HSM untuk membuktikan integritas lingkungan, sehingga memicu pelepasan otomatis kunci enkripsi dan kredensial database.

Microsoft

Related articles

RSS