BitLocker TPM

Menganalisa Harddisk yang terenkripsi BITLOCKER bisa menjadi tantangan tersendiri. Terutama untuk enkripsi dengan hardware khusus. Yang pada artikel ini akan kita bahas mengenai TPM (Trusted Platform Module).

Trusted Platform Module (TPM) adalah standar untuk kripto prosesor yang aman. Mikro kontroler khusus yang dirancang untuk mengamankan perangkat keras melalui kunci kriptografi terintegrasi. Secara Fisik TPM berbentuk CHIP BUILT-IN atau module tambahan yang terpasang ke dalam slot pada motherboard desktop, atau sebagai emulator virtual (teknologi Intel PTT).

Platform ini terdiri dari kripto prosesor yang aman dan sejumlah kecil memori internal. Fungsi utama TPM adalah menghasilkan, menyimpan, dan mengelola kunci kriptografi dengan aman, khususnya kunci BitLocker. Sistem operasi harus menyediakan API bagi pengembang untuk mengakses TPM dan menggunakan TPM untuk mengelola kunci enkripsi.

articel

Pada saat ini Microsoft merancang sistem enkripsi Disk. Ada beberapa ancaman dari sisi keamanan data yang menjadi focus mereka. Ancaman itu adalah sebagai berikut ini :

  • Masuk ke akun pengguna tanpa otentikasi yang valid
  • Memindahkan hard drive ke sistem yang berbeda untuk dianalisis
  • Mengubah konfigurasi komputer untuk mendapatkan akses ke data
  • Menjalankan OS alternatif untuk mendapatkan akses ke data

Prioritas utama mereka ada pada data security dimana hanya user pengguna (pemilik saja) yang berhak untuk mengakses data mereka. Selaini itu semua aktifitas akan dianggap sebagai ancaman. Tujuan ini tercapai dengan menggunakan module TPM. Selain itu jika user mengginginkan perlindungan ekstra terhadap ancaman tambahan, maka bisa diaktifkan kode PIN pra-boo atau menambahkan jenis lainnya seperti smart card atau USB Drive.

Cara kerja BiLocker
BitLocker menggunakan enkripsi simetris. Secara default, AES-128 digunakan untuk mengenkripsi data dalam mode XTS atau CBC. Data dienkripsi dengan VMK (Volume Master Key) yang selanjutnya dapat diperoleh dengan salah satu cara berikut:

  1. Dekripsi dari password user jika protector volume diaktifkan.
  2. Dekripsi dari recovery key. Recovery key ini akan didapatkan secara otomatis pada saat volume enkripsi bitlocker diaktifkan untuk pertama kalinya dan disimpan dalam file text
  3. Diekstrak dari Module TPM yang terintegrasi pada sistim anda.

Prinsip dasar TPM sangat mirip dengan blockchain. Selama boot, sistem membangun rantai kepercayaan, yang disimpan dalam register PCR (Platform Configuration Register).

Inilah yang terjadi ketika komputer melakukan boot:

  1. Pada saat pertama sekali sistim dinyalakan. SRTM (Static root of trust for measures) adalah modul pertama yang dimuat. Modul ini disimpan dalam ROM komputer, dan tidak dapat diubah. Kerentanan dalam modul ini merusak seluruh skema proteksi, yang ditunjukkan dengan jelas oleh pengembang eksploitasi checkm8 pada perangkat iOS. SRTM memasukkan catatan pertama ke dalam rantai kepercayaan dengan menghitung nilai hash dari BIOS komputer. Hash ini disimpan dalam register PCR.
  2. UEFI BIOS dimuat. BIOS menganalisis konfigurasi komputer termasuk partisi hard drive, MBR (Master Boot Record), bootloader dan banyak parameter lainnya termasuk firmware checksum pada komponen tertentu (misalnya finger print reader atau smart card reader). Nilai register PCR sebelumnya akan digunakan untuk menghitung nilai hash baru, yang berarti bahwa setiap modifikasi register PCR akan memutus seluruh rantai.
  3. Setelah mengisi beberapa register PCR, BIOS memuat bootloader dari MBR. Bootloader memasukkan beberapa catatan lagi.
  4. Akhirnya, kernel OS dimulai. Kernel terus menambah rantai kepercayaan.

Seperti yang Anda lihat, setelah OS akhirnya berhasil dimuat, register PCR berisi seluruh rantai kepercayaan. Perhatikan bahwa modul TPM tidak mengizinkan modifikasi register PCR; seseorang tidak dapat mengubah catatan yang ada, hanya menambahkan yang baru.

Cara kerjanya akan dapat dilihat dari gambar berikut

articel

Enkripsi BitLocker
Setelah pengguna mengaktifkan BitLocker pada volume disk, Windows akan membuat Volume Master Key (VMK) dan recovery key secara acak. Master key akan disimpan dalam modul TPM. Master key inijuga dienkripsi dengan recovery key. VMK yang  terenkripsi kemudian disimpan di disk header. Pada saat komputer di-boot ulang, hal berikut ini akan terjadi

  1. Semua register PCR akan dikosongkan.
  2. Sistem akan mengikuti langkah 1 sampai 4 yang dijelaskan sebelumnya diatas
  3. Kernel OS mencoba membuka volume terenkripsi dan meminta VMK dari modul TPM. Modul TPM selanjutnya menganalisis rantai kepercayaan dengan memeriksa register PCR. Jika rantai kepercayaan rusak/corrupt, VMK tidak akan dikeluarkan. Kernel OS selanjutkan akan meminta user untuk memasukkan recovery key untuk membuka volume yang terenkripsi.
Dalam hal ini. Dapat dilihat. Jika computer dimatikan. Satu-satunya cara untuk mendapatkan VMKnya adalah dengan menggunakan OS aslinya dan konfigurasi aslinya. Menggubah konfigurasi dan komponen akan memutus rantai kepercayaan sehingga user harus memasukkan recovery key. Tanpa recovery key, maka volume tersebut tidak akan bisa dibuka.