Selasa, 07 Mei 2013

Monitoring protokol SSL dengan menggunakan wireshark


SSL atau Secure Sockets Layer adalah sebuah protokol keamanan data yang digunakan untuk menjaga pengiriman data web server dan pengguna situs web tersebut.

Jenis SSL yang paling aman dapat dilihat dari tingkat keamanan SSL, yang terletak pada kekuatan enkripsi yang didukungnya (misalnya 256 bit). Semakin besar tingkat enkripsi semakin susah untuk dibobol. Secara teknis, semua SSL dengan tingkat enkripsi yang sama, mempunyai tingkat keamanan yang sama.Untuk mengetahui apabila transaksi diamankan oleh SSL adalah sebuah icon berlambangkan gembok yang terkunci akan muncul di browser yang telah diamankan dengan SSL. Dengan meng-klik icon tersebut akan diketahui otoritas sertifikasi dari sertifikat SSL tersebut.

Untuk mengaktifkan SSL pada situs anda, anda perlu memasang sertifikat SSL yang sesuai dengan server dan situs anda. Setelah SSL terpasang, anda bisa mengakses situs anda secara aman dengan mengganti URL yang sebelumnya http:// menjadi https://. Hal ini dapat terlihat dari indikator / ikon gembok pada browser atau juga alamat situs yang diakses diindikasikan dengan warna hijau pada baris alamat browser.
Komponen Secure Socket Layer (SSL)
Komponen SSL disusun oleh dua sub-protokol :
  1. SSL handshaking, yaitu sub-protokol untuk membangun koneksi yang aman untuk berkomunikasi.
  2. SSL record, yaitu sub-protokol yang menggunakan koneksi yang sudah aman. SSL record membungkus seluruh data yang dikirim selama koneksi.
Pada artikel kali ini akan memonitoring protocol SSL pada wireshark , pada contoh kali ini menggunakan sebuah website e-banking yaitu www.klikbca.com dan melakukan login individual pada website tersebut lalu pada wireshark lakukan filter protocol yaitu ”ssl”  dan akan muncul capture beberapa bagian autentifikasi dan cara kerja protocol ssl .
Cara Kerja Secure Socket Layer (SSL)
Dalam berkomunikasi Secure Socket Layer (SSL) didefinisikan secara berbeda, pada client atau pada server. Client adalah sistem yang menginisiasi komunikasi, sedangkan server adalah sistem yang merespon request dari client. Pada aplikasinya di internet, browser web adalah client dan website adalah server. Client dan server mempunyai perbedaan utama pada aksi yang dilakukan ketika negosiasi tentang parameter keamanan. Client bertugas untuk mengajukan opsi SSL yang akan digunakan pada saat pertukaran pesan, dan server menentukan opsi mana yang akan digunakan. Pada implementasinya SSL berjalan pada transport layer dengan aplikasi SSLeay dan OpenSSL.
Secara umum cara kerja SSL dapat dijelaskan dalam beberapa tahapan yaitu sebagai berikut :
  1. Tahapan Pembangunan Chanel.
  2. Client membentuk koneksi awal ke server dan meminta koneksi SSL.
  3. Jika server yang dihubungi telah dikonfigurasi dengan benar, maka server ini mengirimkan public key miliknya kepada client.
  4. Client membandingkan sertifikat dari server ke basis data trusted authorities. Jika sertifikat terdaftar di dalamnya, artinya client mempercayai (trust) server itu dan akan maju ke tahap 4. Sehingga pemakai harus menambahkan sertifikat tersebut ke trusted database sebelum maju ke langkah 4.
Client menggunakan Public Key yang didapatnya untuk mengenkripsi dan mengirimkan session key ke server. Jika server meminta sertifikat client di tahap 2, maka client harus mengirimnya sekarang.
Jika server di setup untuk menerima sertifikat, maka server akan membandingkan sertifikat yang diterimanya dengan basis data trusted authorities dan akan menerima atau menolak koneksi yang diminta.
Jika kondisi ditolak, suatu pesan kegagalan akan dikirimkan ke client. Apabila koneksi diterima, atau bila server tidak di setup untuk menerima sertifikat, maka server akan mendekripsi session key yang didapat dari client dengan private key milik server dan mengirimkan pesan berhasil ke client yang dengan demikian membuka suatu secure data chanel.
Tahapan Otentikasi :
  1. Client mengirimkan pesan Client Hello untuk mengajukan opsi SSL. 
  2. memberi respon dengan memilih opsi SSL melalui ServerHello.
  3. Server mengirimkan sertifikat kunci publik pada pesan Certificate. 
  4. Server mengakhiri bagian negoisasi dengan pesan ServerHelloDone.
  5. Client mengirimkan informasi session key yang dienkripsi dengan kunci publik server melalui pesan ClientKeyExchange.
  6. Client mengirimkan pesan ChangeCipherSpec untuk mengaktifkan opsi yang dinegosiasikan untuk semua pesan yang akan dikirimkan. 
  7. Client mengirimkan pesan Finished sehingga memungkinkan server mengecek opsi baru yang diaktifkan.
  8. Server mengirimkan pesan ChangeCipherSpec untuk mengaktifkan opsi yang dinegosiasikan untuk semua pesan yang akan dikirimkan.
  9. Server mengirimkan pesan Finished sehingga memungkinkan client mengecek opsi baru yang diaktifkan.
Keuntungan Secure Socket Layer (SSL)
Transaksi bisnis ke bisnis atau bisnis ke pelanggan yang tidak terbatas dan menambah tingkat kepercayaan pelanggan untuk melakukan transaksi online dari situs anda.

Tidak ada komentar:

Posting Komentar