Selasa, 11 Desember 2018

Internet Protocol Security (IPSec)




    A. Pengertian IP Security

     Merupakan sebuah protocol yang digunakan untuk mengamankan Internet Protocol (IP) komunikasi dengan otentikasi dan mengenkripsi setiap paket dari suatu komunikasi. IPSec menyediakan layanan sekuritas pada IP layer dengan mengizinkan sistem untuk memilih protokol keamanan yang diperlukan, memperkirakan algoritma apa yang akan digunakan pada layanan, dan menempatkan kunci kriptografi yang diperlukan untuk menyediakan layanan yang diminta. IPSec dapat digunakan untuk memproteksi satu atau lebih path antara sepasang Host, antara sepasang security gateway, atau antara security gateway dengan Host (istilah security gateway mengacu pada sistem intermediate yang menggunakan protokol IPSec, misalkan router dan firewall yang mengimplementasikan

IPSec). Layanan dari sekuritas yang disediakan oleh IPSec meliputi kontrol akses, integritas dan lain-lain seperti tesebut dibagian atas bekerja pada IP layer oleh karena itu layanan ini dapat digunakan oleh layer protokol yang lebih tinggi seperti TCP, UDP, ICMP, BGP dan lain-lain. IPSec DOI juga mendukung kompresi IP [SMPT 98] dimotivasi dari pengamatan bahwa ketika kompresi diterapkan dalam IPSec, hal ini akan mencegah kompresi efektif pada protokol yang lebih rendah.

B. Protokol pada IPSec

IPSec menggunakan dua protokol untuk menyediakan layanan keamanan lalulintas yaitu Authentication Header (AH) and Encapsulating Security Payload (ESP). Implementasi IPSec harus mendukung ESP dan juga AH.

  • protokol Authentication Header (AH): menawarkan autentikasi pengguna dan perlindungan dari beberapa serangan (umumnya serangan man in the middle), dan juga menyediakan fungsi autentikasi terhadap data serta integritas terhadap data. Protokol ini mengizinkan penerima untuk merasa yakin bahwa identitas si pengirim adalah benar adanya, dan data pun tidak dimodifikasi selama transmisi. Namun, protokol AH tidak menawarkan fungsi enkripsi terhadap data yang ditransmisikannya. Informasi AH dimasukkan ke dalam header paket IP yang dikirimkan dan dapat digunakan secara sendirian atau bersamaan dengan protokol Encapsulating Security Payload.
  • protokol Encapsulating Security Payload (ESP): Protokol ini melakukan enkapsulasi serta enkripsi terhadap data pengguna untuk meningkatkan kerahasiaan data. ESP juga dapat memiliki skema autentikasi dan perlindungan dari beberapa serangan dan dapat digunakan secara sendirian atau bersamaan dengan Authentication Header. Sama seperti halnya AH, informasi mengenai ESP juga dimasukkan ke dalam header paket IP yang dikirimkan.
Protokol-protokol ini dapat diterapakan secara sendiri-sendiri atau dikombinasikan antara keduanya untuk menyediakan layanan keamanan yang diinginkan dalam IPv4 dan IPv6. Masing-masing protokol mendukung dua mode penggunaan: mode transport dan mode x. Dalam mode transport protokol menyediakan proteksi terutama untuk layer protokol berikutnya. Sedangkan dalam mode tunnel protokol diterapkan untuk meneruskan paket IP. Perbedaan antara kedua mode tersebut dijelaskan pada bagian berikutnya.

IPSec mengizinkan pengguna (administrator sistem) untuk mengontrol bagian-bagian terkecil dimana layanan keamanan diberikan. Sebagai contoh, salah satu dapat membuat tunnel enkripsi tunggal untuk membawa semua lalulintas antara dua sekurity gateway atau membuat tunnel enkripsi terpisah yang dibuat di masing-masing hubungan TCP antara sepasang Host yang berkomunikasi melintasi gateway tersebut. 

Karena layanan keaman ini menggunakan nilai rahasia yang di-share (cryptographic keys), IPSec mengandalkan mekanisme terpisah untuk menempatkan kunci ini. (kunci ini digunakan untuk layanan otentifikasi/integritas dan layanan enkripsi). 

C. Layanan IPSec

Secara umum layanan yang diberikan IPSEC adalah :
  • Data Confidentiality, pengirim data dapat mengengkripsi paket data sebelum dilakukan transmit data.
  • Data Integrity, penerima dapat mengotentifikasi paket yang dikirimkan oleh pengirim untuk meyakinkan bahwa data tidak dibajak selama transmisi.
  • Data Origin Authentication, penerima dapat mengotentifikasi asal dari paket IPSEC yang dikirimkan.
  • Anti Replay, penerima dapat mendeteksi dan menolak paket yang telah dibajak.

D. Implementasi IPSec

Ada berbagai macam cara pengimplementasian IPSec dalam host atau hubungan dengan firewall atau router (untuk menciptakan sebuah security gateway). Beberapa contoh implementasi tersebut dijelaskan dibawah ini:

a.   Integrasi IPSec kedalam implementasi native IP. Cara ini membutuhkan akses ke  source code IP dan cara ini mudah diaplikasikan untuk host dan security gateway.
b.   Implementasi Bump-In-The-Stack (BITS), dimana IPSec diimplementasikan dibawah implementasi protokol stack IP yang sudah ada, diantara native IP (IP asli) dan driver jaringan lokal. Akses source code untuk IP stack tidak diperlukan dalam konteks ini, membuat implementasi ini mendekati pengguanaan yang sesuai dengan sistem pewarisan. Pendekatan ini kita digunakan, pada umumnya digunakan dalam Host.
c.  Penggunaan pengolah kriptografi outboard merupakan desain keamanan karingan yang umum digunakan oleh militer dan beberapa sistem komersil. Sistem ini kadang dikenal sebagai implementasi Bump-In-The-Wire (BITW). Implementasi seperti itu dirancang untuk melayani Host atau Gateway ( atau keduanya). Biasanya device BITW adalah IP berpetunjuk. Apabila menyokong hanya Host tunggal maka ananlogi dengan BITS, tapi apabila menyokong router atau firewall maka harus berperilaku sebagai security gateway.

E. Security Association

Security Association adalah suatu hubungan simplex yang menghasilkan layanan keamanan lalulintas yang dibawanya. Layanan keamanan ini dihasilkan oleh SA dengan penggunaan AH atau ESP tapi bukan penggunaan keduanya. Jika proteksi AH dan ESP diterapkan dalam aliran lalulintas, kemudian dua tau lebih SA di-create untuk menghasilkan proteksi dalam aliran lalulintas. Untuk mengamankan komunikasi dua arah antara dua Host, atau antara dua security gateway maka dibutuhkan dua SA (satu di masing-masing arah).
Security Association secara unik dikenali dari tiga komponen yaitu Security Parameter Index (SPI), alamat tujuan IP dan protokol keamanan (AH atau ESH). Nilai SPI mencakup nilai 1 sampai 255 yang ditetapkan oleh IANA (Internet Assigned Number Authority) untuk penggunaan dimasa yang akan datang. Nilai SPI nol (0) ditetapkan untuk penggunaan implementrasi khusus lokal dan tidak dikirim lewat kabel. Sebagai contoh implementasi manajemen kunci mempunyai nilai SPI nol yang berarti tidak ada Security Association selama periode ketika implementasi IPSec telah meminta bahwa entitas manajemen kunci tersebut menetapakan SA baru, tetapi SA belum masih belum ditetapkan. Pada prinsipnya, alamat tujuan merupakan unicast address, IP broadcast address atau multicat group address. Bagaimanapun mekanisme manajemen SA IPSec saat ini hanya didefinisikan untuk SA unicast. Oleh karena itu, untuk diskusi pemaparan selanjutnya SA dideskripsikan utamanya untuk komunikasi point-to-point, meskipun konsepnya dapat diaplikasikan untuk kasus komunikasi point-to-multipoint.
Seperti telah dituliskan dibagian sebelumnya didefinisikan dua tipe SA yaitu mode transport dan mode tunnel. SA mode transport adalah SA antara dua Host. Dalam kasus dimana link security ingin digunakan antara dua sistem intermediate sepanjang path mode transport juga dapat digunakan antara dua security gateway. Dalam kasus terbaru mode transport juga digunakan untuk mensuport IP-in-IP atau GRE tunneling melalui SA mode transport. Catatan bahwa fungsi kontrol akses merupakan bagian yang penting dari IPSec secara significan dibatasi dalam konteks ini. Sehingga penggunaan mode transport harus dievaluasi secara hati-hati sebelum digunakan. Dalam Ipv4, header protokol keamanan mode transport terlihat setelah header IP dan beberapa pilihan lain dan sebelum protokol layer yang lebih tinggi (seperti TCP atau UDP) dalam Ipv6, header protokol keamanan terlihat setelah header base IP dan ekstensionnya, tetapi mungkin juga terlihat sebelum atau sesudah pilihan tujuan dan sebelum protokol layer yang lebih tinggi. Dalam kasus ESP SA mode tranport menyediakan layanan keamanan hanya untuk protokol layer yang lebih tinggi darinya, tidak untuk IP header atau ekstension header yang mendahului ESP header. Dalam kasus untuk AH, proteksi juga ditambahkan ke bagian yang dipilih dari IP header, bagian yang dipilih dari ekstension header dan option pilihan (yang terdapat pada header Ipv4, Hop-by-Hop ekstension header Ipv6, atau ekstension header tujuan pada Ipv6).
SA mode tunnel sebenarnya adalah SA yang diaplikasikan di IP tunnel. Dengan hanya sepasang pengecualian, kapan saja ujung manapun dari SA adalah Security gateway, SA harus mode tunnel. SA diantara dua security gateway pada dasarnya adalah SA mode tunnel seperti SA antara Host dan Security Gateway. Catatan bahwa dalam kasus dimana lalulintas ditujukan untuk security gateway seperti SNMP commands, security gateway berlaku sebagai Host dan mode transport diperbolehkan. Tapi dalam kasus tersebut security gateway tidak berlaku sebagai gateway. Seperti tertulis diatas security gateway mungkin mendukung mode transport untu menyediakan link (Hubungan) keamanan. Dua Host dapat menyusun sebuah mode tunnel antara mereka. Kebutuhan untuk transit traffic SA meliputi security gateway untuk menjadi SA tunnel mengacu ke kebutuhan untuk menghindari problem potensial dengan memperhatikan fragmentasi dan penyusunan ulang dari paket IPSec dan dalam keadaan dimana path yang banyak (melalui security gateway yang berbeda) menuju ke tujuan yang sama dibelakang security gateway.
Untuk SA mode tunnel ada header IP luar yang menspesifikasikan pemrosesan tujuan IPSec ditambah dengan header IP dalam yang menunjukkan tujuan terakhir dari peket tersebut. Header protokol keamana terlihat setelah header IP luar dan sebelum header IP dalam. Jika AH diterapkan dalam mode tunnel bagian header IP luar diperoleh proteksi seperti halnya paket IP yang disalurkan (semua header IP dalam diproteksi seperti halnya layer protokol yang lebih tinggi). Jika ESP diterapkan proteksi dikerjakan hanya pada paket yang disalurkan tidak pada header luar.