Permintaan penandatanganan sertifikat membawa kunci publik dan subjek yang diminta, ditandatangani dengan kunci privat yang cocok. Tanda tangan itu membuktikan bahwa pemohon memiliki kuncinya. Itu tidak membuktikan bahwa pemohon berhak atas nama, perangkat, atau peran VPN yang diminta, dan memperlakukannya seolah-olah membuktikan hal itu adalah cara tiket help desk berubah menjadi pemberian akses.

Dua model pendaftaran layak dibandingkan dari apa yang mereka ikat, bukan dari protokol yang mereka gunakan.

Permintaan menyatakan nama, bukan membuktikannya

Baca permintaan itu dari apa yang benar-benar dikandungnya: kunci publik, subjek yang dipilih pemohon, dan tanda tangan sendiri atas keduanya. Tidak ada apa pun dalam struktur itu yang merujuk inventaris, direktori akun, atau alur persetujuan Anda. Subjek seperti cn=finance-laptop adalah string yang diketik seseorang. Sampai proses penerbitan memeriksa string itu terhadap catatan yang dipercaya, sertifikat hanyalah pernyataan dengan tanda tangan terlampir. Perbedaan itulah seluruh alasan proses pendaftaran ada.

Konsekuensinya penting secara operasional. Otoritas sertifikat tidak pernah membutuhkan kunci privat klien untuk menerbitkan sertifikat, dan alur yang memintanya telah mengacaukan penandatanganan dengan penyimpanan kunci. Simpan pembuatan di endpoint dan kirim hanya bagian publiknya.

Bandingkan model dari apa yang mereka ikat

Penandatanganan manual mengikat apa pun yang diingat operator untuk diperiksa. Layanan pendaftaran otomatis mengikat permintaan yang terautentikasi pada keputusan yang dapat ditegakkan layanan, dan RFC 7030 menjelaskan salah satu rancangan semacam itu di mana klien mengautentikasi sebelum sertifikat dikembalikan. Perbedaan yang bertahan dalam audit bukanlah otomatisasi; melainkan apakah pemeriksaan identitas terjadi di dalam jalur penerbitan atau di sampingnya.

Kedua model tetap harus menjawab tiga pertanyaan yang sama. Siapa yang meminta, di perangkat atau peran mana, dan untuk berapa lama. Sistem tiket yang mencatat jawabannya melakukan kerja nyata; antrean tempat seseorang menatap nama umum tidak, seberapa pun hati-hatinya sertifikat diformat nanti.

Pilih model berdasarkan jumlah pendaftaran yang Anda perkirakan dan pergantian perangkat. Beberapa server setahun dapat bertahan dari tinjauan manual dengan daftar periksa tertulis. Armada laptop tidak.

Catat siklus hidup sejak penerbitan pertama

Simpan pengenal sertifikat, pemilik, penggunaan yang dimaksud, masa berlaku, dan jalur penghapusan pada saat penerbitan, bukan pada insiden pertama. Penggunaan yang dimaksud seharusnya ada di dalam sertifikat itu sendiri melalui penggunaan kunci yang diperluas, dan catatan harus sesuai dengannya. Sertifikat yang dibuat untuk autentikasi klien tidak boleh tidak dapat dibedakan dari sertifikat untuk server.

Rencanakan pembaruan dan pencabutan perangkat yang hilang sebelum menerbitkan profil kesepuluh. Sertifikat yang dibagi di seluruh departemen mengubah penghapusan bertarget menjadi gangguan, dan keputusan itu jauh lebih murah ditinjau sekarang daripada saat insiden Jumat.

Periksa sertifikat yang diterbitkan, lalu aksesnya

Setelah pendaftaran, periksa apa yang diterbitkan dan pastikan rantainya sampai ke otoritas yang Anda harapkan. Dua perintah mencakup kesalahan umum: sertifikat dengan penggunaan yang salah, dan rantai yang hanya berfungsi karena klien dikonfigurasi mengabaikan validasi.

openssl req -in client.csr -noout -verify -subject
openssl x509 -in client.crt -noout -subject -issuer -dates -ext extendedKeyUsage
openssl verify -CAfile ca.crt client.crt

Lalu uji aksesnya, bukan artefaknya. Sertifikat menetapkan identitas, dan kebijakan tetap menentukan layanan mana yang boleh dijangkau identitas itu. Periksa keduanya, karena artefak yang benar dengan kebijakan yang terlalu luas tetap gagal dalam tinjauan. Pastikan klien terautentikasi dan hanya menerima rute atau sumber daya yang dimaksud. Catat apa yang Anda amati, bukan apa yang seharusnya dilakukan profil.

Profil yang berfungsi karena alasan yang salah, seperti nama umum yang cocok dan tanpa pemeriksaan identitas, akan terus berfungsi setelah kontrol yang Anda kira Anda miliki dihapus.

Artikel terkait