Asynchronous Transfer Mode (ATM) merupakan salah satu platform teknologi jaringan dan infrastruktur komunikasi yang bisa digunakan untuk berbagai keperluan koneksi antara lain LAN (Local Area Network), WAN (Wide Area Network) dan MAN (Metropolitan Area Network). Teknologi ATM memungkinkan semua jenis data (suara, data dan video) bisa dialirkan melalui satu jaringan telekomunikasi.

Aplikasi multimedia seperti video conference dan video on demand memerlukan jaringan dengan bandwidth besar dan kualitas tinggi. Kebutuhan akan jaringan seperti ini bisa dipenuhi dengan teknologi ATM yang ada saat ini. Aplikasi multimedia seperti itu baru terasa manfaatnya apabila terkoneksi dengan jaringan publik. Namun di sisi lain, koneksi dengan jaringan publik memungkinkan adanya berbagai bentuk serangan dari pihak lain. Serangan tersebut bisa berupa koneksi terhadap jaringan lokal ATM dengan tujuan untuk mendapatkan akses terhadap informasi penting atau berupa serangan denial of service. Serangan juga bisa berupa monitoring dan analisa trafik yang dilakukan dari suatu terminal / node perantara.

Pada awal pengembangannya, teknologi ATM tidak diintegrasikan dengan layanan keamanan. Seiring dengan semakin pentingnya aspek keamanan, maka baru beberapa tahun belakangan ini aspek keamanan ATM mendapat perhatian serius. Dengan demikian, apabila dibandingkan dengan teknologi jaringan lainnya, aspek keamanan pada ATM baru pada tahap permulaan.

A. Pemahaman Teknologi ATM

A.1. Definisi dan Karakteristik ATM

Teknologi ATM merupakan salah satu hasil dari upaya standarisasi Broadband Integrated Services Digital Networks (BISDN) yang dilakukan oleh ITU-T pada pertengahan tahun 1980-an. Teknologi ATM sendiri mengacu pada suatu teknik transmisi paket data berkecepatan sangat tinggi dengan menggunakan mekanisme switching dan time division multiplexing yang diterapkan pada sel-sel berukuran tetap dan relatif kecil.

Karakteristik utama dari ATM yang membedakan dengan teknik transmisi lainnya adalah sebagai berikut:

  1. Informasi ditransmisikan dalam bentuk sel berukuran tetap (53 byte).
  2. Sel-sel tersebut di identifikasi dengan cara memberi label pada header dari setiap sel.
  3. Sel-sel ditransmisikan berdasarkan urutan yang sudah disusun sebelumnya.

Berdasarkan kemampuannya, ATM memiliki kemampuan sebagai berikut:

  1. Mendukung layanan untuk semua jenis aplikasi yang ada saat ini dan perkembangan aplikasi di masa datang.
  2. Memberikan utilisasi sangat tinggi terhadap sumberdaya jaringan.
  3. Mengurangi kompleksitas pada switching.
  4. Mengurangi waktu proses pada node perantara dan mendukung transmisi berkecepatan sangat tinggi.
  5. Mengurangi besar buffer yang diperlukan pada node perantara untuk menghindari delay dan kompleksitas pengaturan buffer.
  6. Menjamin performansi yang dibutuhkan oleh aplikasi saat ini maupun pengembangannya di masa datang.

ATM memiliki protokol yang didasarkan pada standarisasi ISDN Ptotocol Reference Model (ISDN PRM). Model referensi protokol ATM ini terdiri dari tiga layer sebagai berikut:

  • The physical layer (PHY) berfungsi mendefinisikan segala sesuatu yang berhubungan dengan penggunaan media dan transmisi bit.
  • The ATM layer (ATM) berfungsi untuk mendefinisikan format sel dan bagaimana mentransmisikan sel-sel tersebut dari satu titik ke titik lainnya.
  • The ATM adaptation layer (AAL) berfungsi untuk memetakan layanan-layanan  ATM sesuai dengan kebutuhan user.

Disamping terdiri dari tiga layer di atas, model referensi ini juga terdiri dari 3 bidang (plane), yaitu:

  • User Plane (U-Plane) yang memiliki fungsi untuk mentransmisikan informasi dari user secara transparan.
  • Control Plane (C-Plane) bertugas untuk mengirimkan informasi-informasi yang diperlukan untuk mengontrol koneksi-koneksi dari user plane (menetapkan/memutuskan suatu koneksi, monitoring karakteristik suatu koneksi, dll.)
  • The Management Plane (M-Plane)
  • Gambar 1: Model referensi protokol ATM

A.2. ATM Adaption Layer (AAL)

ATM Adaption Layer (AAL) mempunyai peranan dalam menentukan kelas aliran data (trafik) yang akan disediakan ATM. AAL berkaitan dengan penentuan parameter-parameter seperti jenis aliran data (constant atau variabel), connection oriented atau connectionless, tingkat koreksi error dan toleransi berapa banyak sel yang boleh hilang. Peranan penting lainnya dari AAL adalah menyediakan antar muka (interface) antara aplikasi user dengan ATM layer sehingga memungkinkan berbagai jenis aplikasi memanfaatkan semaksimal mungkin setiap layanan ATM.

AAL sendiri memiliki dua sublayer utama yaitu Segmentation and Re-assembly (SAR) dan Convergence Sublayer (CS).

Sublayer SAR menerima data dari user melalui application layer dan mengubah data tersebut menjadi sel-sel dengan ukuran 48 byte yang selanjutnya dikirimkan ke ATM layer. Terjadi proses sebaliknya, sublayer SAR melakukan penggabungan (reassemble) sel-sel berukuran 48 byte yang diterima dari ATM layer menjadi ukuran data yang sesuai dengan yang harus diterima user.

Sublayer CS melakukan berbagai tugas yang berbeda, tergantung dari kelas data yang ditetapkan oleh AAL. Secara umum, terdapat lima kelas data yang bisa disediakan AAL yaitu kelas A, B, C, D dan X. Sesuai dengan jenis tugas yang dijalankan AAL, layer CS akan membubuhkan informasi tambahan kedalam setiap layer sehingga remote host dari AAL tersebut mampu me-reassemble sel-sel tersebut menjadi data yang diminta oleh user.

A.3. ATM Layer

Gambar 2: Format Sel ATM

Fungsi utama ATM layer adalah untuk melakukan penambahan 5 byte header kepada setiap 48 byte data yang diterima dari ATM adaption layer dan mengalirkannya ke physical layer. Demikian pula terjadi proses sebaliknya, ATM layer  menerima 53 byte sel dari physical layer, memproses header dan mengirimkan 48 byte data ke AAL. Terdapat enam buah field dalam setiap header, yaitu GFC, VPI, VCI, PT, CLP dan HEC.

GFC (Generic Flow Control) digunakan pada setiap local site untuk meneliti flow control. Nilai dari field ini tidak tetap sepanjang alur transmisi tetapi bisa berubah pada setiap switching yang dilewati sel tersebut.

VPI/VCI (Virtual Path Identifier/Virtual Channel Identifier) digunakan untuk mengidentifikasi setiap VC yang dimiliki oleh setiap sel.

PT (Payload Type) digunakan untuk menentukan apakah suatu sel memiliki informasi mengenai user plane atau control plane.

CLP (Cell Loss Priority) merupakan identifikasi dalam format boolean yang digunakan untuk menunjukkan prioritas dari suatu sel.

HEC (Header  Error Control) digunakan oleh physical layer untuk mendeteksi adanya kesalahan pada header setiap sel.

Masing-masing field dari header ini memainkan peranan penting dalam penerapan berbagai plane yang terdapat dalam model B-ISDN.

B. Ancaman Pada Jaringan ATM

Sebagaimana terjadi pada jaringan telekomunikasi lainnya, jaringan ATM tidak terlepas dari berbagai ancaman. Jenis ancaman yang bisa terjadi adalah eavesdropping, spoofing, service denial, pencurian virtual channel (VC), dan traffic analysis. Ancaman pencurian VC dan traffic analysis merupakan jenis ancaman yang secara khusus menimpa jaringan ATM.

B.1. Eavesdropping

Eavesdropping didefinsikan sebagi suatu serangan terhadap jaringan komunikasi dengan cara melakukan pencantolan (tap) pada media transmisi sehingga penyerang bisa mengakses informasi yang tersedia. Jenis ini merupakan serangan yang umum terjadi pada setiap jaringan.

Untuk bisa melakukan serangan eavesdropping pada jaringan ATM, hacker harus memiliki pengetahuan mengenai teknologi komunikasi/protokol serta bantuan perangkat khusus.

Anggapan sebelumnya, jaringan ATM akan sulit dicantol karena hampir semua koneksi pada jaringan ATM menggunakan kabel optik sehingga untuk melakukan pencantolan diperlukan pengetahuan yang mendalam serta perangkat khusus yang tidak mudah didapatkan. Seiring dengan perkembangan, anggapan tersebut tidak berlaku lagi, karena pada saat ini pencantolan pada kabel optik bisa dilakukan dengan mudah. Di pasaran banyak tersedia perangkat dengan harga relatif murah sehingga terjangkau oleh perorangan maupun korporasi. Hal yang sama terjadi pada pengetahuan mengenai teknologi komunikasi dan protokol, berbagai pengetahuan bisa didapatkan dengan mudah  baik dari buku-buku teks maupun dari internet.

B.2. Spoofing

Serangan spoofing adalah serangan yang dilakukan oleh seseorang  dengan cara berpura-pura menjadi salah satu user kepada pihak ketiga. Pihak ketiga ini bisa berupa lawan komunikasi atau operator penyedia jasa. Melalui serangan ini, si penyerang bisa mendapatkan akses terhadap suatu informasi. Dengan mendapatkan akses terhadap informasi tersebut, penyerang bisa melakukan berbagai hal mulai dari memanfaatkan, mengubah atau bahkan menghapus informasi tersebut sehingga menimbulkan kerugian terhadap banyak pihak.

Untuk bisa melakukan serangan spoofing pada jaringan ATM umumnya, diperlukan peralatan (tool) khusus yang digunakan untuk memanipulasi data protokol. Disamping itu, penyerangan spoofing juga biasanya dilakukan oleh orang yang memiliki pengetahuan memadai dan terbiasa beroperasi dalam lingkungan UNIX.

Terkoneksinya jaringan ATM dengan jaringan-jaringan public yang cenderung tidak aman menyebabkan pengamanan jaringan ATM terhadap serangan jenis ini relatif sulit.

B.3. Service Denial

ATM memiliki karakteristik connection-oriented. Koneksi yang terjadi disebut dengan Virtual Circuit (VC). VC ini  terbentuk akibat adanya pengiriman suatu sinyal yang disebut dengan sinyal-sinyal setup. Sedangkan pemutusan VC terjadi akibat adanya pengiriman suatu sinyal yang disebut dengan sinyal release atau drop party kepada VC yang sudah terbentuk sebelumnya.

Mekanisme serangan service denial pada jaringan ATM terjadi apabila seorang penyerang melakukan pengiriman sinyal release atau drop party secara berulang-ulang melalui salah satu switching kepada suatu VC. Switching yang dijadikan asal pengiriman sinyal harus berada pada alur dari VC yang akan diserang. Dengan mekanisme ini, maka VC tersebut akan terputus.

Serangan ini akan mengganggu komunikasi antara satu user dengan user lainnya dan dengan demikian akan mengganggu Quality of Service (QoS) yang diberikan ATM. Kombinasi jenis serangan dengan jenis serangan lainnya seperti eavesdropping, menyebabkan penyerang dapat dengan leluasa melakukan blokade terhadap koneksi dari salah satu user.

B.4. Pencurian Virtual Channel

Percurian virtual channel (VC) terjadi apabila salah satu user pada suatu switching menggunakan satu atau lebih VC untuk mengirimkan sel-sel data ke user lainnya. VC-VC tersebut sudah tersambung sebelumnya antar switching dimana user-user tersebut berada.

Mekanisme pencurian VC ini dilakukan apabila dua switching pada suatu jaringan ATM sudah saling terhubung dan siap melakukan komunikasi.  Misalkan VC1 dan VC2 adalah dua buah virtual channel yang akan berkomunikasi antara switching A dan switching B. VC1 dimiliki oleh user U1 dan VC2 dimiliki user U2. Pada komunikasi normal, jika A dan B sudah saling terhubung, maka A akan mengirimkan sel-sel kepada B melalui VC1 dan B akan mengirimkan sel-selnya kepada A melalui VC2. Dengan melakukan manipulasi pada header dari sel-sel yang akan dikirimkan, A kemudian dapat mengubah pengiriman sel-sel tersebut menjadi melalui VC2 dan B terpaksa melakukan pengiriman selnya melalui VC1. Hal ini bisa terjadi karena setiap switching akan meneruskan semua sel berdasarkan field VCI (Virtual Channel Identifier) atau VPI (Virtual Path Identifier) yang terdapat pada setiap header sel. Perubahan field-field tersebut bisa dilakukan pada A maupun B. Switching lainnya yang berada di antara A dan B tidak akan mengetahui perubahan ini dan akan memproses sel-sel palsu yang melalui VC2 sebagaimana halnya sel-sel asli.

Pada jaringan packet-switching publik, U1 tidak akan mendapatkan banyak keuntungan dengan manipulasi tersebut karena kualitas setiap VC relatif sama. Tetapi tidak demikian apabila manipulasi tersebut dilakukan pada jaringan ATM yang menyediakan jaminan QoS, U1 akan mendapatkan banyak keuntungan dengan cara mengubah pengiriman sel-selnya melalui virtual channel yang memiliki kualitas tinggi yang seharusnya tidak bisa digunakan U1. U1 bahkan bisa mendapatkan lebih banyak keuntungan apabila setiap user dikenai biaya komunikasi sesuai dengan kualitas VC yang dimilikinya. Pada kedua kasus tersebut di atas, U2 yang akan mengalami kerugian.

Mekanisme ini relatif sulit terjadi pada jaringan ATM yang dikelola oleh hanya satu institusi atau perusahaan karena kemungkinan terjadinya hubungan antara dua switching relatif kecil. Mekanisme ini akan lebih mudah terjadi pada suatu jaringan ATM yang sudah terhubung dengan berbagai jaringan ATM lainnya (ATM internetworking). Pada ATM internetworking, pengiriman sel-sel akan melalui beberapa jaringan ATM, sehingga kemungkinan terjadinya hubungan antar switching relatif lebih besar.

B.5. Traffic Analysis

Traffic analysis mengacu pada ancaman yang dilakukan hacker dengan cara mengumpulkan dan menganalisa informasi seperti volume data, waktu pengiriman dan pihak-pihak yang berkomunikasi pada suatu VC.

Volume dan waktu pengiriman data bisa memberikan banyak informasi bagi hacker untuk melakukan serangan lebih lanjut, meskipun data-data tersebut dienkripsi, karena enkripsi tidak berpengaruh terhadap volume dan durasi pengiriman data.

Hacker dapat mengetahui pihak-pihak yang berkomunikasi pada suatu VC dengan cara mengetahui informasi yang terkandung pada header sel (informasi field-field suatu header sel biasanya berupa clear text) dan dengan menggunakan pengetahuan mengenai routing table.

Ancaman lain yang berkaitan dengan serangan traffic analysis adalah convert channels yang dilakukan setelah penyerang mendapatkan berbagai informasi mengenai perilaku trafik. Dalam kasus ini, penyerang melakukan encoding informasi dengan cara menyesuaikan volume data, waktu pengiriman, VCI dan bahkan session key-nya dengan informasi yang biasa dikirim untuk kemudian dikirimkan kepada pihak lain.

C. Spesifikasi Kebutuhan Sistem Keamanan ATM

Langkah pertama yang perlu dilakukan dalam rangka membangun sistem keamanan ATM adalah mengidentifikasi kebutuhan akan kemanan komunikasi melalui jaringan ATM tersebut.

C.1. Spesifikasi Kebutuhan Sistem Keamanan

Beberapa hal yang harus dipertimbangkan dalam membahas keamanan suatu jaringan komunikasi adalah kebutuhan akan hal-hal sebagai berikut:

  • Otentifikasi/Ottentification: untuk menentukan orang atau user yang benar-benar berhak atas akses atau layanan.
  • Konfidensialitas/Confidentiality: untuk memberikan jaminan bahwa hanya orang atau user yang telah mendapatkan otorisasi yang boleh dapat mengakses data atau informasi.
  • Integritas/Integrity: untuk menjamin bahwa data yang ditransmisikan terbebas dari perubahan atau modifikasi yang dilakukan oleh pihak ketiga.
  • Non-repudiation: untuk menjamin bahwa jaringan komunikasi tersebut bisa memberikan laporan atau fakta-fakta mengenai penggunaan layanan oleh setiap user, sehingga seseorang tidak bisa menyangkal fakta bahwa dia telah benar-benar menggunakan atau melakukan akses terhadap jaringan.

Suatu jaringan public yang aman harus bisa memenuhi kebutuhan-kebutuhan di atas. Suatu sistem keamana jaringan juga harus bisa menyediakan layanan manajemen kunci (key management) yang aman (misalnya distribusi kunci) serta pengendalian akses bagi user.

Suatu sistem manajemen kunci yang bagus merupakan dasar bagi suatu sistem keamanan. Keamanan komunikasi berawal dari mekanisme enkripsi dan dekripsi. Jika kunci-kunci yang digunakan dalam suatu proses enkripsi/dekripsi dapat dengan mudah diketahui orang lain, maka sistem keamanan tersebut akan mudah dilumpuhkan. Dalam suatu sistem jaringan dimana terdapat banyak user dan pertukaran kunci ditransmisikan melalui jaringan, maka manajemen kunci dan distribusinya tidak bisa lagi dilakukan secara manual, tetapi harus dilakukan secara otomatis atau minimal semi otomatis. Bagaimana pengamanan kunci saat kunci tersebut ditransmisikan melalui jaringan, merupakan pekerjaan yang sulit, khususnya pada tahap awal perancangan suatu jaringan.

Otentifikasi merupakan hal yang penting dalam suatu sistem komunikasi. Pada jaringan public, termasuk didalamnya kunci, harus diotentifikasi untuk menghindari adanya pemalsuan.

Konfidensialitas tidak hanya diperlukan untuk melindungi data diakses oleh user yang tidak berhak, tetapi untuk menjamin keakuratan suatu proses distribusi kunci.

Integritas data diperlukan untuk menjamin bahwa data yang dikirim harus benar-benar data asli yang dikirim oleh orang atau user yang benar-benar mengirimkannya pula.

Manajemen kunci, otentifikasi, konfidensialitas dan integritas saling bergantungan satu sama lain. Kegagalan salah satu  fungsi akan membuat sistem tidak aman lagi.

Pengendalian akses bagi setiap user pada jaringan ATM memiliki peranan yang sangat penting dibandingkan pada jaringan lainnya. Jaringan ATM menyediakan adanya jaminan quality of services (QoS) dari setiap komunikasi yang dilakukan oleh user. QoS ini diterapkan dengan cara mengklasifikasikan trafik menjadi bermacam kelas dan mengalirkannya berdasarkan prioritas tertentu pula. Jika akses terhadap jaringan tidak dikendalikan, maka QoS yang disediakan oleh ATM menjadi sia-sia.

C.2. Kerangka Sistem Keamanan ATM

Pada masa lalu, perancangan layanan keamanan baru dilakukan atau bahkan dipikirkan setelah keseluruhan layanan dari suatu jaringan telah selesai di desain. Pendekatan ini ternyata memberikan hasil yang tidak baik bagi aspek keamanan. ATM Forum mencoba untuk mengantisipasi kegagalan dengan menempatkan layanan keamanan sebagai bagian yang tidak terpisahkan dari layanan ATM secara keseluruhan.

ATM Forum Security Working Group telah mengeluarkan sebuah draft mengenai kerangka (framework) keamanan ATM. Draft ini disusun dalam rangka memenuhi spesifikasi kebutuhan akan layanan kemanan ATM. Penyusunan draft ini dilakukan dengan mempertimbangkan berbagai sudut pandang, yaitu user/pelanggan, penyedia jasa/operator dan komunitas public. Uraian secara ringkas dari draft ini adalah sebagai berikut:

  • Konfidensialitas yaitu usaha untuk menjaga informasi yang ditransmisikan pada jaringan dari orang yang tidak berhak mengakses. Hal ini umumnya dilakukan melalui enkripsi pada informasi yang ditransmisikan sehingga tidak bisa terbaca oleh pihak yang tidak berhak. Enkripsi biasanya dilakukan dengan mentrasnformasikan data secara bit-per-bit dengan menggunakan suatu stream cipher atau secara block-per-block dengan menggunakan suatu block cipher.
  • Integritas Data yaitu menjaga informasi yang ditransmisikan pada jaringan agar terhindar dari modifikasi yang dilakukan oleh pihak lain sehingga informasi yang diterima sesuai dengan aslinya.
  • Accountability yaitu menjamin semua layanan pada jaringan ATM bisa memberikan laporan atau fakta-fakta yang dapat digunakan untuk keperluan pengelolaan layanan ataupun pemeriksaan serta pengendalian akibat terjadinya suatu serangan atau gangguan. Aspek accountability ini meliputi didalamnya otentifikasi dan non-repudiation.
  • Availability yaitu menjamin fasilitas dari jaringan ATM dapat digunakan oleh pihak-pihak yang berhak mendapatkannya. Tidak boleh terjadi service denial sehingga sangat penting dalam kaitannya dengan QoS.

Berdasarkan tujuan-tujuan utama di atas, fungsi-fungsi penting yang harus disediakan oleh sistem keamanan ATM adalah sebagai berikut:

  • Verifikasi identitas: sistem keamanan harus mampu menentukan dan memeriksa identitas dari setiap user dalam jaringan ATM.
  • Pengendalian akses dan otorisasi: suatu mekanisme yang tidak memungkinkan user mendapatkan akses terhadap sumber informasi yang tidak berhak diakses oleh user tersebut.
  • Perlindungan terhadap konfidensialitas: data yang tersimpan dan ditransmisikan pada jaringan terjamin kerahasiaannya.
  • Perlindungan terhadap integritas data: sistem keamanan harus bisa menjamin integritas dari data yang tersimpan dan ditransmisikan pada jaringan.
  • Akuntabilitas yang ketat: semua pihak tidak bisa menyangkal terhadap tanggung jawab dari tindakan yang dilakukannya serta dampak dari tindakan tersebut.
  • Log kegiatan: sistem keamanan bisa mendukung kemampuan untuk mengambil dan menyediakan informasi  mengenai kegiatan-kegiatan yang berkaitan dengan keamanan yang dilakukan oleh setiap komponen dalam jaringan.
  • Alarm: sistem keamanan harus bisa menyalakan alarm yang menunjukkan adanya kejadian-kejadian  yang berkaitan dengan keamanan.
  • Pemeriksaan: apabila terjadi kebocoran pada sistem keamanan, sistem harus bisa menganalisa data log yang berkaitan dengan keamanan.
  • Recovery keamanan: sistem keamanan harus mampu memperbaiki sistem dari upaya-upaya pembobolan baik upaya pembobolan yang berhasil maupun yang gagal.
  • Manajemen keamanan: sistem keamanan harus bisa mengelola layanan keamanan dalam rangka memenuhi semua fungsi-fungsi yang telah disebutkan sebelumnya. Termasuk didalamnya pengelolaan akan informasi-informasi yang berkaitan dengan layanan keamanan yang diterapkan.

Diantara sepuluh fungsi tersebut di atas, dua fungsi terakhir tidak secara langsung menyediakan layanan keamanan. Meskipun demikian, kedua fungsi tersebut sangat diperlukan dalam rangka mendukung operasional dan pemeliharaan layanan keamanan.

Kerangka Keamanan ATM

D. Spesifikasi Implementasi Keamanan ATM

Setelah mengidentifikasi kebutuhan akan sistem keamanan ATM, selanjutnya akan dibahas mengenai spesifikasi dalam rangka implementasi keamanan ATM. Pada bagian ini, pertama dijelaskan mengenai arsitektur ATM dan identifikasi lingkup keamanan ATM. Kemudian dibahas penempatan layanan keamanan pada arsitektur ATM. Setelah itu, dibahas mengenai Phase I Security Specification 01-03 yang dikeluarkan oleh ATM forum.

D.1. Lingkup Keamanan ATM

Lingkup keamanan ATM bisa dikelompokkan menjadi 3 (tiga) bidang sesuai dengan arsitektur dari ATM, yaitu:

  • Keamanan pada User Plane
  • Keamanan pada Control Plane
  • Keamanan pada Management Plane

Suatu bidang (plane) terbagi lagi menjadi beberapa elemen. Elemen-elemen yang terdapat pada user plane berfungsi untuk mentransmisikan data. Sementara elemen-elemen pada control plane memiliki fungsi yang berhubungan dengan pembentukan, pemutusan dan pengaturan. Elemen-elemen pada management plane melaksanakan fungsi pengelolaan dan koordinasi dengan user plane dan control plane. Fungsi khusus lainnya yang tercakup dalam management plane adalah berkaitan dengan Private Network to Network Interface (PNNI) yaitu berhubungan dengan penyusunan routing jaringan. Disamping elemen-elemen yang terdapat pada ketiga bidang tadi, masih terdapat elemen lainnya yang terlibat dalam proses transmisi data yaitu elemen-elemen yang terdapat pada ATM layer. Dengan demikian, cukup jelas bahwa implementasi dari setiap fungsi keamanan ATM, harus mencakup tiga bidang tersebut dan ATM layer.

D.2. Arsitektur Layanan Keamanan ATM

Sebagaimana terlihat pada Gambar 1, user plane adalah bagian yang berhubungan langsung dengan user. Untuk memenuhi kebutuhan user, user plane harus mampu menyediakan layanan keamanan yang meliputi layanan utama dan layanan tambahan. Layanan utama terdiri dari:

  • Pengendalian akses.
  • Otentifikasi.
  • Kerahasiaan dan integritas data.

Layanan keamanan tambahan meliputi: pertukaran kunci (key exchange), sertifikasi infrastruktur dan keamanan negosiasi.

Layanan-layanan tambahan tersebut sangat penting bagi suatu jaringan ATM, ATM menyediakan berbagai kelas trafik. Suatu koneksi tertentu akan membutuhkan tingkat keamanan tertentu pula. Dengan demikian, layanan keamanan pada user plane harus memiliki fleksibilitas sesuai dengan tingkat keamanan yang dibutuhkan.

Layanan keamanan yang harus ada pada control plane adalah layanan otentifikasi. Hal ini disebabkan tugas dari control plane adalah melakukan konfigurasi jaringan untuk menyediakan kanal komunikasi bagi user. Control plane akan berinteraksi dengan tabel switching untuk mengatur virtual channel. Jenis-jenis serangan yang telah dijelaskan diatas akan banyak berhubungan dengan fungsi control plane.

Layanan keamanan pada management plane minimal meliputi: pengamanan bootstrapping, melakukan otentifikasi partner komunikasi, pengamanan Interim Local Management Interface (LMI) dan pengamanan permanent virtual circuit. Sebagaimana telah dijelaskan sebelumnya bahwa pada kerangka keamanan ATM terdapat fungsi recovery dan manajemen keamanan dimana banyak bagian penting dari kedua fungsi ini harus diimplementasikan pada management plane.

Karena semua data harus ditransmisikan melalui ATM layer, maka layanan keamanan yang harus ada pada ATM layer meliputi otentifikasi, konfidensialitas dan integritas data. Layanan-layanan keamanan tersebut harus diimplementasikan secara:

  • end-to-end yaitu dari satu ATM endpoint ke ATM endpoint lainnya.
  • edge to edge yaitu dari satu border ATM switching ke border ATM switching lainnya.
  • ATM end point to switching yaitu dari satu ATM end point ke suatu switching ATM.

Dengan mengacu pada implementasi di atas, layanan integritas data merupakan hal yang sulit, karena setiap switching dapat melihat dan meneruskan sel-sel ATM.

D.3. Spesifikasi Keamanan ATM Tahap I

Sampai saat ini belum ada standarisasi untuk keamanan ATM. ATM Forum Security Working Group baru mengeluarkan spesifikasi untuk menjadi petunjuk dalam penerapan layanan keamanan ATM dimana sampai  saat ini telah keluar draft versi ketiga. Spesifikasi ini dinamakan Spesifikasi Keamanan Tahap I / Phase I Security Specification (01.03).

Materi pokok dari draft ini masih banyak berhubungan dengan mekanisme keamanan pada user plane dan control plane dan sedikit pada management plane. Bahasan secara garis besar adalah sebagai berikut:

  • User plane: meliputi mekanisme untuk meyediakan layanan otentifikasi, konfidensialitas, integritas data dan pengendalian akses.
  • Control plane: mekanisme otentifikasi.
  • Management plane: (belum ada bahasan).
  • Layanan pendukung:. meliputi mekanisme negosiasi dan parameter dari setiap layanan keamanan.
  • Layanan keamanan pada ATM layer.
  • Layanan keamanan pada ATM Adaptation Layer.

Tujuan utama dari Spesifikasi Keamanan ATM Tahap 1 adalah menyediakan infrastruktur keamanan ATM yang cukup fleksibel sehingga dapat mengakomodasi beberapa hal berikut:

  • Ukuran dari suatu algoritma dan kunci (key) yang akan digunakan.
  • Interoperabilitas antar vendor.
  • Kompatibilitas antar perangkat ATM sehingga tidak perlu menambahkan lagi fungsi keamanan pada saat upgrade suatu perangkat.
  • Jumlah user yang besar.
  • Kompatibilitas dengan spesifikasi keamanan ATM sebelumnya.

Layanan keamanan pada user plane diterapkan dengan basis VC baik untuk koneksi point-to-point maupun point-to-multipoint. Lingkup layanan pada user plane secara garis besar adalah sebagai berikut:

  • Pengendalian akses dilakukan melalui otentifikasi dengan menggunakan teknik kriptografi. Kriptografinya sendiri bisa menggunakan algoritma pertukaran kunci simetris maupun asimetris. Untuk keperluan ini diperlukan adanya standarisasi informasi dan mekanisme pertukaran informasi.
  • Konfidensialitas data dilakukan dengan basis sel dimana pengiriman setiap sel akan dienkripsi sebelumnya sehingga tidak bisa diakses oleh user yang tidak berhak. Enkripsi ini tidak akan mengubah header setiap sel.
  • Integritas data diimplementasikan pada level Service Data Unit (SDU) dari AAL. Sebuah signature akan dilekatkan dan dihitung berdasarkan setiap ALL-SDU sehingga penerima pesan dapat memeriksa apakah data tersebut telah terkorupsi atau tidak. Layanan integritas data memiliki dua buah pilihan yaitu pilihan untuk memberikan proteksi pada replay/reordering dan pilihan untuk tidak memberikan proteksi. Pada pilihan dengan menyediakan proteksi, suatu bilangan ditambahkan pada AAL-SDU secara berurutan sebelum perhitungan signature dilakukan. Dengan demikian signature tersebut akan memberikan proteksi baik kepada data maupun bilangan berurutan yang diikutkannya. Dengan demikian, selanjutnya penerima pesan dapat menghapus AAL-SDU yang lama berdasarkan informasi dari bilangan berurutan yang dilekatkan AAL-SDU yang baru.

Layanan keamanan pada control plane masih belum sempurna. Saat ini baru menyediakan fungsi otentifikasi untuk sinyaling. Sinyal-sinyal ini akan terikat pada pesan yang dikirimkan oleh suatu sumber. Ikatan ini bisa digunakan untuk memeriksa apakah pesan tersebut berasal dari sumber yang sebenarnya atau dari pihak lain. Dengan mekanisme ini, jaringan ATM akan terlidung serangan yang bersifat memanipulasi sinyal sepeti misalnya serangan service denial.

Untuk jenis layanan pendukung (supporting service), spesifikasi ini telah mengakomodasi beberapa masalah, antara lain:

  • Keamanan protokol untuk pengiriman pesan dan negosiasi.
  • Keamanan pengiriman pesan pada control plane.
  • Keamanan pengiriman pesan pada user plane.
  • Pertukaran kunci.
  • Update session key.
  • Dokumentasi infrastruktur.

Layanan-layanan keamanan tersebut di atas akan memberikan suatu dasar bagi implementasi sistem keamanan ATM.

D.4. Kelemahan dari Spesifikasi Keamanan Tahap I

Spesifikasi Keamanan Tahap 1 telah mengakomodasi berbagai masalah yang ada. Namun demikian, secara keseluruhan spesifikasi ini masih jauh dari harapan. Beberapa hal yang menjadi sorotan adalah:

  • Layanan keamanan pada management plane belum tercakup dalam spesifikasi ini.
  • Interoperabilitas hanya terbatas pada user plane dan control plane.
  • Belum adanya mekanisme untuk melakukan otentifikasi untuk PNNI. Apabila otentifikasi ini belum ada maka kemungkinan akan terjadi serangan terhadap informasi routing yang tidak terotorisasi dan modifikasi informasi routing yang tidak memiliki otorisasi tersebut.
  • Belum banyak algoritma yang bisa dipilih untuk digunakan pada proses nogosiasi. Saat ini baru terdapat sebuah algoritma utama dan sebuah alagoritma alternatif.
  • Otentifikasi pada control plane belum memberikan solusi yang komprehensif.
  • Spesifikasi belum mencakup keamanan jaringan ATM untuk komunikasi wireless.

E. Pertimbangan Dalam Implementasi

Jaringan ATM memiliki karakteristik khusus. Karakteristik tersebut antara lain switching pada jaringan ATM merupakan multiplexer sel berkecepatan tinggi dan jaringan ATM merupakan jaringan yang connection-oriented. Adanya karakteristik tersebut menjadikan implementasi sistem keamanan pada jaringan ATM tidak mudah dilaksanakan dan menjadi tantangan tersendiri. Banyak pertimbangan dalam merancang sistem kemanan ATM. Berikut ini beberapa pertimbangan yang bisa digunakan dalam merancang sistem keamanan ATM.

E.1. Perangkat Enkripsi

Saat ini perangkat enkripsi yang bisa bekerja dengan kecepatan ATM (di atas 100 Mbps) masih terbatas. Baru terdapat dua jenis perangkat yang cocok untuk melakukan kriptografi pada ATM: Application Spesific Integrated Circuits (ASIC) dan Reconfigurable Hadware (Erasable Programmable Logic Devices / Field Gate Arrays (EPLD/EPGA)).

ASIC memiliki beberapa keunggulan dibanding perangkat Reconfigurable (RC). Pertama, perangkat ini bisa bekerja lebih cepat, karena perangkat ini didesain khusus untuk kasus ini, sedangkan RC merupakan perangkat logika generic yang diprogram dengan menggunakan bantuan matrik-matrik switching dan elemen logika yang bisa dikonfigurasi. Matrik-matrik ini menyebabkan variabel delay menjadi lebih besar karena adanya penggerogotan kapasitas dan resistansi setiap switching. Elemen logika sering menunjukkan performansi yang kurang bagus dibandingkan dengan gerbang-gerbang pada silicon biasa. Kedua, ASIC biasanya berukuran lebih kecil dan mengkonsumsi daya lebih sedikit sedangakan RC memiliki overhead logika. Kelemahannya ASIC adalah tidak mampu memberikan fleksibilitas terhadap suatu perangkat yang bisa dikonfigurasi ulang.

Perangkat reconfigurable (RC) memiliki beberapa keunggulan dibandingkan dengan perangkat ASIC biasa, yaitu:

  • Algorithm agility – perangkat dapat direkonfigurasi sehingga bisa menyederhanakan pemerograman ulang yang diperlukan oleh suatu algoritma baru. Sedangkan pada perangkat ASIC, suatu perangkat lain yang terpisah harus siap sampai saatnya diperlukan.
  • Memerlukan waktu perancangan dan verifikasi lebih singkat, karena proses perancangan dapat diverifikasi dengan cepat tanpa harus menunggu proses pabarikasi.
  • Perubahan bisa dengan mudah diakomodasi memungkinkan upgrade perangkat dilakukan tanpa harus betul-betul mengganti perangkat tersebut tetapi cukup dengan melakukan pemerograman ulang.

Perangkat RC bisa menjadi pilihan ideal dalam implementasi kriptografi tetapi masih menyisakan banyak masalah disamping masalah-masalah yang telah disebutkan di atas, yaitu antara lain: kemampuan perangkat RC mengakomodasi aplikasi kriptografi dan berapa banyak rangkaian RC yang diperlukan untuk mempertahankan throughput ATM (OC-12 ~ 622 Mbps).

E.2. Algoritma Simetris

Terdapat beberapa algoritma simetris yang bisa digunakan secara efektif untuk pengamanan jaringan ATM. Pemilihan algoritma bisa dilakukan dengan menggunakan kriteria baku, antara lain:

  • Ukuran blok dari suatu algoritma: harus bisa diuraikan menjadi 384 bit (sesuai dengan ukuran ATM). Hal ini memungkinkan efisiensi yang lebih besar.
  • Ukuran blok dari suatu algoritma harus relatif lebih besar atau sama dengan 64 bits sehingga pola-pola kecil dalam plaintext tidak menimbulkan chipertext yang dengan mudah diguanakan untuk melakukan serangan “mengganti chipertext“.
  • Kombinasi antara (1) dan (2) membatasi ukuran blok suatu algoritma menjadi 64, 96, 128, 196 atau 384 bit.
  • Algoritma harus memiliki kekuatan minimal setingkat DES, dan diharapkan lebih tinggi lagi sehingga bisa memberikan keamanan untuk jangka panjang.
  • Algoritma harus mudah diimplementasikan pada perangkat yang digunakan untuk mendukung kecepatan ATM (45 – 622 Mbps) maupun perangkat penyediaan eksekusi paralel yang diperlukan untuk mempertahankan kecepatan tersebut.
  • Algoritma harus mencakup key agility dengan basis sel per sel.
  • Detail dari algoritma harus tersedia secara publik.

Berdasarkan kriteria-kriteria diatas, berikut ini adalah algoritma yang bisa diterapkan pada ATM.

Algoritma Enkripsi

Saat ini ATM Forum sedang membahas algoritma mana yang akan menjadi standar. Beberapa pertimbangan yang menjadikan keputusan belum dapat diambil adalah larangan pemerintah Amerika Serikat terhadap ekspor kriptografi di atas 40 bit.

E.3. Algoritma Yang di Setujui

ATM forum telah menyetujui protokol dan algoritma berikut untuk digunakan dalam keamanan ATM.

Protokol dan Algoritma Pada ATM

E.4. Metode Operasi

Suatu algoritma umumnya hanya menyediakan fungsi utama untuk melakukan enkripsi data. Metode atau jenis operasi tertentu muncul sehingga memungkinkan suatu algoritma melakukan proses enkripsi yang disesuaikan dengan kebutuhan tertentu dari suatu aplikasi. Berikut ini adalah beberapa metode operasi yang biasa digunakan:

  • ECB (Electronic Code Block) merupakan metode operasi yang paling mudah diimplementasikan. Metode ini menyederhanakan proses enkripsi dan dekripsi dengan secara langsung memetakan antara satu plaintext dengan ciphertext, sehingga tidak memerlukan adanya umpan balik atau operasi tambahan.
  • CBC (Chiper Block Chaining) merupakan metode operasi yang langsung memasukan ciphertext yang dihasilkan dari operasi sebelumnya kedalam suatu operasi XOR dengan plaintext sebelum plaintext tersebut menghasilkan blok cipher dengan urutan tertentu.
  • CFB (Cipher Feedback) merupakan metode operasi yang memasukan blok plaintext kedalam operasi XOR dengan menggunakan blok ciphertext sebelumnya yang sudah dienkripsi.
  • OFB (Output Feedback) merupakan metode operasi yang memasukkan blok plaintext saat ini kedalam operasi XOR dengan menggunakan Initialization Vektor (IV) sebelumnya yang sudah dienkripsi.
  • Counter, merupakan metode operasi yang memasukan plaintext kedalam operasi XOR dengan menggunakan counter sebelumnya yang telah dienkripsi.
  • Bypass, metode operasi ini disediakan untuk mendapatkan interoperability maksimum dengan proses lainnya. Metode operasi Controlled Bypass misalnya, memungkinkan suatu koneksi yang tidak aman karena membypass tahap enkripsi. Dengan cara seperti ini, user bebas memilih suatu metode operasi yang diperlukan untuk suatu koneksi tertentu.

E.5. Sinkronisasi

Karena adanya ketergantungan terhadap algoritma kriptografi, setiap perangkat keamanan harus siap untuk melakukan sinkronisasi dengan perangkat lainnya. Beberapa metode operasi sudah memiliki sinkronisasi sendiri, dan beberapa metode lainnya memerlukan bentuk komunikasi atau kesepakatan bersama yang diperlukan untuk menjaga kerahasiaan kunci. Metode operasi dengan umpan balik biasanya memerlukan sinkronisasi manual.

ATM memperlihatkan adanya masalah khusus berkaitan dengan algoritma kriptografi. ATM memungkinkan suatu sel untuk dibuang dari suatu aliran (stream) data tanpa harus memberikan notifikasi kepada masing-masing pihak. Untuk mengetahui satu atau lebih sel telah hilang, merupakan tugas dari AAL Layer atau layer lainnya yang lebih tinggi. Metode operasi dengan umpan balik bisa mengetahui suatu stream data telah terkorupsi sebagian atau seluruhnya. Dengan demikian, suatu mekanisme harus disediakan untuk menjamin sinkronisasi ulang bisa dilaksanakan. Hal ini biasanya dilakukan melalui penggabungan signature yang terdapat pada AAL PDU dengan sel OAM (Operation Administration and Maintenance). AAL Layer biasanya akan menambahkan signature pada awal dari suatu pesan (Beginning of Message / BOM) dan pada akhir dari pesan tersebut (End of Message / EOM). Sistem bisa menambahkan mekanisme lain sehingga memungkinkan sinkronisasi ulang dapat dilakasanakan pada EOM dari setiap sel yang diterima. Dalam banyak kasus, sebuah sel OAM bisa digunakan apabila EOM sel itu sendiri telah terkorupsi.

E.6. Paralelisasi

Apabila perangkat kriptografi yang tersedia tidak cukup cepat untuk mempertahankan kecepatan ATM yang diinginkan (misalnya 622 Mbps), perangkat-perangkat tersebut harus dioperasikan secara paralel. Sebagai contoh, jika sebuah chip tertentu beroperasi dengan blok berukuran 64 bit pada kecepatan 100 Mbps, enkripsi dilakukan pada ATM layer, maka diperlukan [(48/53 * 622) / 100] = [5.63] = 6 buah chip untuk mendapatkan kecepatan ATM 622 Mbps. Rasio 48/53 merupakan rumus yang digunakan untuk mengkompensasi perbedaan ukuran sel.

Muncul beberapa akibat dari penggunaan beberapa chip secara paralel yaitu kebutuhan akan IV-IV baru yang diperlukan oleh setiap chip pada suatu metode operasi tertentu.

E.7. Key Storage

Sistem kriptografi yang berlaku saat ini terdiri dari kriptografi public-key dan private key. Pada sistem kriptografi public key, proses enkripsi dan dekripsi menggunakan kunci yang berbeda. Sedangkan pada sistem kriptografi private key proses enkripsi dan dekripsi menggunakan kunci yang sama. Keuntungan dari penggunaan public key adalah bahwa informasi (termasuk informasi mengenai private key) tidak perlu di distribusikan kepada seluruh user. Kelemahannya adalah bahwa algoritma yang digunakan berjalan lambat dibandingkan dengan algoritma private key dan memerlukan ukuran kunci yang relatif besar (biasanya 768 – 1024 bit).

Algoritma private key mengharuskan user untuk mendistribusikan suatu kunci yang dapat digunakan bersama kepada partner komunikasi. Keuntungan private key adalah proses enkripsi cepat dan ukuran kunci relatif lebih kecil. Sedangkan kelemahannya adalah user harus mendistribusikan kunci sehingga kunci tersebut harus ditransmisikan melalui saluran yang aman.

Implementasi pada jaringan ATM bisa dilakukan dengan mengkombinasikan kedua sistem kriptografi di atas, yaitu mengamankan kanal komunikasi dengan public key, menegosiasikan session key, dan proses komunikasi sisanya dilakukan dengan memanfaatkan kecepatan dan kekuatan dari private key. Demikian juga, layanan keamanan seperti integritas data dan otentifikasi pengirim pesan bisa dilakukan dengan menggunakan signature digital public key. Mekanisme ini di istilahkan sebagai mekanisme hibrid, yaitu menerapkan kelebihan dari beberapa jenis algoritma untuk menghasilkan suatu sistem keamanan yang kuat dan memiliki performansi bagus.

E.8. Session Key

Session key merupakan kunci temporer yang bisa digunakan selama jangka waktu (session) tertentu. Bisa dibandingkan dengan public key yang merupakan kunci permanent dalam suatu proses enkripsi. Konsep ini bisa diterapkan untuk ATM karena ATM bersifat connection-oriented. Pada ATM, validitas suatu session key bisa di korelasikan dengan durasi dari suatu virtual connection, begitu VC terputus maka validitas session key tersebut berakhir. Namun demikian, penggunaan session key pada ATM memerlukan adanya memori pada perangkat untuk menyimpan session key dari setiap VC. Berikut ini adalah contoh perhitungan kebutuhan memori:

  • Sistem ATM dengan 622 Mbps (OC-12) menggunakan 100 Mbps chip DES secara paralel.
  • Setiap chip memiliki ukuran blok 64 bit, 64 bit IV dan 56 bit session key. Dengan demikian diperlukan 6.64 + 56 = 55 Byte media penyimpanan untuk setiap VC.

Apabila pada contoh di atas sistem ATM menyediakan 1024 koneksi, maka diperlukan sekitar 57 KB RAM untuk menyimpan  kunci-kunci tersebut. Kalkulasi ini tergantung juga pada algoritma private key dan metode operasi yang digunakan.

E.9. Enkripsi Public Key dan Signature Key

Kriptografi public key digunakan untuk melakukan otentifikasi terhadap partner komunikasi atau remote host dan untuk proses negosiasi session key. Untuk mencapai tujuan tersebut, public key dan private key yang digunakan untuk proses enkripsi dan signature harus disimpan pada perangkat. Kunci-kunci tersebut bisa berukuran antara 768 – 1024 bit, sesuai dengan tingkat keamanan yang dibutuhkan. Kebutuhan memori untuk mengimplementasikan jenis RSA tertentu bisa sekitar 4 kbit + 4 kbit yang digunakan untuk enkripsi maupun signature.

E.10. Otentifikasi

Layanan otentifikasi dan integritas data bisa memerlukan media penyimpanan tambahan pada perangkat yaitu dalam rangka menghasilkan Messages Authentification Codes (MAC). Untuk menghasilkan kode MAC diperlukan perhitungan checksum dari suatu pesan yang telah melalui proses kriptografi. Cheksum ini harus disimpan sementara sampai semua bit dari suatu pesan telah diterima. Dengan demikian, kebutuhan akan memori buffer tersebut akan tergantung kepada jenis layer tempat layanan otentifikasi dan integritas data di implementasikan. Kebutuhan ini besarnya sama dengan ukuran checksum dikalikan dengan jumlah VC. Sebagai contoh, jika sistem ATM dengan 1024 koneksi, menggunakan hash MD5 untuk menghasilkan MAC, maka dibutuhkan media penyimpan sekitar 16 KB.

E.11. Komputasi Numerik

Perhitungan untuk signature dengan public key dan enkripsi dengan private key perlu dilakukan pada perangkat dengan tujuan untuk mempertahankan rate dari ATM. Sebagai suatu alternatif, sebagian fungsi kriptografi dilaksanakan pada chip eksternal (tentunya dengan mempertimbangkan chip yang digunakan untuk proses ATM itu sendiri). Meskipun komputasi enkripsi private key bisa dilakukan secara eksternal, sebagian besar komputasi ini harus dilakukan pada chip lokal. Hal ini untuk menjamin throughput ATM yang tinggi. Arithmatic Logical Unit (ALU) bertanggung jawab untuk melakukan perhitungan ini dengan menggunakan banyak operasi matematis.

F. Penutup

ATM mungkin merupakan teknologi internetworking yang memiliki kompleksitas paling tinggi. Untuk pengamanannya lebih sulit dibandingkan perancangan teknologi ATM itu sendiri. Aspek keamanan ATM baru pada tahap pembahasan awal. Masih membutuhkan banyak waktu untuk mengetahui keseluruhan aspek keamanan ATM.

Misi utama ATM adalah menyediakan platform jaringan dan infrastruktur komunikasi yang seragam. Keamanan ATM, sebagai bagian dari infrastruktur, harus fleksibel dan kompatibel dengan teknologi lainnya. Tuntutan ini akan menimbulkan banyak kesulitan terhadap implementasi keamanan ATM.

Upaya-upaya terus dilakukan, ATM Forum Security Working Group telah mengeluarkan draft mengenai spesifikasi dan kerangka keamanan ATM. Masalah-masalah lainnya sudah dan terus dibahas dalam ATM Forum. Semakin banyak dan besar masalah yang teridentifikasi, akan menjadikan keamanan ATM semakin jelas dan semakin baik.

Dari aspek dukungan vendor, saat ini sudah tersedia beberapa perangkat untuk keamanan ATM. Sebagian besar memang masih merupakan perangkat enkripsi. Realisasi ini relatif kecil dibandingkan dengan luasnya cakupan keamanan ATM, namun demikian hal ini akan memberikan banyak pengalaman dalam rangka implementasi layanan keamanan pada jaringan ATM.

Share