Port Knocking 38 SISTEM AUTENTIKASI PORT KNOCKING

Seminar Nasional Teknologi 2007 SNT 2007 ISSN : 1978 – 9777 Yogyakarta, 24 November 2007 D ‐ 3

2. Port Knocking

Port Knocking merupakan metoda sistem autentikasi yang secara khusus dibuat untuk jaringan. Ide dasar dari sistem autentikasi ini telah lama digunakan namun baru pada tahun 2003, dalam salah satu kolom di majalah Linux Journal, seorang pakar jaringan komputer Martin Krzywinski kembali mempopulerkan metode ini dengan beberapa terobosan–terobosan menghadapi serangan yang mungkin terjadi. Pada dasarnya port knocking dapat didefinisikan sebagai suatu metode komunikasi antara dua komputer, dimana informasi yang dikirimkan di encode dalam bentuk usaha koneksi ke port–port dalam urutan tertentu. Usaha membangun koneksi ini bisa disebut juga ketukan2. Mekanisme port knocking akan menggunakan file log yang dibuat oleh firewall untuk mengetahui apakah suatu usaha koneksi telah dibuat oleh suatu host atau tidak. Prinsip dasar dari port knocking secara mudah dapat dijelaskan sebagai berikut : 1. client melakukan koneksi ke sistem remote yang menerapkan aturan firewall sebagai berikut : client sama sekali tidak dapat terkoneksi dengan port berapapun pada remote sistem, dengan kata lain semua port ditutup oleh firewall; 2 Krzywinski Martin, Port Knocking – Flexible Security Through Authentication Across Closed Ports, West Coast Security Forum - 2003 2. client mencoba melakukan koneksi dengan mengirimkan paket data UDP ke sistem remote melalui beberapa port secara sekuensial dalam hal ini antara 32 sampai 265 port yang tersedia; 3. client tidak akan mendapatkan response apapun dari server saat fase ini; 4. port knock daemon mencatat percobaan koneksi kemudian melakukan autentikasi terhadap percobaan tersebut bila autentikasi berhasil, dalam hal ini urutan port yang di coba untuk dikoneksikan sesuai dengan aturan tertentu pada port knock daemon, maka daemon akan melakukan overwrite terhadap file konfigurasi firewall agar mengijinkan port n untuk dibuka kepada client dengan IP Addres ter-autentikasi; 5. client melakukan koneksi ke port n menggunakan aplikasi seperti pada umumnya; 6. saat client memutuskan koneksi, maka program daemon dari port knock akan melakukan kembali overwrite terhadap isi file konfigurasi firewall sehingga port kembali tertutup bagi client tersebut. Salah satu masalah pada port knocking adalah replay–attack yaitu penyerang berhasil sniffing port sequence untuk kemudian melakukan knocking menggunakan hasil rekaman. Untuk Seminar Nasional Teknologi 2007 SNT 2007 ISSN : 1978 – 9777 Yogyakarta, 24 November 2007 D ‐ 4 mengatasi masalah tersebut maka terdapat beberapa alternatif pendekatan untuk port knocking, diantaranya: – penggunaan one time password, – menggunakan enkripsi dan fungsi tertentu untuk menghasilkan suatu sequences port. Untuk sistem yang dibangun kali ini digunakan pendekatan cara kedua atau menggunakan enkripsi dalam hal ini RSA Public Key Cryptography dan fungsi dengan bentuk persamaan : RSA_public hj, ha, pj, act, prv, u, pk = p0, p1, p2, p3, ......., p32 ha = host asal, hj = host tujuan, pj = port tujuan, act = aksi yang akan dilakukan membuka atau mentutup port prv = private passwordprivate key k = public key u = username p = password p0, ..., p32 = merupakan urutan port yang akan diketuk Program port knocking pada sisi server merupakan program daemon. Daemon ini akan berjalan terus menerus dan melakukan evaluasi terhadap isi file log setiap detiknya, dengan catatan isi file log berubah. Berubah atau tidaknya isi file log dapat diketahui dengan cara membandingkan hasil MD5 hash dari file log saat ini dengan hasil MD5 hash sebelumnya. Seminar Nasional Teknologi 2007 SNT 2007 ISSN : 1978 – 9777 Yogyakarta, 24 November 2007 D ‐ 5 Aturan firewall baru akan dirubah bila jumlah ketukan telah mencapai 32 dan hasil decode dari ketukan tersebut menunjukkan bahwa ketukan tersebut berasal dari pemakai yang sah. Pemakai yang sah dalam hal ini adalah pemakai yang nama serta passwordnya ada pada file ipf.passwd. Dan port yang ingin dibuka oleh pemakai tersebut merupakan port yang boleh dibuka