INSTITUT TEKNOLOGI DAN SAINS AL-KAMAL IF4138 KRIPTOGRAFI MOCHAMAD BETA AUDITAMA Buku Referensi Cyptography and Network Security : Principles and Practices (Global Edition 7th ed.). (2018). Pearson. Tujuan Pembelajaran • Mendeskripsikan atribut2 keamanan yg perlu dimiliki untuk memper- oleh confidentiality, integrity, dan availability. • Mendeskripsikan arsitektur keamanan X.800 yang didesain berdasar- kan arsitektur protokol OSI. • Mendiskusikan beragam tipe ancaman dan serangan keamanan, dan memberikan contoh2nya yang biasa dihadapi oleh sejumlah kategori aset komputer dan jaringan. • Mendeskripsikan prinsip2 desain keamanan yang fundamental. • Mendiskusikan tentang penggunaan attack surfaces dan attack trees. • Menyebutkan dan mendeskripsikan secara singkat ttg organisasi2 yg berperan dalam mengembangkan standar2 kriptografi. PENDAHULUAN Pendahuluan • Seluruh pembahasan yang akan kita pelajari tidak akan dua lepas dari dua area besar, yaitu algoritma & protokol kriptografi dan keamanan jaringan dan Internet. • Algoritma & protokol kriptografi memiliki empat area : ❖ Enkripsi simetrik : Digunakan untuk merahasiakan konten yang termuat dalam blok data atau aliran data (i.e., sekuens bit) berukuran berapapun (besar atau kecil), seperti pesan, dokumen, kunci enkripsi, dan password. ❖ Enkripsi asimetrik : Digunakan untuk merahasiakan konten blok data berukur- an kecil, seperti kunci enkripsi dan nilai keluaran fungsi hash, yang diperlukan ketika mengimplementasikan teknik tanda tangan digital. (cont.) Pendahuluan ❖ Algoritma integritas data : Digunakan utk memproteksi blok data, umumnya berupa pesan, dari tindakan modifikasi secara ilegal. ❖ Protokol autentikasi : Ini merupakan skema berbasis algoritma2 kriptografi yg bertujuan untuk mengautentikasi identitas dari seluruh entitas yg terlibat dlm suatu komunikasi. • Keamanan jaringan dan Internet terdiri dari seluruh langkah yang di- perlukan utk mencegah, memproteksi, mendeteksi, dan mengatasi pelanggaran keamanan pd suatu transmisi informasi. Berikut sejum- lah contoh dari pelanggaran keamanan yang dimaksud : 1. Entitas A mengirimkan suatu dokumen ke entitas B. Dokumen ini memuat in- formasi rahasia (e.g., daftar gaji) yang tidak boleh terpublikasi. Entitas C yang tidak memiliki otoritas untuk membaca dokumen mampu memonitor transmi- si antara entitas A dan B serta memperoleh salinan dari dokumen tersebut. (cont.) Pendahuluan 2. Seorang manajer D yang bertugas mengelola suatu jaringan mentransmisikan suatu pesan ke komputer E yang terpasang di jaringannya. Pesan ini mengins- truksikan komputer E untuk memperbaharui suatu dokumen otorisasi yang di- simpannya untuk menyertakan identitas dari sejumlah pengguna baru yang di- berikan hak akses ke komputer E. Entitas F mencegat pesan ini saat transmisi, mengubah kontennya dengan menambah atau menghapus sebagian konten, dan kemudian meneruskan pesan yang telah dimodifikasi tersebut ke kompu- ter E. Komputer E menerima pesan yg seakan-akan dikirimkan oleh manajer D, dan memperbaharui dokumen otorisasi sesuai dengan konten pesan yg telah dimodifikasi oleh entitas F. 3. Masih berkaitan dengan contoh nomor 2 di atas, daripada entitas F mencegat pesan yang ditransmisikan oleh manajer D ke komputer E, entitas F membuat sendiri pesannya lalu mentransmisikannya ke komputer E yang seakan-akan berasal dari manajer D. (cont.) Pendahuluan 4. Seorang pegawai dipecat dari suatu perusahaan. Manajer atas pegawai terse- but mengirimkan suatu pesan ke system server perusahaan untuk menginvali- dasi akun pegawai tersebut agar pegawai tdk dapat lagi mengakses dokumen2 milik perusahaan. Pegawai yang dipecat dapat mencegat pesan tersebut dan menundanya cukup lama sehingga pegawai mengakses dokumen2 rahasia mi- lik perusahaan utk terakhir kalinya. Setelah selesai diakses, pesan diteruskan dan aksi invalidasi dilakukan. Pada kasus ini, sangat mungkin tidak ada pihak yg tahu atas aksi pegawai mengakses system server perusahaan untuk terakhir kalinya, dan aksi ini dapat berlangsung dengan durasi waktu yang cukup lama. 5. Suatu pesan dikirimkan dari seorang pelanggan ke suatu pialang saham yang berisikan sejumlah instruksi untuk melakukan beragam transaksi. Setelah itu, seluruh atau sebagian investasi kehilangan nilainya (mengalami kerugian), dan pelanggan mengelak telah mengirimkan pesan tersebut. KONSEP2 KEAMANAN KOMPUTER Definisi Keamanan Komputer • Definisi keamanan komputer menurut Computer Security Handbook yang dipublikasikan oleh organisasi NIST ialah : Proteksi yang diberikan ke suatu automated information system (AIS) dalam rang- ka untuk mencapai tiga objektif, yaitu menjaga integritas, ketersediaan, dan kera- hasiaan pd seluruh resource AIS (termasuk hardware, software, firmware, infor- masi/data, dan telekomunikasi). Definisi Keamanan Komputer • Dari definisi keamanan komputer sebelumnya, terdapat tiga objektif utama dari keamanan komputer : ❖ Kerahasiaan : Objektif ini meliputi dua konsep, yaitu kerahasiaan data dan pri- vasi. Kerahasiaan data berfungsi untuk menjamin informasi privat atau rahasia tidak terpublikasi (bocor) ke entitas2 yg tdk memiliki otoritas. Privasi berfungsi untuk menjamin agar entitas dapat mengendalikan bagaimana informasi yang berkaitan dengannya dikumpulkan & disimpan, serta dari siapa & kepada siapa informasi tersebut boleh diketahui. ❖ Integritas : Objektif ini meliputi dua konsep, yaitu integritas data dan integritas sistem. Integritas data berfungsi utk menjamin informasi (baik yang disimpan maupun yang sedang ditransmisikan) dan program hanya dipertukarkan dgn cara yang telah disepakati sebelumnya dan terotoritas. Integritas sistem ber- fungsi utk menjamin suatu sistem beroperasi tanpa adanya gangguan, tepat- nya bebas dari aksi manipulasi terhadap sistem secara tidak terotoritas. (cont.) Definisi Keamanan Komputer ❖ Ketersediaan : Objektif ini menjamin suatu sistem bekerja secara promptly (tanpa adanya delay/penundaan) dan layananannya tidak menolak permin- taan dari entitas2 yang memiliki otoritas. • Tiga objektif keamanan komputer disebut juga sebagai CIA triad; CIA merupakan singkatan dari confidentiality (kerahasiaan), integrity (in- tegritas), dan availability (ketersediaan). • Menurut standar FIPS 199 yg dibuat oleh NIST, CIA triad dibilang telah diterapkan pd suatu informasi atau suatu sistem informasi apabila te- lah telah mengimplementasikan requirement berikut : ❖ Kerahasiaan : Mampu secara kontinyu memastikan akses ke- dan diseminasi terhadap- informasi (atau sistem informasi) hanya dilakukan scr terotoritas. (cont.) Definisi Keamanan Komputer ❖ Integritas : Mampu memberikan perlindungan terhadap informasi (atau sistem informasi) dari aksi modifikasi atau perusakan yang ilegal, termasuk menjamin nonrepudiasi dan autentisitas dari informasi tersebut. ❖ Ketersediaan : Mampu menyediakan akses ke- dan penggunaan- informasi se- cara tepat waktu dan reliabel. • Standar FIPS 199 juga mendefinisikan a loss of security dari CIA triad : ❖ Kerahasiaan : Kerahasiaan dinyatakan loss (hilang) apabila informasi dapat di- ketahui oleh entitas yang tidak terotoritas. ❖ Integritas : Integritas dinyatakan loss (hilang) apabila informasi dapat dimodifi- kasi atau dirusak secara tidak terotoritas. ❖ Ketersediaan : Ketersediaan dinyatakan loss (hilang) apabila akses ke- atau penggunaan- informasi atau sistem informasi mengalami gangguan. Definisi Keamanan Komputer • Meskipun tiga objektif keamanan pada CIA triad telah dinilai mencu- kupi, sebagian area dari bidang keamanan masih merasa perlu adanya dua objektif keamanan lainnya : ❖ Autentisitas : Objektif keamanan ini memastikan bahwa suatu informasi itu asli dan dapat diverifikasi & dipercaya; hal ini diperlukan agar diperoleh keya- kinan akan validitas dari transmisi pesan, pesan itu sendiri, dan entitas pengi- rim pesan. Dengan demikian, autentisitas berfungsi untuk memastikan bahwa entitas pengirim benar sesuai dengan identitas yang diberikan, dan setiap ma- sukan yang diterima oleh sistem berasal dari sumber yang terpercaya. ❖ Akuntabilitas : Objektif keamanan ini memastikan bahwa segala aksi yg telah dilakukan oleh suatu entitas dapat ditelusuri kembali secara unik ke entitas tersebut. Objektif keamanan ini mendukung nonrepudiasi, deterrence (pence- gahan), fault isolation (i.e., mengisolasi modul yg mengalami masalah keaman- an), intrusion detection & prevention, after-action recovery (e.g., proses pe- mulihan setelah terjadinya eror), dan tuntutan hukum (i.e., cyber forensic). Definisi Keamanan Komputer • Figure 1.1 di bawah ini memperlihatkan lima konsep keamanan yang meliputi CIA triad, autentisitas, dan akuntabilitas. Contoh Real-world dari CIA Triad • Sekarang kita akan melihat contoh CIA triad pada sejumlah aplikasi di dunia nyata. Namun sebelumnya, kita akan menggunakan tiga level impact yang didefinisikan oleh standar FIPS 199 pada contoh ketika salah satu objektif keamanan dilanggar (i.e., loss pada kerahasiaan, integritas, atau ketersediaan) sbb : ❖ Low : Pelanggaran objektif keamanan diperkirakan hanya memberikan impact buruk yg sedikit terhadap individu atau operasi & aset organisasi. Dengan de- mikian, terjadinya loss pada kerahasiaan, integritas, atau ketersediaan hanya (i) menyebabkan degradasi pada kapabilitas organisasi dalam menyelesaikan misinya hingga ke derajat dan durasi yang menyebabkan organisasi masih da- pat melaksanakan fungsi utamanya, tetapi terasa penurunan efektivitasnya; (ii) menimbulkan kerusakan minor pada aset2 organisasi; (iii) memberikan ke- rugian minor secara finansial; atau (iv) menyakiti tiap individu dari organisasi di level minor. (cont.) Contoh Real-world dari CIA Triad ❖ Moderate : Pelanggaran objektif keamanan diperkirakan memberikan impact yg cukup signifikan terhadap individu atau operasi & aset organisasi. Dgn de- mikian, terjadinya loss pada kerahasiaan, integritas, atau ketersediaan dapat (i) menyebabkan degradasi pada kapabilitas organisasi dalam menyelesaikan misinya hingga ke derajat dan durasi yang menyebabkan organisasi masih da- pat melaksanakan fungsi utamanya, tetapi efektivitasnya menurun cukup sig- nifikan; (ii) menimbulkan kerusakan yg cukup signifikan pada aset2 organisasi; (iii) memberikan kerugian finansial yang cukup signifikan; atau (iv) menyakiti tiap individu dari organisasi yang cukup signifikan, tetapi tidak sampai mem- bahayakan nyawa atau meninggal. (cont.) Contoh Real-world dari CIA Triad ❖ High : Pelanggaran objektif keamanan diperkirakan memberikan impact yang parah terhadap individu atau operasi & aset organisasi. Dengan demikian, ter- jadinya loss pd kerahasiaan, integritas, atau ketersediaan dapat (i) menyebab- kan degradasi yg parah atau bahkan melumpuhkan kapabilitas organisasi dlm menyelesaikan misinya hingga ke derajat dan durasi yang menyebabkan orga- nisasi tdk dapat melaksanakan satu atau lebih fungsi utamanya; (ii) menimbul- kan kerusakan mayor pd aset2 organisasi; (iii) memberikan kerugian mayor se- cara finansial; atau (iv) menyakiti tiap individu dari organisasi hingga memba- hayakan nyawa atau meninggal. Contoh Real-world dari CIA Triad • Contoh kerahasiaan : ❖ Informasi nilai siswa merupakan suatu aset yg kerahasiaannya tergolong high bagi tiap siswa. Di Amerika Serikat, aksi mendiseminasikan informasi seperti ini diregulasikan oleh Family Educational Rights and Privacy Act (FERPA). Infor- masi nilai siswa hanya boleh diketahui oleh siswa, orang tua siswa, dan pega- wai yang memerlukan nilai siswa tersebut untuk menyelesaikan pekerjaannya. ❖ Tingkat kerahasiaan untuk informasi pendaftaran siswa baru tergolong mode- rate. Meskipun informasi ini masih dicakup oleh FERPA, informasi ini sering di- lihat oleh banyak orang tiap waktunya shg kemungkinannya dijadikan target ti- dak setinggi informasi nilai siswa, dan tidak terlalu memberikan impact yg sig- nifikan apabila terpublikasi. ❖ Informasi directory, seperti daftar siswa atau daftar fakultas/departemen, di- kategorikan sebagai kerahasiaan yang low atau bahkan tdk sama sekali. Infor- masi ini umumnya dapat diakses secara bebas dan ditampilkan di laman web milik suatu sekolah. Contoh Real-world dari CIA Triad • Contoh integritas : ❖ Bayangkan suatu rumah sakit yg menyimpan informasi alergi dari seluruh pa- siennya di suatu database. Kewajiban rumah sakit ialah harus menyediakan informasi yang benar dan terkini ke seluruh dokter. Apabila seorang pegawai (e.g., suster) yang memiliki otoritas untuk melihat dan mengubah informasi alergi pasien secara sengaja memalsukan data alergi pasien dgn tujuan untuk merugikan rumah sakit, database harus sesegera mungkin dipulihkan ke kon- disi yg benar, dan harus mampu menelusuri kembali eror hingga ditemui org yang bertanggung jawab. Informasi alergi pasien merupakan contoh aset de- ngan tingkat integritas yang tergolong high karena ketidakakuratan informasi dpt menyakiti pasien secara serius atau bahkan meninggal yg akhirnya mem- bebani rumah sakit dengan tanggung jawab yang berat. (cont.) Contoh Real-world dari CIA Triad ❖ Contoh real-world dengan level integritas yg moderate ialah suatu situs web yang menyediakan forum bagi para pengguna terdaftarnya untuk mendiskusi- kan suatu topik yg spesifik. Baik pengguna terdaftar atau hacker dapat memal- sukan informasi atau melakukan praktik deface di situs web tersebut. Apabila forum hanya untuk hiburan semata, hanya menghasilkan pendapatan iklan yg sedikit (bahkan tidak sama sekali), dan tidak digunakan untuk suatu hal yang penting seperti riset, potensi kerusakan yg akan dialami tidaklah parah sehing- ga pemilik web hanya menanggung kehilangan data, finansial, dan waktu yang tidak terlalu signifikan. ❖ Sistem anonymous online poll merupakan suatu contoh dgn level integritas yg low. Telah banyak sekali situs web, seperti organisasi media massa, melakukan polling kepada para penggunanya dgn mekanisme safeguard yang sederhana. Oleh karena itu, adanya ketidakakuratan dan ketidak-ilmiahan data pd polling dapat dipahami dan dimaklumi. Contoh Real-world dari CIA Triad • Contoh ketersediaan : ❖ Semakin penting suatu komponen atau layanan, maka semakin tinggi pula le- vel ketersediaan yang diperlukan. Suatu contoh dengan level ketersediaan yg high ialah suatu sistem yg menyediakan layanan autentikasi utk sistem pen- ting lainnya, aplikasi, atau perangkat tertentu. Apabila layanan autentikasi ini mengalami interupsi, para pelanggan tidak dapat mengakses resource kompu- tasi yang diperlukannya dan para pegawai tidak dapat mengakses resource yg diperlukan untuk menyelesaikan tugas utamanya. Pada kasus ini, adanya loss ketersediaan menyebabkan kerugian finansial yang besar akibat hilangnya pro- duktivitas pegawai dan potensi hilangnya kesetiaan pelanggan. (cont.) Contoh Real-world dari CIA Triad ❖ Contoh aset dgn tingkat ketersediaan yang moderate ialah situs web universi- tas. Situs web ini memuat informasi tentang mahasiswa dan penderma baik yg telah ada saat ini maupun yang masih prospek. Situs web seperti ini bukanlah komponen penting dari sistem informasi universitas, tetapi ketidaktersediaan- nya akan menimbulkan rasa malu bagi pihak universitas. ❖ Suatu aplikasi online direktori telepon merupakan contoh dgn tingkat keterse- diaan yang low karena out of service dari aplikasi ini secara sementara masih dapat digantikan oleh buku fisik (hardcopy) direktori telepon atau menghubu- ngi operator. Tantangan Keamanan Komputer • Keamanan komputer dan jaringan merupakan bidang yg menyenang- kan, tetapi juga kompleks. Berikut sejumlah alasannya : 1. Keamanan komputer dan jaringan pada praktiknya tida sesederhana yang di- bayangkan. Memang tujuan keamanan yg ingin dicapai cukup straightforward (i.e., singkat dan jelas) sehingga kita dapat menuliskannya dgn satu label saja, seperti kerahasiaan, autentikasi, nonrepudiasi, atau integritas. Namun, meka- nisme2 yg diperlukan untuk mencapai tujuan keamanan tersebut cukup kom- pleks, dan pemahaman mengenai mekanisme2 ini memerlukan kemampuan daya pikir yang mendalam. (cont.) Tantangan Keamanan Komputer 2. Saat mengembangkan suatu mekanisme atau algoritma keamanan, pendesain harus mampu mengantisipasi seluruh potensi serangan yg dihadapi oleh tiap fitur atau komponen yang dimiliki oleh mekanisme atau algoritma keamanan. Mayoritas serangan yang telah berhasil dilakukan oleh attacker sejauh ini ter- nyata mampu melihat mekanisme atau algoritma keamanan dengan sudut pandang yang jauh berbeda sehingga attacker mampu mengeksploitasi ke- lemahan pada mekanisme atau algoritma keamanan yang belum pernah terpi- kirkan sebelumnya oleh pendesain. 3. Akibat dari masalah yang telah dideskripsikan di poin nomor 2, mekanisme yg dikembangkan dlm suatu layanan seringkali bersifat counterintuitive (i.e., ber- beda dari biasanya); perlu dipahami, layanan di sini bertujuan untuk mencapai suatu objektif keamanan. Oleh karena itu, mekanisme ini seringkali kompleks untuk mencapai objektif keamanan yg pada hakikatnya sederhana. Kompleksi- tas ini diperlukan untuk menangani beragam ancaman yang dihadapi oleh me- kanisme keamanan. (cont.) Tantangan Keamanan Komputer 4. Kita harus mengetahui lokasi dimana mekanisme keamanan yg sedang dikem- bangkan akan dipasang. Maksud lokasi di sini dapat berupa lokasi fisik (e.g., di titik mana pada suatu jaringan mekanisme keamanan diperlukan) atau lokasi logika (e.g., di layer mana pada suatu arsitektur jaringan (misal, TCP/IP) meka- nisme keamanan perlu dipasang). 5. Selain melibatkan suatu algoritma atau protokol, penerapan suatu mekanisme keamanan seringkali juga mengharuskan tiap entitas untuk memiliki informasi rahasia, seperti kunci enkripsi. Penggunaan informasi rahasia ini menimbulkan sejumlah pertanyaan baru yang berkaitan dengan pembuatan, distribusi, dan proteksi informasi rahasia tersebut. Selain itu, pengembangan mekanisme ke- amanan sangat mungkin menjadi lebih rumit karena perlu disesuaikan dengan seluruh aturan protokol komunikasi yang digunakan; sebagai contoh, kita tidak dapat mendesain mekanisme keamanan utk membatasi waktu transit pesan dari pengirim ke penerima apabila protokol komunikasi telah memiliki aturan bahwa boleh adanya suatu delay yang nilainya variabel saat transit. (cont.) Tantangan Keamanan Komputer 6. Keamanan komputer dan jaringan sebenarnya merupakan suatu pertarungan kecerdasan antara attacker yg ingin mencari celah keamanan dan pendesain/ administrator yang ingin menutupi celah keamanan tersebut. Satu keuntungan besar yg dimiliki oleh attacker ialah dia hanya perlu mencari satu kelemahan saja, sedangkan pendesain harus mampu menemukan dan mengeliminasi se- luruh kelemahan yang ada. 7. Sangat lumrah sekali jika para pengguna dan manajer sistem hanya merasakan sedikit keuntungan dari invetasi keamanan yg telah dilakukan. Namun, mereka baru akan merasakan keuntungannya stlh mengalami kegagalan keamanan. 8. Implementasi keamanan perlu dimonitor secara periodik, atau bahkan secara kontinyu, dan hal ini sulit dilakukan pada lingkungan sistem informasi kontem- porer saat ini yg karakteristik operasionalnya cenderung short-term dan traffic komunikasinya cenderung overloaded. (cont.) Tantangan Keamanan Komputer 9. Keamanan komputer seringkali baru diinkorporasikan ke dalam sistem setelah desainnya telah rampung dan dioperasionalkan, bukannya diintegrasikan pada saat proses desain sistem berlangsung. 10.Banyak pengguna dan bahkan administrator keamanan yg beranggapan bah- wa penerapan keamanan yg kuat justru membuat operasional sistem informa- si atau penggunaan informasi menjadi kurang efisien dan kurang user-friendly. ARSITEKTUR KEAMANAN OSI X.800 Arsitektur Keamanan OSI X.800 • Suatu organisasi memerlukan suatu cara yg sistematik untuk menen- tukan objektif keamanan apa saja yang ingin dicapai, serta kebijakan & produk keamanan apa saja yang harus digunakan untuk mencapai seluruh objektif keamanan tersebut. • ITU-T Recommendation X.800 : Security Architecture for OSI membe- rikan cara sistematik yang dimaksud. ❖ Arsitektur keamanan OSI X.800 dapat membantu manajer yang bertanggung jawab atas keamanan organisasi dalam menyusun seluruh langkah utk men- capai keamanan yang diinginkan. ❖ Krn X.800 merupakan suatu standar internasional, telah banyak vendor kom- puter dan komunikasi yang mengembangkan fitur2 keamanan pd produk dan layanannya yang comply (patuh) dengan definisi yang ada di X.800. Arsitektur Keamanan OSI X.800 • Arsitektur keamanan OSI X.800 fokus pada beragam security attack, security mechanism, dan security service. Berikut definisi singkatnya : ❖ Security attack : Seluruh aksi yang dapat membobol keamanan yang telah di- pasang pada informasi milik suatu organisasi. ❖ Security mechanism : Suatu proses (termasuk seluruh perangkat yang diperlu- kan pada proses tsb) yang didesain untuk mendeteksi, mencegah, atau memu- lihkan dari suatu security attack. ❖ Security service : Suatu layanan pemrosesan (data) atau komunikasi yang ber- fungsi untuk menyediakan keamanan pada system resources dari suatu organi- sasi. Security services didesain untuk menghadapi security attacks yg telah ter- definisi pd security policies organisasi, dan setiap security service ini dibentuk dari satu atau lebih security mechanism. Arsitektur Keamanan OSI X.800 • Arsitektur keamanan OSI X.800 fokus pada beragam security attack, security mechanism, dan security service. Berikut definisi singkatnya : ❖ Security attack : Seluruh aksi yang dapat membobol keamanan yang telah di- pasang pada informasi milik suatu organisasi. ❖ Security mechanism : Suatu proses (termasuk seluruh perangkat yang diperlu- kan pada proses tsb) yang didesain untuk mendeteksi, mencegah, atau memu- lihkan dari suatu security attack. ❖ Security service : Suatu layanan pemrosesan (data) atau komunikasi yang ber- fungsi untuk menyediakan keamanan pada sistem pemrosesan data dan trans- fer informasi dari suatu organisasi. Security services didesain utk menghadapi security attacks, dan setiap security service ini dibentuk dari satu atau lebih se- curity mechanism. Arsitektur Keamanan OSI X.800 • Utk pembahasan2 berikutnya, kita akan sering menemukan istilah an- caman (i.e., threat) dan serangan (i.e., attack). Berdasarkan definisi yg RFC 4949 : Internet Security Glossary, kita sepakati di titik ini bah- wa pengerti ancaman dan serangan (kurang lebih) ekuivalen. SECURITY ATTACKS Security Attacks • Terdapat dua klasifikasi security attacks yang didefinisikan oleh X.800 dan RFC 4949, yaitu serangan pasif (i.e., passive attacks) dan serang- an aktif (i.e., active attacks). • Figure 1.2 di slide berikutnya memperlihatkan bentuk umum dari se- rangan pasif dan serangan aktif yang mana deskripsi singkatnya sbb : ❖ Serangan pasif mencoba untuk mempelajari atau menggunakan informasi da- ri suatu sistem, tetapi tdk memengaruhi (atau memodifikasi) resources sistem tersebut. ❖ Serangan aktif berusaha utk mengubah (atau memodifikasi) resources sistem atau memengaruhi (e.g., mengganggu) operasi sistem tersebut. Serangan Pasif • Serangan pasif pd hakikatnya merupakan praktik “menguping” atau memonitor suatu transmisi. ❖ Tujuan serangan pasif hanyalah memperoleh informasi yang sedang ditransmi- sikan saja. • Terdapat dua jenis serangan pasif : the release of message contents dan traffic analysis. • Deskripsi the release of message contents : ❖ Tipe serangan pasif ini paling mudah dipahami karena serangan ini sesederha- na memperoleh (atau meng-capture) informasi sensitif yg sedang ditransmi- sikan, misalnya percakapan telepon, e-mail, dan dokumen. ❖ Umumnya, informasi yang di-capture di sini dapat langsung dibaca kontennya (tidak terenkripsi) sehingga aksi pencegahan sangat diperlukan di sini. Serangan Pasif • Deskripsi traffic analysis : ❖ Asumsikan konten pesan dan traffic informasi lainnya ditransmisikan secara terenkripsi pada suatu komunikasi sehingga attacker yang meng-capture pe- san tersebut tidak dapat mengekstraksi informasi yang terdapat pada pesan. Namun, pada praktiknya, meskipun teknik enkripsi telah diterapkan, attacker masih memiliki kemungkinan untuk mengobservasi pesan2 terenkripsi terse- but. Biasanya, hasil yang diobservasi berupa lokasi dan identitas para entitas yang berkomunikasi, serta frekuensi dan ukuran pesan yang dipertukarkan. Dengan demikian, walaupun attacker tidak mengerti konten pesannya, attack- er masih dapat memperkirakan karakteristik komunikasi pesannya. • Serangan pasif sulit dideteksi karena tidak ada informasi yang dimodi- fikasi. Namun, mayoritas serangan pasif dapat dicegah dengan teknik enkripsi yg semakin sophisticated seiring dengan berjalannya waktu. Serangan Aktif • Serangan aktif melibatkan suatu upaya untuk memodifikasi sebagian aliran data atau membuat suatu aliran data baru yang palsu. • Terdapat empat jenis serangan aktif : masquerade, replay, modifica- tion of messages, dan denial of service. • Deskripsi masquerade : ❖ Masquerade merupakan suatu bentuk serangan aktif yang mana attacker ber- peran sebagai suatu entitas yang berotoritas dalam suatu komunikasi. ❖ Berdasarkan Figure 1.2, serangan masquerade diilustrasikan dgn mengaktifkan jalur nomor 2 saja. Di sini, Darth yg merupakan seorang attacker berperan sbg Bob. Namun, agar Darth dpt berperan sebagai Bob, Darth perlu menerapkan serangan aktif lainnya terlebih dahulu, seperti replay. (cont.) Serangan Aktif ❖ Contoh serangan masquerade : Suatu sekuens autentikasi dpt di-capture, dan kemudian sekuens ini di-replay setelah sekuens autentikasi yang valid (i.e., se- kuens yang sebenarnya) telah selesai dilakukan. Dgn seperti ini, attacker dapat memiliki hak akses yang belum dia miliki sebelumnya. • Deskripsi replay : ❖ Serangan replay melibatkan suatu proses capturing terhadap suatu unit atau sekuens data, dan kemudian mentransmisikannya ulang untuk memperoleh efek yang tak terotoritas. ❖ Berdasarkan Figure 1.2, serangan replay diilustrasikan dgn mengaktifkan jalur nomor 1, 2, dan 3. Jalur nomor 1 dilakukan utk meng-capture komunikasi data pada jalur nomor 3. Setelah komunikasi data ini selesai, jalur nomor 2 diaktif- kan untuk mentransmisikan ulang hasil capture. Serangan Aktif • Deskripsi modification of messages : ❖ Serangan modification of messages bertujuan untuk memperoleh efek yg tak terotoritas dengan cara memodifikasi sebagian konten dari pesan, menunda (men-delay) pengiriman pesan, atau mengubah susunan sekuens pesan. ❖ Berdasarkan Figure 1.2, serangan modification of messages diilustrasikan dgn mengaktifkan jalur nomor 1 dan 2. Di sini, Darth yg merupakan attacker mem- perantarai komunikasi antara Bob dan Alice, tetapi Bob dan Alice tidak menge- tahui keberadaan Darth ini sehingga keduanya mengira mereka berkomunikasi melalui jalur nomor 3. ❖ Contoh serangan modification of messages : Suatu pesan dengan konten “Izin- kan John Smith untuk membaca dokumen rahasia” dimodifikasi menjadi “Izin- kan Fred Brown untuk membaca dokumen rahasia.” Serangan Aktif • Deskripsi denial of service : ❖ Serangan denial of service, atau biasa disingkat sebagai DoS, merupakan suatu serangan untuk mencegah (menghentikan) 1) penggunaan normal dari suatu komunikasi; atau 2) proses tata kelola terhadap fasilitas2 komunikasi tersebut. ❖ Berdasarkan Figure 1.2, serangan denial of services diilustrasikan dgn mengak- tifkan jalur no. 3. Darth selaku attacker melakukan beragam cara agar komuni- kasi pada jalur ini terganggu atau berhenti sama sekali. ❖ Contoh serangan denial of service : ➢ Seorang attacker menahan seluruh pesan yg ditransmisikan ke suatu desti- nasi yang spesifik (e.g., layanan audit keamanan). ➢ Seorang attacker mengganggu suatu jaringan secara keseluruhan dgn cara menonaktifkan jaringan, atau meng-overload jaringan dgn pesan berjum- lah masif sehingga performasinya turun secara signifikan. Serangan Pasif vs. Serangan Aktif • Serangan aktif memiliki karakteristik yang berlawanan dengan karak- teristik serangan pasif. ❖ Serangan pasif sulit utk dideteksi karena tiadanya proses modifikasi terhadap data, tetapi serangan pasif ini dapat dicegah melalui teknik2 tertentu. ❖ Serangan aktif sulit untuk dicegah secara menyeluruh saat serangan ini dilan- carkan karena ragamnya potensi celah keamanan yang dimiliki oleh hardware, software, dan jaringan. Namun, serangan aktif ini umumnya mudah dideteksi karena efek yang ditimbulkan oleh serangan sangat terasa. ❖ Khusus utk serangan aktif, fokus terhadap proses pemulihan pasca-serangan diutamakan agar gangguan atau delay yang ditimbulkannya dapat segera ter- tangani. SECURITY SERVICES Security Services • Pada Table 1.2 di slide berikutnya, X.800 mendefinisikan lima kategori besar security service dan empat belas security service yang spesifik. • Deskripsi layanan autentikasi : ❖ Layanan autentikasi menjamin bahwa suatu komunikasi itu autentik (asli atau dapat dipercaya). ❖ Apabila komunikasi hanya mentransmisikan pesan tunggal (e.g., e-mail), fung- si layanan autentikasi ialah meyakinkan entitas penerima bahwa pesan yg dite- rimanya benar berasal dari suatu sumber. (cont.) Security Services ❖ Apabila komunikasi merupakan suatu interaksi yg berkelanjutan, seperti ko- neksi dari terminal ke suatu host, terdapat dua aspek yang harus diterapkan. Pertama, saat tahap inisiasi koneksi, layanan autentikasi menjamin kedua en- titas ini autentik. Kedua, layanan autentikasi memastikan koneksi tdk digang- gu oleh pihak ketiga yang ingin melakukan serangan masquerade (i.e., ingin berperan sebagai salah satu entitas komunikasi, apakah itu sebagai pengirim atau penerima). ❖ Terdapat dua spesifik layanan autentikasi yang didefinisikan oleh X.800, yaitu peer entity authentication dan data origin authentication. (cont.) Security Services ❖ Peer entity authentication : ➢ Peer entity authentication menyediakan pembuktian (i.e., melakukan kon- firmasi) terhadap identitas dari entitas pasangan dalam suatu asosiasi. ➢ Dua entitas baru disebut berpasangan (i.e., peers) apabila mereka menggu- nakan protokol yang sama di dua sistem yg berbeda; misal, dua modul TCP pada dua sistem komukasi (e.g., dua sistem komputer yang berbeda). ➢ Peer entity authentication ini diimplementasikan ketika awal pembentukan koneksi atau ketika fase transfer data pada koneksi. ➢ Dengan peer entity authentication, terdapat keyakinan bahwa tidak ada sa- tupun entitas pada komunikasi yg melakukan serangan masquerade atau replay (i.e., mengirim kembali sekuens pesan pada koneksi sebelumnya se- cara tak terotoritas). (cont.) Security Services ❖ Data origin authentication : ➢ Data origin authentication menyediakan pembuktian (i.e., melakukan kon- firmasi) terhadap sumber yang mengirimkan unit data. ➢ Data origin authentication perlu diterapkan pd komunikasi connectionless yang mana tidak ada interaksi sebelumnya antar-entitas yg salin berkomu- nikasi; contohnya seperti aplikasi e-mail dimana dua entitas tdk berkomu- nikasi secara langsung. • Deskripsi layanan kendali akses : ❖ Pada konteks keamanan jaringan, kendali akses merupakan kemampuan untuk membatasi dan mengendalikan akses ke host system (i.e., suatu komputer yg diperlukan untuk melayani permintaan user di jaringan) dan aplikasi via suatu kanal komunikasi. (cont.) Security Services ❖ Pembatasan dan pengendalian akses dpt diterapkan dengan menentukan hak akses tertentu bagi tiap individu. Detil dari bentuk hak akses utk suatu indivi- du harus ditentukan sejak awal oleh sistem (atau organisasi) sebelum indivi- du tersebut mengakses host system atau aplikasi. ❖ Pada praktiknya, hak akses baru diberikan ke individu apabila individu tersebut telah berhasil diindentifikasi (atau diautentikasi). • Deskripsi layanan kerahasiaan data : ❖ Kerahasiaan data diterapkan untuk memproteksi data yang sedang ditransmi- sikan dari serangan pasif. (cont.) Security Services ❖ Berdasarkan konten dari data yang ditransmisikan, terdapat sejumlah level la- yanan kerahasiaan data yang dapat diimplementasikan : ➢ Layanan kerahasiaan data yang paling luas dapat memproteksi seluruh da- ta pengguna yang ditransmisikan di antara dua pengguna. Misalnya, asum- sikan suatu koneksi TCP yg dibentuk di antara dua sistem, layanan ini akan mencegah terpublikasinya tiap data pengguna yang ditransmisikan pada ko- neksi TCP tersebut. ➢ Layanan kerahasiaan data yg lebih sempit jg tersedia, antara lain proteksi terhadap pesan tunggal atau proteksi terhadap field2 tertentu pd pesan. Pada praktiknya, layanan kerahasiaan data ini tidak seefektif layanan yang paling luas, dan mungkin akan lebih kompleks & lebih mahal utk diimple- mentasikan. (cont.) Security Services ❖ Layanan kerahasiaan data juga berfungsi untuk memproteksi traffic flow (i.e., aliran data yang ditransmisikan) dari analisis. Layanan ini membuat attacker ti- dak dapat mengobservasi sumber & destinasi, frekuensi, ukuran, atau karakte- ristik lainnya dari traffic. • Layanan integritas data : ❖ Sama seperti layanan kerahasiaan data, layanan integritas data juga dapat di- aplikasikan terhadap suatu aliran pesan, pesan tunggal, atau field2 pesan. ❖ Ketika layanan integritas data diterapkan pd komunikasi connection-oriented, layanan ini menjamin seluruh pesan yang diterima sesuai dengan yang dikirim- kan tanpa adanya duplikasi, penyisipan, modifikasi, reordering, replay, atau destruksi. Dengan demikian, pada komunikasi connection-oriented, layanan in- tegritas data berfungsi untuk mengatasi message stream modification dan de- nial of service. (cont.) Security Services ❖ Ketika layanan integritas data diterapkan pd komunikasi connectionless, layan- an ini menangani tiap pesan tunggal yang ditransmisikan tanpa menghiraukan konteks yang lebih luas. Oleh karena itu, pd komunikasi connectionless, layan- an integritas data hanya berfungsi utk mengatasi message modification saja. ❖ Lebih lanjut, layanan integritas data dpt dibedakan menjadi layanan dengan- ngan pemulihan dan layanan tanpa pemulihan. ❖ Alasan disediakannya layanan integritas data dengan pemulihan oleh X.800 ka- rena layanan ini berkaitan erat dgn serangan aktif yang mana pendekatannya lebih cenderung ke deteksi, bukannya pencegahan. ➢ Saat suatu pelanggaran terhadap integritas terdeteksi, layanan integritas data akan melaporkan pelanggaran ini, dan kemudian fitur dari software atau intervensi manusia diperlukan untuk memulihkan situasi ini. Security Services • Layanan nonrepudiasi : ❖ Layanan nonrepudiasi memastikan entitas pengirim atau penerima tidak me- nyangkal bahwa dirinya telah mengirimkan atau membaca pesan. ❖ Dengan layanan ini, ketika suatu pesan telah dikirim, entitas penerima dapat membuktikan bahwa suatu entitas yang terduga sebagai entitas pengirim me- mang pd faktanya telah mengirimkan pesan tersebut. Begitu pun, ketika suatu pesan telah sampai di tujuan, entitas pengirim dpt membuktikan bahwa suatu entitas yg terduga sebagai entitas penerima memang pada faktanya telah me- nerima pesan tersebut. Security Services • Layanan ketersediaan : ❖ X.800 mendefinisikan ketersediaan sebagai karakteristik suatu sistem (atau re- source system) yg dapat diakses dan digunakan kapanpun* oleh suatu entitas yang memiliki otoritas atas sistem (atau resource system) tersebut. *ket : kapanpun di sini tentunya sesuai dengan spesifikasi performansi yang ada. ❖ Bentuk serangan apapun yg dilancarkan dapat menyebabkan hilangnya atau berkurangnya layanan ketersediaan. Sebagian bentuk serangan dapat diatasi dengan menerapkan teknik2 tertentu, seperti autentikasi dan enkripsi, tetapi sebagian lainnya memerlukan aksi fisik utk mencegah- atau memulihkan dari- hilangnya layanan ketersediaan. SECURITY MECHANISMS Security Mechanisms • Table 1.3 di slide berikut memperlihatkan daftar security mechanism yang didefinisikan oleh X.800. • X.800 membedakan security mechanism ke dalam dua tipe, yaitu specific security mechanism dan pervasive security mechanism. ❖ Specific security mechanism merupakan security mechanism yg diimplementa- sikan pd suatu protocol layer atau security service tertentu (spesifik). Contoh protocol layer yang spesifik, yaitu TCP atau application-layer protocol. ❖ Pervasive security mechanism merupakan security mechanism yang tidak ter- ikat (tidak spesifik) pada suatu protocol layer atau security service tertentu. • Di sini, kita tidak membahas tentang security mechanisms pada Table 1.3 karena pembahasannya akan kita temukan selama kita memelaja- ri kriptografi lebih mendalam. Security Mechanisms • Namun, perlu ada yg kita pahami sedikit ttg security mechanism : en- cipherment sbb : ❖ X.800 membedakan antara reversible encipherment mechanism dan irreversi- ble encipherment mechanism. ❖ Reversible encipherment mechanism merupakan suatu algoritma enkripsi yg dapat mengenkripsi data dan juga mendekripsi data tersebut setelahnya. ❖ Irreversible encipherment mechanism meliputi algoritma hash dan message authentication code (MAC) yg biasa digunakan pada teknik tanda tangan di- gital (Bab 13) dan message authentication (Bab 12). • Table 1.4 di slide berikut memperlihatkan hubungan (relationship) an- tara security service dan security mechanism. PRINSIP2 DESAIN KEAMANAN Prinsip 2 Desain Keamanan • Meskipun beragam desain keamanan telah dilakukan, tetap saja ada kelemahan keamanan dan aksi tak terotorisasi yg melekat pada suatu sistem informasi. • Karena tidak ada satupun desain keamanan yang sempurna, alangkah bergunanya jika memiliki suatu set prinsip desain keamanan yang di- setujui secara bersama agar diperoleh desain keamanan terbaik. Prinsip 2 Desain Keamanan • Suatu program yg disponsori oleh U.S. National Security Agency dan U.S. Department of Homeland Security bernama National Centers of Academic Excellence in Information Assurance/Cyber Defense, mem- berikan tiga belas prinsip desain keamanan : ❖ Economy of mechanism ❖ Psychological acceptability ❖ Fail-safe defaults ❖ Isolation ❖ Complete mediation ❖ Encapsulation ❖ Open design ❖ Modularity ❖ Separation of privilege ❖ Layering ❖ Least privilege ❖ Least astonishment ❖ Least common mechanism Prinsip 2 Desain Keamanan • Deskripsi prinsip desain economy of mechanism : ❖ Prinsip desain ini menekankan agar setiap fitur keamanan yg terpasang pada hardware dan software harus sesederhana dan sekecil mungkin. ❖ Dengan desain keamanan yg sederhana dan kecil, proses pengujian, verifikasi, pengelolaan, dan pembaruan/peggantian menjadi lebih mudah dilakukan. ❖ Desain yg sederhana dan kecil juga menekan risiko attacker untuk menemu- kan kelemahan yang melekat pada desain tersebut yang pendesainnya sendiri belum tentu mengetahuinya. ❖ Pd praktiknya, prinsip economy of mechanism sulit diterapkan karena, seiring berjalannya waktu, semakin banyak fitur baru yang diinkorporasikan ke dalam hardware dan software sehingga merumitkan proses desain keamanan yg se- derhana dan kecil. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain fail-safe defaults : ❖ Fail-safe defaults merupakan suatu prinsip desain keamanan yang mana kepu- tusan akses (e.g., diizinkan atau tidaknya suatu entitas untuk mengakses suatu sistem informasi) harus dilakukan berbasis permission dan bukan exclusion. ❖ Dengan berbasis permission, sistem secara default hanya menyediakan izin (i.e., permission) yang minim di awal, tetapi jumlah izin ini akan bertambah seiring berjalannya waktu apabila memenuhi syarat. ❖ Untuk melihat keunggulan prinsip fail-safe defaults, mari kita lihat situasi sbb : Kesalahan dlm mendesain suatu mekanisme keamanan, tepatnya mekanisme ini menolak suatu akses yang seharusnya diberi izin, dinilai tidak berisiko kare- na kesalahan seperti ini akan cepat terdeteksi dan diatasi. Namun, apabila ke- salahan desain mekanisme, yaitu mengizinkan suatu akses yang seharusnya di- tolak, hal ini berisiko karena dapat tidak disadari dalam jangka waktu yg lama. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain complete mediation : ❖ Prinsip desain mengharuskan tiap akses yang ada selalu diperiksa oleh meka- nisme keamanan access control, dan pemberian izin ke tiap akses ini tidak bo- leh diperoleh dari memori cache; biasanya, sistem yg ada saat ini mengguna- kan cache untuk menyimpan hasil keputusan pemberian izin di waktu lampau. ❖ Tapi, apabila ingin tetap menggunakan memori cache, prinsip complete medi- ation mensyaratkan adanya langkah (atau solusi) atas pertanyaan sbb : Apabi- la hasil keputusan pemberian izin disimpan di dlm cache utk digunakan kem- bali di waktu yad., bagaimana prosedur ketika ada perubahan ketentuan oto- ritas dapat dipropagasikan ke cache? (cont.) Prinsip 2 Desain Keamanan ❖ File access system merupakan suatu contoh yang mengimplementasikan me- kanisme access control. Saat seorang pengguna baru pertama kali mengakses suatu dokumen, sistem menerapkan mekanisme access control terhadapnya. Sayangnya, pada praktiknya, penerapan mekanisme ini tidak dilakukan untuk akses dokumen yang kedua kalinya, ketiga kalinya, dst. ❖ Prinsip complete mediation memberikan tingkat kehati-hatian yang tinggi ter- hadap tiap akses yang ada sehingga sangat baik dari segi keamanan sistem, te- tapi prinsip ini bersifat resource-intensive sehingga jarang yg mengimplemen- tasikannya. • Deskripsi prinsip desain open design : ❖ Prinsip desain ini meminta desain mekanisme keamanan yg telah dibuat agar dipublikasikan (i.e., tidak dirahasiakan). (cont.) Prinsip 2 Desain Keamanan ❖ Sebagai contoh, setiap algoritma enkripsi yang telah dirancang harus dipubli- kasikan sebelum di-deploy secara luas. Hal ini dilakukan supaya algoritma en- kripsi dapat diobservasi oleh publik, terutama oleh para ahli kriptografi. Hal ini jugalah yang mendorong National Institute of Standards and Technology (NIST) untuk menstandarkan algoritma enkripsi dan fungsi hash sehingga dapat digu- nakan secara luas. • Deskripsi prinsip desain separation of privilege : ❖ Prinsip desain ini mengharuskan penggunaan lebih dari satu atribut privilege untuk dapat mengakses resource yang terproteksi. ❖ Contoh : Proses autentikasi saat ini telah dilakukan secara multifaktor, seperti pemberian akses ke seorang user (e.g., seorang nasabah bank) setelah menye- diakan smart card dan password/PIN. (cont.) Prinsip 2 Desain Keamanan ❖ Baru2 ini, prinsip separation of privilege jg telah diimplementasikan oleh suatu teknik yang membagi suatu program ke dalam beberapa bagian yg terpisah. Setiap bagian ini akan memuat resource sistem dengan tingkat kekritisan yang berbeda, dan karenanya atribut2 privilege yang diperlukan untuk mengakses suatu bagian akan berbeda dengan ketika mengakses bagian lainnya. ❖ Misalnya, untuk memitigasi potensi kerugian yg dihasilkan oleh suatu security attack terhadap suatu sistem komputer, sistem membuat sejumlah proses de- ngan atribut2 privilege yang berbeda, tepatnya proses yang memuat operasi2 penting milik organisasi diproteksi oleh atribut2 privilege yang lebih tinggi, se- dangkan proses yang hanya memuat operasi2 day-to-day (i.e., rutin) cukup di- proteksi oleh atribut2 privilege yang lebih rendah. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain least privilege : ❖ Prinsip desain ini meminta agar setiap proses atau pengguna sistem beropera- si dengan suatu set of privileges yang jumlahnya sesedikit mungkin untuk me- nyelesaikan tugasnya. ❖ Prinsip least privilege dapat diterapkan dlm bentuk role-based access control. Di sini, role dari tiap proses dan pengguna sistem diidentifikasi dan diberikan sesuai dengan kebijakan keamanan sistem. Setiap role diberikan atribut beru- pa permissions yang hanya diperlukan utk menyelesaikan tugas/fungsi sesuai dgn role itu saja. Hal ini memastikan proses atau pengguna sistem tidak sem- barangan dalam mengakses resource sistem yang diproteksi. (cont.) Prinsip 2 Desain Keamanan ❖ Terdapat aspek temporal (i.e., bersifat sementara) pada prinsip least privilege. Misal, suatu system program atau seorang administrator hanya dapat memiliki privileges spesial ketika dibutuhkan saja; ketika mereka hanya melakukan akti- vitas2 yang biasa, privileges spesial tersebut dicabut. • Prinsip desain least common mechanism : ❖ Prinsip desain ini meminta untuk meminimalkan jumlah fungsi sistem yang di- gunakan secara bersama. Dengan demikian, jumlah jalur komunikasi yg tidak diinginkan dan jumlah hardware & software yang digunakan secara bersama dapat dikurangi secara signifikan. ❖ Semakin sedikit fungsi sistem yang digunakan secara bersama, maka semakin mudah dalam melakukan verifikasi terhadap implikasi keamanan yang tidak diinginkan. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain psychological acceptability : ❖ Prinsip desain ini meminta agar mekanisme keamanan tidak menginterferensi pekerjaan pengguna terlampau tinggi, dan di saat yang sama juga harus mam- pu memenuhi kebutuhan keamanan bagi pengguna yang memiliki otoritas. ❖ Gangguan yg ditimbulkan oleh mekanisme keamanan harus seminimal mung- kin, atau bahkan tidak ada. Jika pada praktiknya mekanisme keamanan ini cu- kup mengganggu, pengguna boleh menonaktifkan mekanisme keamanan ini. ❖ Agar tidak menjadi hambatan, prinsip psychological acceptability menekankan supaya melibatkan model mental dari para pengguna saat proses desain me- kanisme keamanan. Misalnya, 1) jgn sampai pengguna merasa kesulitan, atau bahkan tdk mengerti sama sekali dengan penggunaan mekanisme keamanan; dan 2) fitur2 keamanan yang disediakan oleh mekanisme berbeda jauh dengan apa yang diharapkan oleh pengguna. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain isolation : ❖ Prinsip desain ini mencakup tiga konteks sebagaimana yang akan dijelaskan di poin2 berikutnya. ❖ Pertama, public access system, yaitu suatu sistem yg dirancang untuk diakses secara publik, harus diisolasi dari resource2 kritis (i.e., proses, data, dsb.). Ben- tuk isolasi dapat berupa fisik dan logika. Contoh isolasi fisik ialah menjamin ti- dak ada koneksi fisik yg terpasang di antara public access system dan resource2 kritis. Contoh isolasi logika ialah pemasangan sejumlah layer di antara public access system dan sistem yang memuat resource2 kritis, di mana tiap layer ini terdiri dari layanan dan mekanisme keamanan. (cont.) Prinsip 2 Desain Keamanan ❖ 3) mekanisme keamanan yang digunakan di dalam suatu sistem harus diisolasi sedemikian rupa sehingga mekanisme ini terproteksi dari aksi ilegal. ❖ Kedua, seluruh proses dan dokumen milik seorang pengguna hrs diisolasi dari pengguna lainnya, kecuali diizinkan secara eksplisit. Operating system modern telah mampu menyediakan fitur isolasi ini yang mana setiap pengguna kompu- ter memiliki ruang proses, memori, dan dokumen tersendiri. ❖ Ketiga, mekanisme keamanan yang digunakan di dalam suatu sistem harus di- isolasi sedemikian rupa shg mekanisme ini terproteksi dari aksi ilegal. Sebagai contoh, asumsikan suatu host system menggunakan suatu software kriptografi sebagai mekanisme keamanan dan pengelolaan kunci enkripsi. Kita dpt meng- gunakan logical access control utk mengisolasi software kriptografi dari kom- ponen2 host system yg lain sehingga software terlindungi dari aksi tampering (i.e., modifikasi software) dan tidak ada kunci enkripsi yang diganti atau bocor. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain encapsulation : ❖ Prinsip desain ini ekuivalen dgn prinsip isolation, tetapi spesifik untuk pemro- graman berbasis objek (i.e., object-oriented programming). ❖ Prinsip encapsulation menginkorporasikan suatu set prosedur pemrograman dan objek data ke dalam suatu domain tersendiri. Dengan desain seperti ini, struktur internal objek data hanya dapat diakses oleh prosedur2 yang berada di dalam domain, sedangkan setiap prosedur hanya dapat diakses secara eks- ternal melalui titik masuk yang telah disediakan oleh domain. • Deskripsi prinsip desain modularity : ❖ Prinsip desain ini mencakup dua konteks sebagaimana yang akan dijelaskan di poin2 berikutnya. (cont.) Prinsip 2 Desain Keamanan ❖ Pertama, kita harus mengembangkan tiap fungsi keamanan sebagai suatu mo- dul yg independen. Lebih tepatnya, modul di sini disebut sbg common module yang benefitnya dapat dipahami melalui contoh sbb : Asumsikan beragam protokol dan aplikasi keamanan pada suatu sistem meng- gunakan fungsi keamanan kriptografi yg sama. Daripada memasang fungsi ke- amanan di tiap protokol dan aplikasi, alangkah lebih aman dan efisien apabila hanya menggunakan satu common cryptographic module yang dapat dipanggil (i.e., digunakan) oleh seluruh protokol dan aplikasi pada sistem. Dgn spt ini, ki- ta hanya perlu fokus mendesain dan mengimplementasikan secara aman satu modul kriptografi saja, seperti membuat mekanisme2 untuk melindungi modul dari aksi tampering. (cont.) Prinsip 2 Desain Keamanan ❖ Kedua, kita perlu menerapkan prinsip arsitektur modular dlm mendesain dan mengimplementasikan mekanisme keamanan. Dengan arsitektur modular, se- tiap mekanisme keamanan yang terpasang pada suatu sistem mendukung mi- grasi ke teknologi baru atau upgrade fitur2 baru tanpa perlu mendesain sistem secara keseluruhan. • Deskripsi prinsip desain layering : ❖ Prinsip desain ini merujuk pd penggunaan proteksi secara berlapis utk mena- ngani sisi keamanan dari aspek manusia, teknologi, dan operasional pd sistem. ❖ Dengan proteksi secara berlapis, kegagalan yg dialami oleh suatu unit proteksi tidak akan membuat resource keluar dari sistem tanpa proteksi. Begitupun jg, lolosnya aksi ilegal (yang masuk ke dalam sistem) dari suatu unit proteksi tdk serta merta membuat akan mengganggu sistem. Hal ini dikarenakan unit2 pro- teksi lain akan mem-back-up unit proteksi yang sedang tidak berfungsi ini. Prinsip 2 Desain Keamanan • Deskripsi prinsip desain least astonishment : ❖ Prinsip desain ini menekankan agar suatu program atau user interface hrs sela- lu memberi respons yang tidak “mengagetkan” (i.e., tidak menyenangkan) pa- ra penggunanya. ❖ Mekanisme keamanan harus terlihat “sehalus” mungkin (i.e., transparent) da- ri sisi pengguna sehingga pengguna tsb memiliki intuisi yg baik mengenai apa tujuan keamanan yang ingin dicapai sehingga mekanisme keamanan ini perlu diimplementasikan. ATTACK SURFACES DAN ATTACK TREES Attack Surfaces dan Attack Trees • Terdapat dua konsep yg sangat berguna dlm mengevaluasi dan meng- klasifikasikan security attacks, yaitu attack surfaces dan attack trees. • Suatu attack surface terdiri dari seluruh celah keamanan yang dimiliki oleh sistem yang terjangkau (i.e., tidak sulit untuk ditemukan) dan da- pat dieksploitasi. • Berikut sejumlah contoh attack surface : ❖ Satu atau sejumlah port pada suatu web server (atau server lainnya) yang ter- hubung ke internet terbuka. ❖ Layanan yang tersedia di dalam suatu firewall yang tidak didesain dan diimple- mentasikan secara aman. (cont.) Attack Surfaces dan Attack Trees ❖ Kode program yang dibuat untuk memproses informasi yang masuk. Beberapa contoh informasi yang dimaksud, yakni data, email, XML, dokumen kantor, dan custom data (misalnya, industry-specific custom data exchange formats). ❖ Beragam tipe form, seperti user interface form, SQL form, dan web form. ❖ Seorang pegawai yg memiliki akses ke resource kritis, tetapi rentan terhadap serangan social engineering (e.g., phising attack). • Attack surfaces dapat dikategorikan ke dalam tiga kategori sbb : ❖ Network attack surface : Kategori ini merujuk pada kerentanan yg dimiliki oleh suatu jaringan enterprise, wide-area-network (WAN), atau internet. Salah satu yang termasuk ke dalam kategori ini ialah kerentanan protokol jaringan. Keren- tanan pada suatu protokol jaringan dapat berujung pada serangan DoS, dst. (cont.) Attack Surfaces dan Attack Trees ❖ Software attack surface : Kategori ini merujuk pada kode program dari aplika- si, utility software (e.g., antivirus dan system monitor), dan operating system. Fokus utama dari kategori ini ialah web server software. ❖ Human attack surface : Kategori ini merujuk pada kerentanan2 yg dibuat oleh personel atau pihak luar, seperti human error, social eng., dan trusted insider. • Berikut tiga benefit yg diperoleh ketika menganalisis kerentanan2 sis- tem dengan attack surfaces : 1) Suatu analisis yang sistematik terhadap seluruh titik kerentanan pada sistem memudahkan pengembang dan analis keamanan utk memasang mekanisme2 keamanan yang tepat. (cont.) Attack Surfaces dan Attack Trees 2) Analisis yang sistematik juga memudahkan pendesain untuk membuat attack surfaces semakin kecil sehingga usaha attacker dalam membobol sistem men- jadi lebih sulit. 3) Dengan analisis via attack surfaces, terbentuk suatu pedoman yang mengatur prioritas dlm menguji, menguatkan fitur2 keamanan, dan memodifikasi layan- an atau aplikasi. • Figure 1.3 di slide berikut memperlihatkan penerapan prinsip layering dan analisis dengan attack surfaces secara bersamaan akan saling me- lengkapi satu sama lain. Attack Surfaces dan Attack Trees • Attack tree adalah suatu struktur data berbentuk hierarki dan berca- bang yang memuat beragam teknik yang berpotensi untuk mengeks- ploitasi celah2 keamanan pada suatu sistem. ❖ Root node, atau titik akar, pd attack tree merepresentasikan tujuan serangan utama. Titik akar ini pasti memiliki sedikitnya satu node yg bercabang darinya mencapai tujuan serangan utamanya tersebut. ❖ Subnode, atau titik cabang, pada attack tree merepresentasikan cara2 yang da- pat digunakan untuk memenuhi tujuan dari parent node (i.e., titik yg berada di atasnya). Lebih lanjut, suatu titik cabang dapat memiliki satu atau lebih cabang yang terhubung ke suatu subnode yang lain untuk mencapai tujuannya. (cont.) Attack Surfaces dan Attack Trees ❖ Leaf node, atau titik daun, pada attack tree merupakan suatu node yang tidak memiliki cabang, dan merepresentasikan spesifik teknik serangan yang dapat diterapkan untuk tujuan malicious (i.e., tujuan jahat) dari parent node-nya. ❖ Setiap titik pd attack tree, selain titik daun, dapat bertipe AND-node atau OR- node. Untuk mencapai tujuan dari suatu titik bertipe AND-node, seluruh tuju- an atau seluruh spesifik teknik serangan yg direpresentasikan oleh semua sub- node-nya harus dipenuhi/diterapkan. Untuk mencapai tujuan dari suatu titik bertipe OR-node, cukup satu subnode dari seluruh subnode-nya saja yang di- penuhi tujuannya atau diterapkan spesifik teknik serangannya. ❖ Apabila diinginkan, setiap cabang dapat diberi label nilai yang merepresentasi- kan tingkat kesulitan, biaya, atau atribut2 lainnya sehingga suatu alternatif se- rangan dapat dibandingkan antara satu dengan lainnya. Attack Surfaces dan Attack Trees • Attack trees dapat digunakan utk mendokumentasikan beragam po- tensi serangan keamanan yang dihadapi oleh suatu sistem informasi secara terstruktur. ❖ Karena terstruktur, kita akan mengetahui celah2 keamanan utama yang dimiliki oleh sistem informasi, dan pengetahuan ini dapat digunakan sbg input proses desain sistem, termasuk pemilihan countermeasures (i.e., tindakan2 penang- gulangan) yang tepat untuk memitigasi potensi serangan keamanan yang ada. • Figure 1.4 di slide berikut merupakan suatu contoh attack tree untuk aplikasi autentikasi internet banking. ❖ Titik akar merupakan objektif utama dari attacker, yaitu membobol salah satu akun nasabah bank. (cont.) Attack Surfaces dan Attack Trees ❖ Seluruh kotak yang berwarna abu2 pada attack tree merupakan titik daun yang merepresentasikan spesifik teknik serangan utk mencapai tujuan parent node. ❖ Perlu diketahui bahwa seluruh node selain titik daun bertipe OR-node. ❖ Terdapat tiga target serangan pd attack tree di Figure 1.4. Ketiga target ini me- rupakan komponen2 yang terlibat dalam proses autentikasi. ➢ User terminal and user (UT/U) : Serangan ini menargetkan peralatan2 yang dimiliki oleh nasabah bank (e.g., token dalam bentuk smartcard atau pass- word generator), dan segala aksi yang dilakukan oleh nasabah ketika meng- operasikan peralatan2 tersebut. ➢ Communications channel (CC) : Serangan ini menargetkan kanal komunika- si yang menghubungkan antara nasabah dan bank. ➢ Internet banking server (IBS) : Serangan ini menargetkan server2 yg meng- host aplikasi internet banking. Di sini, serangan dilancarkan secara offline. Attack Surfaces dan Attack Trees ❖ Berdasarkan tiga komponen autentikasi ini, terdapat lima strategi yang dapat diimplementasikan untuk mencapai tujuan dari titik akar : ➢ User credential compromise : Strategi ini menyerang banyak sekali elemen dari attack surface. Pertama, terdapat procedural attacks, spt 1) memoni- tor aksi2 yang dilakukan oleh nasabah untuk mengobservasi PIN atau infor- masi2 kredensial lainnya, atau 2) mencuri token atau cek milik nasabah. Ke- dua, attacker dpt membobol informasi token milik nasabah via token attack tools, spt melakukan hacking terhadap smartcard atau menerapkan teknik brute-force untuk memperoleh PIN. Ketiga, attacker meng-embed (i.e., me- masang) malicious software utk memperoleh informasi login dan password milik nasabah. Keempat, attacker melakukan sniffing terhadap kanal komu- nikasi. Kelima, attacker berusaha utk berkomunikasi langsung dgn nasabah dengan beragam cara yang diperlihatkan Figure 1.4. (cont.) Attack Surfaces dan Attack Trees ➢ Injection of commands : Pd strategi ini, attacker meng-intercept (i.e., men- cegat) komunikasi antara UT dan IBS dgn tujuan agar attacker dapat meng- impersonate (i.e., berperan secara ilegal) sbg nasabah yang valid sehingga attacker mengakses sistem bank laiknya nasabah biasa. ➢ User credential guessing : Suatu studi melaporkan bahwa sebagian skema autentikasi perbankan yang ada saat ini sangat mudah diserangan dengan brute-force attack, tepatnya mentransmisikan usernames dan passwords yang dibangkitkan secara acak (i.e., random). Spesifik mekanisme serangan- nya dapat diimplementasikan via distributed zombie personal computer yg meng-hosting program otomatis utk membuat username dan password. (cont.) Attack Surfaces dan Attack Trees ➢ Security policy violation : Sebagai contoh, pelanggaran terhadap kebijakan keamanan bank yg dikombinasikan dgn penerapan mekanisme access con- trol dan logging yg lemah, seorang karyawan akan sangat mungkin menim- bulkan suatu insiden keamanan yang mengekspos akun nasabah. ➢ Use of known authenticated session : Strategi ini memersuasi atau memak- sa seorang nasabah utk melakukan koneksi ke IBS menggunakan suatu pre- set ID (i.e., ID yg telah disediakan oleh attacker). Setelah nasabah tersebut telah berhasil diautentikasi oleh server, attacker dpt menggunakan session ID (i.e., preset ID) yg telah diketahui untuk mengirimkan paket2 yg diingin- kannya ke IBS; di sini, attacker dibilang telah melakukan tindakan spoofing (i.e., pemalsuan) identitas nasabah. ❖ Dengan menggunakan attack tree dan prinsip2 desain keamanan yang telah di- bahas sebelumnya, kita dapat menilai risiko dari tiap potensi serangan yg ada, dan kemudian mendesain fasilitas keamanan secara lebih komprehensif. SUATU MODEL UNTUK KEAMANAN JARINGAN Suatu Model untuk Keamanan Jaringan • Figure 1.5 di slide berikut memperlihatkan model keamanan jaringan yang umumnya digunakan. ❖ Pd model ini, suatu pesan ditransmisikan oleh suatu entitas ke entitas lainnya menggunakan pada suatu jaringan, seperti internet. ❖ Kedua entitas yg berkomunikasi harus saling berkooperasi satu sama lain agar pesan dapat ditransmisikan. Satu contoh hal yang harus dikooperasikan adalah protokol komunikasi yang digunakan untuk transmisi pesan (e.g., TCP/IP). ❖ Perlu diperhatikan bahwa kanal informasi yang terbentuk antara kedua entitas merupakan kanal logika yg menyediakan rute di internet dari entitas pengirim ke entitas penerima. Suatu Model untuk Keamanan Jaringan • Berikut deskripsi elemen2 model keamanan jaringan Figure 1.5 : ❖ Security-related transformation : Transformasi yang diterapkan pada informasi yg ditransmisikan dalam rangka menyediakan keamanan. Misal, proses enkrip- si pesan yang berfungsi untuk mengacak pesan sedemikian rupa agar tidak da- pat dibaca oleh attacker, atau penyisipan suatu kode pada konten pesan yang berfungsi untuk keperluan verifikasi identitas entitas pengirim pesan oleh en- titas penerima. ❖ Secret information : Informasi rahasia yang dibagikan ke kedua entitas yang sa- ling berkomunikasi, dan informasi rahasia ini tidak boleh diketahui oleh attack- er. Misal, kunci enkripsi diperlukan untuk proses enkripsi dan dekripsi pesan. (cont.) Suatu Model untuk Keamanan Jaringan ❖ Trusted third party : Pihak ketiga yg dipercaya, baik oleh entitas pengirim mau- pun oleh entitas penerima, diperlukan untuk memperoleh transmisi yg aman. Misal, pihak ketiga bertanggung jawab dalam mendistribusikan informasi raha- sia ke kedua entitas sembari mengamankannya dari attacker, atau pihak ketiga dapat melakukan arbitrasi terhadap konflik yg terjadi antara kedua entitas ter- kait autentisitas transmisi pesan. • Model keamanan jaringan pada Figure 1.5 mendorong utk memenuhi empat tugas ketika mentransmisikan pesan : 1) Mendesain suatu algoritma yang menerapkan security-related information. Al- goritma ini harus didesain sedemikian rupa sehingga attacker tdk dapat meng- gagalkan tujuan keamanan yang ingin dicapai oleh algoritma. (cont.) Suatu Model untuk Keamanan Jaringan 2) Membangkitkan informasi rahasia yang akan digunakan oleh algoritma. 3) Mengembangkan metoda untuk mendistribusikan dan mengakomodasi peng- gunaan secara bersama (i.e., sharing) informasi rahasia. 4) Menentukan suatu protokol komunikasi yang akan digunakan oleh kedua enti- tas. Protokol komunikasi ini menggunakan algoritma dan informasi rahasia yg telah didesain (atau dipilih) dan dibangkitkan sebelumnya untuk mencapai la- yanan keamanan yang diinginkan. • Figure 1.6 di slide berikut memperlihatkan model keamanan jaringan yang lain. Model ini diberi nama network access security model kare- na fokus memproteksi sistem informasi dari akses yg tidak diinginkan. Suatu Model untuk Keamanan Jaringan • Deskripsi elemen opponent pada Figure 1.6 : ❖ Terdapat dua tipe opponent (atau lawan) yang umumnya ingin mengakses sis- tem informasi, yaitu human dan software. ❖ Human, atau manusia, biasanya seorang hacker dengan beragam tujuan, anta- ra lain mencari keuntungan finansial, merugikan pihak lain, atau hanya menca- ri popularitas/kesenangan semata. ❖ Human juga dapat seorang pegawai yang merasa tidak senang dengan perusa- haannya sehingga ia mengakses sistem informasi untuk membalas dendam. ❖ Software, atau lebih tepat disebut malicious software (atau malware), dapat digunakan untuk mengakses sistem informasi secara ilegal (tak terotorisasi). (cont.) Suatu Model untuk Keamanan Jaringan ❖ Malware memuat logika yg dapat memengaruhi kinerja dari application pro- grams dan utility programs apabila terpasang dan dieksekusi di sistem target, dan menimbulkan ancaman berupa : ➢ Information access threats : Mencegat atau mengubah data secara ilegal. ➢ Service threats : Mengeksploitasi kelemahan layanan yang disediakan oleh sistem sehingga mampu mencegah (atau menghentikan) akses yang dilaku- kan oleh para pengguna yang memiliki otoritas atas sistem. ❖ Dua contoh malware yang paling umum di sini, yaitu virus dan worms. Kedua jenis malware ini dapat dimasukkan ke dalam sistem melalui suatu disk yang berisikan software yg sebenarnya baik, tetapi telah disisipkan malware. Mal- ware juga dapat dimasukkan melalui jaringan yang terhubung ke sistem, dan cara ini yang paling banyak terjadi. (cont.) Suatu Model untuk Keamanan Jaringan ❖ Terdapat dua kategori mekanisme keamanan yg dapat diterapkan untuk meng- atasi akses yg tidak diinginkan, yaitu gatekeeper dan internal security controls. ❖ Gatekeeper meliputi 1) password-based logic procedures yang berguna untuk menolak seluruh akses, kecuali dari para user yang memiliki otoritas saja; dan 2) screening logic yang didesain untuk mendeteksi dan menolak worms, virus, dan lainnya. ❖ Internal security controls baru beroperasi apabila human dan software yg tdk memiliki otoritas telah berhasil mengakses sistem. Internal controls ini bertu- gas memonitor aktivitas dan menganalisa informasi yg disimpan sebagai ben- tuk usaha untuk mendeteksi eksistensi dari opponents ini. ORGANISASI2 PENGEMBANG STANDAR KEAMANAN Organisasi2 Pengembang Standar Keamanan • Standar keamanan adalah suatu teknik, aplikasi, tata kelola (manaje- men), dan/atau arsitektur di bidang kriptografi dan keamanan jaring- an yg dikembangkan oleh organisasi ternama dan diakui secara luas. • Berikut sejumlah organisasi yang paling terkenal dlm mengembang- kan atau mempromosikan standar keamanan : ❖ National Institute of Standards and Technology (NIST) : NIST merupakan suatu agensi federal Amerika Serikat yang mendalami ilmu pengukuran, standar, dan teknologi untuk kepentingan pemerintah Amerika Serikat dan inovasi di sektor privat. Meskipun cakupannya hanya untuk negaranya saja, Federal Information Processing Standards (FIPS) dan Special Publications (SP) milik oleh NIST mem- berikan efek yang luar biasa bagi dunia secara luas. (cont.) Organisasi2 Pengembang Standar Keamanan ❖ Internet Society (ISOC) : ISOC merupakan suatu komunitas profesional dengan sistem membership yg mana anggotanya boleh berupa organisasi maupun in- dividu yg berasal dari seluruh penjuru dunia. ISOC terdepan dalam menangani isu2 terkait internet di masa depan, dan menaungi sejumlah grup, spt Internet Engineering Task Force (IETF) dan Internet Architecture Board (IAB), yang ber- tanggung jawab atas standar2 infrastruktur internet. Seluruh grup ini mengem- bangkan standar internet beserta spesifikasi2 yang diperlukan, dan mempubli- kasikannya sebagai Requests for Comments (RFC). ❖ International Telecommunication Union - Telecommunication Standardization Sector (ITU-T) : ITU merupakan suatu organisasi internasional di bawah United Nations System yg mana pemerintah2 negara dan sektor2 privat saling bekerja sama utk mengoordinasikan jaringan dan layanan telekomunikasi global. ITU-T merupakan salah satu dari tiga sektor milik ITU yg bertugas mengembangkan standar2 teknis untuk seluruh bidang telekomunikasi. ITU-T mempublikasikan standar2 ini sebagai Recommendations. (cont.) Organisasi2 Pengembang Standar Keamanan ❖ International Organization of Standardization (ISO) : ISO merupakan suatu fe- derasi seluruh badan standar nasional yg berasal dari lebih 140 negara, tepat- nya satu badan standar nasional mewakili satu negara. Sebagai organisasi non- pemerintah, tujuan ISO ialah mempromosikan standardisasi dan aktivitas2 utk memfasilitasi perdangan internasional barang & jasa dan utk mengembangkan kooperasi di bidang intelektual, sains, teknologi, dan aktivitas ekonomi. Semua hasil kerja ISO yang dituang dalam international agreements dipublikasikan se- bagai International Standards. SELESAI
Jaringan Komputer Merupakan Perkembangan Dari Teknologi Komputer Yang Memungkinkan Dua Atau Lebih Komputer Yang Terhubung Sehingga Membentuk Satu Kesatuan Saling Bertukar Informasi