Sertifikat Digital Public Key Infrastructure (PKI) Muhammad Sholeh Teknik Informatika Institut Sains & Teknologi AKPRIND Serangan yang umum terjadi pada kunci publik tanpa identitas adalah penyamaran (impersonation attack). Seseorang yang memiliki kunci publik orang lain dapat menyamar seolah-olah dialah pemilik kunci itu. Serangan semacam ini adalah masalah yang muncul dari penggunaan kriptografi kuncipublik.. Contohnya, dalam teknologi e-commerce, pembayaran transaksi dilakukan dengan menggunakan kartu kredit. Pelanggan mengirimkan informasi kartu kreditnya (yang bersifat rahasia) melalui website pedagang online. Selama pengiriman, informasi kartu kredit tersebut dilindungi dengan cara mengenkripsinya dengan kunci publik pedagang online pedagang online tersebut memang benar milik pedagang online dan bukan website pihak lain yang menyamar sebagai website pedagang asli dengan tujuan untuk mencuri informasi kartu kredit (ingat kasus klikbca.com). 1
Untuk menjawab masalah di atas, solusinya adalah dengan memberikan sertifikat digital pada kunci publik. Sertifikat digital dikeluarkan (issued) oleh pemegang otoritas sertifikasi (Certification Authority atau CA). CA biasanya adalah institusi keuangan (seperti bank) atau institusi yang terpercaya. Sertifikat digital adalah dokumen digital yang berisi informasi sebagai berikut: nama subjek (perusahaan/individu yang disertifikasi) kunci publik si subjek waktu kadaluarsa sertifikat (expired time) informasi relevan lain seperti nomor seri sertifikat, dll Supaya sertifikat digital itu dapat diverifikasi (dicek kebenarannya), maka kunci publik CA harus diketahui secara luas. Seseorang yang memiliki kunci publik CA dapat memverifikasi bahwa tanda tangan di dalam suatu sertifikat itu sah dan karena itu mendapat jaminan bahwa kunci publik di dalam sertifikat itu memang benar. 2
VeriSign, Inc. adalah CA yang terkemuka. Untuk informasi tentang VeriSign, kunjungi www.verisign.com Sertifikat digital sendiri tidak rahasia, tersedia secara publik, dan disimpan oleh CA di dalam certificate repositories. Salinan (copy) sertifikat tersebut juga dimiliki oleh pemohon sertifikat. SSL (Secure Socket Layer) SSL (Secure Socket Layer) pada dasarnya merupakan suatu mekanisme yang melindungi koneksi dari usaha penyadapan. Hal ini karena komunikasi yang terjadi antara client-server melalui suatu jalur yang dienkripsi. Tetapi sistem ini tidak melindungi dari salah masuknya pengguna ke host yang berbahaya, ataupun tak melindungi apakah suatu kode yang didownload dari suatu situs bisa dipercaya, atau apakah suatu situs itu bisa dipercaya Sayangnya sertifikat digital saja, bukanlah obat mujarab yang bisa mengobati semua jenis permasalahan sekuriti. Agar SSL dapat bekerja dengan semestinya (melakukan koneksi terenkripsi dengan pihak yang semestinya), maka penggunalah yang harus memverifikasi apakah sertifikat yang dimiliki oleh server yang ditujunya adalah benar. Berikut ini adalah beberapa hal minimal harus diperhatikan : Apakah sertifikat tersebut dikeluarkan oleh CA yang dipercaya. Apakah sertifikat tersebut dikeluarkan untuk pihak yang semestinya (perusahaan yang situsnya dituju). Apakah sertifikat itu masih berlaku. 3
Sayangnya lagi, banyak orang tak peduli terhadap permasalahan di atas. Sebetulnya ketika melakukan koneksi ke sebuah situs yang mendukung SSL, hal tersebut ditanyakan oleh browser, tetapi sebagian besar pengguna selalu menekan Yes ketika ditanya untuk verifikasi sertifikat ini. Untuk melihat ketiga hal tersebut, dapat dilakukan dengan double-click pada tombol kunci yang ada di bagian kiri bawah browser. Begitu juga dengan keterangan 128-bit SSL. Seringkali tanpa dilengkapi dengan penjelasan semestinya apa maksud 128-bit ini, dan apa kaitannya dengan PIN pengguna, ataupun hal lainnya. Masih banyak perusahaan yang mengambil mentah-mentah keyakinan akan keamanan SSL ini tanpa mencoba memahami atau menerangkan keterbatasan SSL dalam melakukan perlindungan. Sebagai dampaknya pengguna menjadi tak peduli terhadap ditail mekanisme transaksi yang dilakukannya. Halaman yang belum ada sertifikat Melihat Sertifikasi 4
Halaman yang bersertifikat 5
6
Dengan memanfaatkan kekurang-waspadaan pengguna dapat timbul beberapa masalah sekuriti. Berikut ini adalah celah sekuriti dalam penggunaan SSL yang diakibatkan oleh server si penyerang di luar server asli. Celah seperti ini relatif sulit dideteksi dan dijejaki tanpa adanya tindakan aktif, karena terjadi di server lain. Celah ini pada dasarnya dilakukan dengan cara mengalihkan akses user dari situs aslinya ke situs palsu lainnya, sehingga dikenal dengan istilah page hijacking. Beberapa kemungkinan teknik yang digunakan untuk melakukan hal ini adalah Ticker symbol smashing. Biasanya digunakan pada pengumuman press release, dengan memanfaatkan simbol dari perusahaan besar lainnya. Sehingga secara tersamar pengguna akan belok ke situs ini. Misal Perusahaan KUMBAYO baru saja meluncurkan produknya. Perusahaan ini tak ada hubungan dengan Bank Ha Ha. Misal Bank Ha-Ha adalah suatu bank besar. Dengan cara ini orang akan terdorong ke situs perusahaan KUMBAYO, yang semula akan ke Bank Ha-Ha. Web Spoofing (Felten et al, 1997). Memanipulasi alamat URL pada sisi client, sehingga akan memaksa si korban melakukan browsing dengan melalui situs tertentu terlebih dahulu. Dengan cara ini dapat menyadap segala tindakan si korban, ketika melakukan akses ke situs-situs. Sehingga si penyerang dapat memperoleh PIN ataupun password. Cara ini biasanya memanfaatkan trick URL Rewrite. Umumnya pengguna awam tak memperhatikan apakah akses dia ke suatu situs melalui http://www.yahoo.com ataukah melalui http://www.perusak.org/http://www.yahoo.c om. Karena yang tampil di browsernya adalah tetap halaman dari www.yahoo.com 7
Beberapa langkah yang perlu dilakukan oleh penyedia layanan dalam merancang sistem yang berkaitan dengan sisi pengguna adalah : Sekuriti perlu menjadi pertimbangan yang penting dari disain sistem. Bukan sekedar tempelan iklan belaka. Memberikan umpan balik pada mekanisme sekuriti akan meningkatkan pemahaman user terhadap mekanisme sekuriti ini. Sehingga disain tata letak, homepage juga perlu mempertimbangkan faktor sekuriti ini juga. Menginformasikan user tentang ancaman potensial pada sistem. Kepedulian akan ancaman ini akan mengurangi ketakpedulian pengguna terhadap ditail langkah transaksi yang dilakukan. Sebagai contoh mereka tidak cenderung menekan Yes. Ketika memverifikasi sertifikat. Memang para pengguna Internet di Indonesia kebanyakan memiliki kendala dalam hal bahasa. Sehingga mereka sering melewati dan tak membaca pesan yang tampil di layar. Hal ini menuntut Semakin perlunya menu dan keterangan berbahasa Indonesia pada aplikasi Internet Banking. Tidak saja di halaman Internet tetapi juga di browser yang digunakan para pengguna Internet di Indonesia. Kepedulian user perlu selalu dipelihara. Secara rutin penyedia layanan harus memberikan jawaban terhadap pertanyaaan masalah sekuriti, baik yang secara langsung maupun tidak. Ini dapat melalui newsletter, press release, ataupun white paper. Sebaiknya jangan digunakan penjelasan yang sekedar menutupi ancaman sesungguhnya, ataupun jangan juga memberikan penjelasan yang menakutnakuti. Keputusan suatu perusahaan untuk menggunakan Internet sebagai jalur pemberian layanan, memberikan konsekuensi bahwa perusahaan tersebut juga harus aktif memonitor masukan dari Internet, misal melalui kotak surat khusus pengaduan, memonitor mailing list yang mempertanyakan masalah keamanan situs tersebut. 8
Berikan user panduan tentang sekuriti sistem, termasuk langkah-langkah yang sensitif. Sebaiknya ketika user baru memulai menggunakan suatu layanan, mereka telah di-"paksa" untuk membaca petunjuk ini terlebih dahulu. Jangan setelah ada suatu kasus baru dikeluarkan langkah-langkah yang perlu diperhatikan. Dokumentasi dan penjelasan di situs harus lebih ditail dan lengkap lagi. Terima kasih 9