Pencabutan Sertifikat OPM
Sertifikat manajer perlindungan output (OPM) dapat dicabut oleh Microsoft. Daftar sertifikat yang dicabut disimpan dalam daftar pencabutan global (GRL). GRL memiliki format berikut:
Bagian | Deskripsi |
---|---|
Header | Struktur GRL_HEADER . |
Core | Berisi daftar pencabutan berikut:
|
Entri yang dapat diperluas | Berisi informasi yang digunakan oleh komponen lain. Bagian ini tidak relevan dengan OPM. |
Perpanjangan: | Berisi GUID yang menentukan pengidentifikasi Windows Update. Bagian ini berisi pengidentifikasi untuk daftar berikut:
|
Tanda tangan: Bagian inti | Menandatangani bagian header dan inti. |
Tanda tangan: Bagian yang dapat diperluas | Menandatangani header dan bagian yang dapat diperluas. |
Header GRL adalah struktur GRL_HEADER . Anggota dwSequenceNumber dari struktur berisi nomor versi GRL. Jumlah ini bertahas setiap kali GRL diperbarui dan versi baru ditempatkan di komputer pengguna.
Sertifikat OPM yang dicabut tercantum dalam daftar pencabutan sertifikat bagian Inti. Setiap entri Core dalam GRL adalah array 20 byte yang berisi hash SHA-1 dari kunci publik sertifikat yang dicabut.
Bagian Tanda Tangan berisi tanda tangan yang dapat digunakan untuk memverifikasi bahwa GRL belum diubah. Setiap bagian Tanda Tangan berisi struktur MF_SIGNATURE . Tanda tangan pertama menandatangani header ditambah bagian Inti. Tanda tangan kedua menandatangani header ditambah bagian Yang Dapat Diperluas; tanda tangan ini tidak relevan dengan OPM.
Untuk memastikan bahwa GRL itu sendiri belum dirusak, verifikasi tanda tangan sebagai berikut:
- Temukan awal struktur MF_SIGNATURE . Lokasi struktur MF_SIGNATURE diberikan dalam anggota cbSignatureCoreOffset dari struktur GRL_HEADER . Lokasi ditentukan sebagai offset dalam byte dari awal GRL.
- Uraikan struktur MF_SIGNATURE sebagai tanda tangan PKCS #7 dengan rantai sertifikat.
- Verifikasi rantai sertifikat hingga akar tepercaya.
- Verifikasi bahwa sertifikat daun memiliki pengidentifikasi objek berikut di EKU: "1.3.6.1.4.1.311.10.5.4".
- Menghitung hash byte yang menyertakan header dan bagian inti GRL.
- Verifikasi bahwa hash cocok dengan tanda tangan dalam sertifikat daun.
Topik terkait