Keamanan Sistem Operasi


Keamanan Sistem Operasi

Keamanan sistem komputer adalah untuk menjamin sumber daya tidak digunakan atau dimodifikasi orang tak terotorisasi. Pengamanan termasuk masalah teknis, manajerial, legalitas dan politis.
Keamanan sistem terbagi menjadi tiga, yaitu :
1.      Keamanan eksternal (external security).     Berkaitan dengan pengamanan fasilitas komputer dari penyusup (hacker)   dan bencana seperti kebakaran dan kebanjiran.
2.      Keamanan interface pemakai (user interface security).     Berkaitan dengan identifikasi pemakai sebelum pemakai diijinkan mengakses program dan data yang disimpan.
3.      Keamanan internal (internal security).     Berkaitan dengan pengamanan beragam kendali yang dibangun pada perangkat keras dan sistem operasi yang menjamin operasi yang handal dan tak terkorupsi untuk menjaga integritas program dan data. Istilah keamanan (security) dan proteksi (protection) sering digunakan secara bergantian. Untuk menghindari kesalahpahaman, istilah keamanan mengacu ke seluruh masalah keamanan dan istilah mekanisme proteksi mengacu ke mekanisme sistem yang digunakan untuk memproteksi/melindungi informasi pada sistem komputer.

Masalah-Masalah Keamanan

Terdapat dua masalah penting, yaitu :
Kehilangan data (data loss).    
Dapat disebabkan karena :
1        Bencana.
·       Kebakaran.
·       Banjir.
·       Gempa bumi.
·       Perang.
·       Kerusuhan.
·       Binatang.
2        Kesalahan perangkat keras dan perangkat lunak.
·         Ketidak berfungsian pemroses.
·         Disk atau tape yang tidak terbaca.
·         Kesalahan telekomunikasi.
·         Kesalahan program (bugs).
3        Kesalahan/kelalaian manusia.
·         Kesalahan pemasukan data.
·         Memasang tape atau disk yang salah.
·         Eksekusi program yang salah.
·         Kehilangan disk atau tape. Kehilangan data dapat diatasi dengan mengelola beberapa backup dan backup ditempatkan jauh dari data yang online.


Penyusup (hacker).
Terdiri dari :
1.      Penyusup pasif, yaitu yang membaca data yang tak diotorisasi.
2.      Penyusup aktif, yaitu yang mengubah data yang tak diotorisasi. Kateogri penyusupan :
·         Lirikan mata pemakai non teknis. Pada sistem time-sharing, kerja pemakai dapat diamati orang sekelilingnya. Bila dengan lirikan itu dapat mengetahui apa yang diketik saat pengisian password, maka pemakai non teknis dapat mengakses fasilitas yang bukan haknya.
·         Penyadapan oleh orang dalam.
·         Usaha hacker dalam mencari uang.
·         Spionase militer atau bisnis.

Ancaman-Ancaman Keamanan

Sasaran pengamanan adalah menghindari, mencegah dan mengatasi ancaman terhadap sistem. Kebutuhan keamanan sistem komputer dikategorikan tiga aspek, yaitu :
1.      Kerahasiaan (secrecy).     
Adalah keterjaminan bahwa informasi disistem komputer hanya dapat diakses oleh pihak-pihak yang diotorisasi dan modifikasi tetap menjaga konsistensi dan keutuhan data di sistem.



2.      Integritas (integrity).     
Adalah keterjaminan bahwa sumber daya sistem komputer hanya dapat dimodifikasi oleh pihak-pihak yang diotorisasi.
3.      Ketersediaan (availability).    
Adalah keterjaminan bahwa susmber daya sistem komputer tersedia bagi pihakpihak yang diotorisasi saat diperlukan.
Tipe-tipe ancaman terhadap keamanan sistem dapat dimodelkan dengan memandang fungsi sistem komputer sebagai penyedia informasi. 
Berdasarkan fungsi ini, ancaman terhadap sistem komputer dapat dikategorikan menjadi empat ancaman, yaitu :
1.       Interupsi (interuption). Sumber daya sistem komputer dihancurkan atau menjadi tak tersedia atau tak berguna. Interupsi merupakan ancaman terhadap ketersediaan. Contoh : penghancuran bagian perangkat keras, seperti harddisk, pemotongan kabel komunikasi.
2.       Intersepsi (interception). Pihak tak diotorisasi dapat mengakses sumber daya. Interupsi merupakan ancaman terhadap kerahasiaan. Pihak tak diotorisasi dapat berupa orang atau program komputer. Contoh : penyadapan untuk mengambil data rahasia, mengetahui file tanpa diotorisasi.
3.       Modifikasi (modification). Pihak tak diotorisasi tidak hanya mengakses tapi juga merusak sumber daya. Modifikasi merupakan ancaman terhadap integritas. Contoh : mengubah nilai-nilai file data, mengubah program sehingga bertindak secara berbeda, memodifikasi pesan-pesan yang ditransmisikan pada jaringan.
4.       Fabrikasi (fabrication). Pihak tak diotorisasi menyisipkan/memasukkan objek-objek palsu ke sistem. Fabrikasi merupakan ancaman terhadap integritas. Contoh : memasukkan pesan-pesan palsu ke jaringan, penambahan record ke file.

Petunjuk Pengamanan Sistem

Terdapat beberapa prinsip pengamanan sistem komputer, yaitu :
1.      Rancangan sistem seharusnya publik
Keamanan sistem seharusnya tidak bergantung pada kerahasiaan rancangan mekanisme pengamanan. Mengasumsikan penyusup tidak akan mengetahui cara kerja sistem pengamanan hanya menipu/ memperdaya perancang sehingga tidak membuat mekanisme proteksi yang bagus.
2.      Dapat diterima. Skema yang dipilih harus dapat diterima secara psikologis
Mekanisme proteksi seharusnya tidak menganggu kerja pemakai dan memenuhi kebutuhan otorisasi pengaksesan. Jika mekanisme tidak mudah digunakan maka tidak akan digunakan atau digunakan secara tak benar.


3.      Pemeriksaan otoritas saat itu
Sistem tidak seharusnya memeriksa ijin dan menyatakan pengaksesan diijinkan, serta kemudian menetapkan terus informasi ini untuk penggunaan selanjutnya. Banyak sistem memeriksa ijin ketika file dibuka dan setelah itu (operasi-operasi lain) tidak diperiksa. Pemakai yang membuka file dan lupa menutup file akan terus dapat walaupun pemilik file telah mengubah atribut proteksi file.
4.      Kewenangan serendah mungkin
Program atau pemakai sistem seharusnya beroperasi dengan kumpulan wewenang serendah mungkin yang diperlukan untuk menyelesaikan tugasnya. Default sistem yang digunakan harus tak ada akses sama sekali.
5.      Mekanisme yang ekonomis
 Mekanisme proteksi seharusnya sekecil, sesederhana mungkin dan seragam sehingga memudahkan verifikasi. Proteksi seharusnya dibangun dilapisan terbawah. Proteksi merupakan bagian integral rancangan sistem, bukan mekanisme yang ditambahkan pada rancangan yang telah ada.

 Otentifikasi Pemakai

Kebanyakan proteksi didasarkan asumsi sistem mengetahui identitas pemakai. Masalah identifikasi pemakai ketika login disebut otentifikasi pemakai (user authentication). 

Kebanyakan metode otentifikasi didasarkan pada tiga cara, yaitu :
1.      Sesuatu yang diketahui pemakai, misalnya :
·         Password
·         Kombinasi kunci
·         Nama kecil ibu mertua
·         Dan sebagainya
2.      Sesuatu yang dimiliki pemakai, misalnya :
·         Badge
·         Kartu identitas
·         Kunci
·         Dan sebagainya.
3.      Sesuatu mengenai (ciri) pemakai, misalnya :
·         Sidik jari
·         Sidik suara
·         Foto
·         Tanda tangan
Password Pemakai memilih satu kata kode, mengingatnya dan mengetikkan saat akan mengakses sistem komputer. Saat diketikkan, komputer tidak menampilkan dilayar. Teknik ini mempunyai kelemahan yang sangat banyak dan mudah ditembus. Pemakai cenderung memilih password yang mudah diingat. Seseorang yang kenal dengan pemakai dapat mencoba login dengan sesuatu yang diketahuinya mengenai pemakai.

Proteksi password dapat ditembus dengan mudah, antara lain :
·         Terdapat file berisi nama depan, nama belakang, nama jalan, nama kota dari kamus ukuran sedang, disertai dengan pengejaan dibalik), nomor plat mobil yang valid, dan string-string pendek karakter acak.
·         Isian di file dicocokkan dengan file password.
Upaya untuk lebih mengamankan proteksi password, antara lain :
1.      Salting
Menambahkan string pendek ke string password yang diberikan pemakai sehingga mencapai panjang password tertentu.
2.      One time password.
Pemakai harus mengganti password secara teratur. Upaya ini membatasi peluang password telah diketahui atau dicoba-coba pemakai lain. Bentuk ekstrim pendekatan ini adalah one time password, yaitu pemakai mendapat satu buku berisi daftar password. Setiap kali pemakai login, pemakai menggunakan password berikutnya yang terdapat di daftar password. Dengan one time password, pemakai direpotkan keharusan menjaga agar buku passwordnya jangan sampai dicuri.


3.      Satu daftar panjang pertanyaan dan jawaban.
Variasi terhadap password adalah mengharuskan pemakai memberi satu daftar pertanyaan panjang dan jawabannya. Pertanyaan-pertanyaan dan jawabannya dipilih pemakai sehingga pemakai mudah mengingatnya dan tak perlu menuliskan di kertas. Pertanyaan berikut dapat dipakai, misalnya :
·         Siapa mertua abang ipar Badru ?
·         Apa yang diajarkan Pak Harun waktu SD ?
·         Di jalan apa pertama kali ditemukan simanis ?
Pada saat login, komputer memilih salah satu dari pertanyaan-pertanyaan secara acak, menanyakan ke pemakai dan memeriksa jawaban yang diberikan.
4.      Tantangan tanggapan (chalenge response).
 Pemakai diberi kebebasan memilih suatu algoritma, misalnya x3. Ketika pemakai login, komputer menuliskan di layar angka 3. Dalam kasus ini pemakai mengetik angka 27. Algoritma dapat berbeda di pagi, sore, dan hari berbeda, dari terminal berbeda, dan seterusnya.

Identifikasi fisik Pendekatan lain adalah memberikan yang dimiliki pemakai, seperti : Kartu berpita magnetik Kartu pengenal dengan selarik pita magnetik. Kartu ini disisipkan ke suatu perangkat pembaca kartu magnetik jika akan mengakses komputer. Teknik ini biasanya dikombinasikan dengan password, sehingga pemakai dapat login sistem komputer bila memenuhi dua syarat berikut :
·         Mempunyai kartu
·         Mengetahui password yang spesifik kartu itu
ATM merupakan mesin yang bekerja dengan cara ini. Sidik jari Pendekatan lain adalah mengukur ciri fisik yang sulit ditiru, seperti : 
·         Sidik jari dan sidik suara
·         Analisis panjang jari
·         Pengenalan visual dengan menggunakan kamera diterapkan.
·         Dan sebagainya.

Pembatasan

Pembatasan-pembatasan dapat dilakukan sehingga memperkecil peluang penembusan oleh pemakai yang tak diotorisasi, misalnya :
·         Pembatasan login. Login hanya diperbolehkan : > Pada terminal tertentu. > Hanya ada waktu dan hari tertentu. > Pembatasan dengan call-back. Login dapat dilakukan siapapun. Bila telah sukses login, sistem segera memutuskan koneksi dan memanggil nomor telepon yang telah disepakati. Penyusup tidak dapat menghubungi lewat sembarang saluran telepon, tapi hanya pada saluran telepon tertentu.
·         Pembatasan jumlah usaha login. Login dibatasi sampai tiga kali dan segera dikunci dan diberitahu ke administrator. Semua login direkam dan sistem operasi melaporkan informasi-informasi berikut : >> Waktu, yaitu waktu pemakai login. >> Terminal, yaitu terminal dimana pemakai login.
Access Control Matrix Masalah proteksi adalah mengenai cara mencegah proses-proses mengakses objek-objek yang tidak diotorisasi. Mekanisme ini juga harus memungkinkan membatasi proses-proses ke suatu subset operasi-operasi legal yang diperlukan. Misalnya proses A dapat membaca file F, tapi tidak menulisinya. Agar dapat menyediakan mekanisme proteksi berbeda dikembangkan berdasar konsep domain. Domain adalah himpunan pasangan (hak, objek). Tiap pasangan menspesifikasikan objek dan suatu subset operasi yang dapat dilakukan terhadapnya. Hak dalam konteks ini berarti ijin melakukan suatu operasi. Proses berjalan pada suatu domain proteksi, yaitu proses merupakan anggota suatu domain atau beberapa domain. Terdapat kumpulan objek yang dapat diakses proses. Untuk tiap objek, proses mempunyai suatu kumpulan hak terhadap objek itu. Proses-proses dapat juga beralih dari satu domain ke domain lain selama eksekusi. Aturan peralihan domain ini bergantung pada sistem. Domain ditetapkan dengan mendaftarkan pemakai-pemakai yang termasuk domain itu. Proses-proses yang dijalankan pemakai adalah proses-proses pada domain itu dan mempunyai hak akses terhadap objek seperti ditentukan domainnya.
Cara penyimpanan informasi anggota domain Secara konseptual adalah berupa satu matriks besar, dimana Baris menunjukkan domain dan Kolom menunjukkan objek. Tiap elemen matriks mendaftar hak-hak yang dimiliki domain terhadap objek. Dengan matriks ini, sistem dapat mengetahui hak pengaksesan terhadap objek. Gambar berikut menunjukkan matriks pengaksesan objek.
Untuk sistem-sistem yang mengijinkan peralihan domain dimodelkan dengan menganggap domain sebagai objek, yaitu : o Jika terdapat operasi enter, berarti mempunyai hak berpindah domain. Untuk sistem-sistem yang mengijinkan peralihan domain dimodelkan dengan menganggap domain sebagai objek, yaitu : o Jika terdapat operasi enter, berarti mempunyai hak berpindah domain.
Ancaman-ancaman canggih terhadap sistem komputer adalah program yang mengeksploitasi kelemahan sistem operasi. Kita berurusan dengan program aplikasi begitu juga program utilitas seperti editor dan kompilator.

Terdapat taksonomi ancaman perangkat lunak klasifikasi program jahat, yaitu :
1.       Program-program yang memerlukan program inang (host program). Fragmen program tidak dapat mandiri secara independen dari suatu program aplikasi, program utilitas atau program sistem.

2.       Program-program yang tidak memerlukan program inang. Program sendiri yang dapat dijadwalkan dan dijalankan oleh sistem operasi.
Pembagian atau taksonomi menghasilkan tipe-tipe program jahat sebagai berikut :
1.         Bacteria.
Bacteria adalah program yang mengkonsumsi sumber daya sistem dengan mereplikasi dirinya sendiri. Bacteria tidak secara eksplisit merusak file. Tujuan program ini hanya satu yaitu mereplikasi dirinya. Program bacteria yang sederhana bisa hanya mengeksekusi dua kopian dirinya secara simultan pada sistem multiprogramming atau menciptakan dua file baru, masing-masing adalah kopian file program bacteria. Kedua kopian in kemudian mengkopi dua kali, dan seterusnya.
2.         Logic bomb.
Logic bomb adalah logik yang ditempelkan pada program komputer agar memeriksa suatu kumpulan kondisi di sistem. Ketika kondisi-kondisi yang dimaksud ditemui, logik mengeksekusi suatu fungsi yang menghasilkan aksi-aksi tak diotorisasi. Logic bomb menempel pada suatu program resmi yang diset meledak ketika kondisi-kondisi tertentu dipenuhi. Contoh kondisi-kondisi untuk memicu logic bomb adalah ada atau tudak adanya file-file tertentu, hari tertentu baru minggu atau tanggal, atau pemakai menjalankan aplikasi tertentu. Begitu terpicu, bomb mengubah atau menghapus data atau seluruh file, menyebabkan mesin terhenti, atau mengerjakan perusakan lain.
3.         Trapdoor.
Trapdoor adalah titik masuk tak terdokumentasi rahasia di satu program untuk memberikan akses tanpa metode-metode otentifikasi normal. Trapdoor telah dipakai secara benar selama bertahun-tahun oleh pemrogram untuk mencari kesalahan program. Debugging dan testing biasanya dilakukan pemogram saat mengembangkan aplikasi. Untuk program yang mempunyai prosedur otentifikasi atau setup lama atau memerlukan pemakai memasukkan nilai-nilai berbeda untuk menjalankan aplikasi maka debugging akan lama bila harus melewati prosedur-prosedur tersebut. Untuk debug program jenis ini, pengembang membuat kewenangan khusus atau menghilangkan keperluan setup dan otentifikasi. Trapdoor adalah kode yang menerima suatu barisan masukan khusus atau dipicu dengan menjalankan ID pemakai tertentu atau barisan kejahatan tertentu. Trapdoor menjadi ancaman ketika digunakan pemrogram jahat untuk memperoleh pengkasesan tak diotorisasi. Pada kasus nyata, auditor (pemeriks) perangkat lunak dapat menemukan trapdoor pada produk perangkat lunak dimana nama pencipta perangkat lunak berlakuk sebagai password yang memintas proteksi perangkat lunak yang dibuatnya. Adalah sulit mengimplementasikan kendali-kendali perangkat lunak untuk trapdoor.
4.         Trojan horse.
Trojan horse adalah rutin tak terdokumentasi rahasia ditempelkan dalam satu program berguna. Program yang berguna mengandung kode tersembunyi yang ketika dijalankan melakukan suatu fungsi yang tak diinginkan. Eksekusi program menyebabkan eksekusi rutin rahasia ini. Programprogram trojan horse digunakan untuk melakukan fungsi-fungsi secara tidak langsung dimana pemakai tak diotorisasi tidak dapat melakukannya secara langsung. Contoh, untuk dapat mengakses file-file pemakai lain pada sistem dipakai bersama, pemakai dapat menciptakan program trojan horse. Trojan horse ini ketika program dieksekusi akan mengubah ijin-ijin file sehingga file-file dapat dibaca oleh sembarang pemakai. Pencipta program dapat menyebarkan ke pemakai-pemakai dengan menempatkan program di direktori bersama dan menamai programnya sedemikian rupa sehingga disangka sebagai program utilitas yang berguna. Program trojan horse yang sulit dideteksi adalah kompilator yang dimodifikasi sehingga menyisipkan kode tambahan ke programprogram tertentu begitu dikompilasi, seperti program login. Kode menciptakan trapdoor pada program login yang mengijinkan pencipta log ke system menggunakan password khusus. Trojan horse jenis ini tak pernah dapat ditemukan jika hanya membaca program sumber. Motivasi lain dari trojan horse adalah penghancuran data. Program muncul sebagai melakukan fungsi-fungsi berguna (seperti kalkulator), tapi juga secara diam-diam menghapus file-file pemakai. Trojan horse biasa ditempelkan pada program-program atau rutin-rutin yang diambil dari BBS, internet, dan sebagainya.

5.         Virus.
Virus adalah kode yang ditempelkan dalam satu program yang menyebabkan pengkopian dirinya disisipkan ke satu program lain atau lebih. Program menginfeksi program-program lain dengan memodifikasi program- program itu. Modifikasi itu termasuk memasukkan kopian program virus yang kemudian dapat menginfeksi program-program lain. Selain hanya progasi, virus biasanya melakuka fungsi yang tak diinginkan. Seperti virus biologis, pada virus komputer terdapat kode intruksi yang dapat membuat kpian sempurna dirinya. Ketika komputer yang terinfeksi berhubungan (kontak) dengan perangkat lunak yang belum terinfeksi, kopian virus memasuki program baru. Infeksi dapat menyebar dari komputer ke komputer melalui pemakai-pemakai yang menukarkan disk atau mengirim program melalui jaringan. Pada lingkungan jaringan, kemampuan mengakses aplikasi dan layanan-layanan komputer lain merupakan fasilitas sempurna penyebaran virus.

6.         Worm.
WormAdalah program yang dapat mereplikasi dirinya dan mengirim kopiankopian dari komputer ke komputer lewat hubungan jaringan. Begitu tiba, worm diaktifkan untuk mereplikasi dan progasai kembali. Selain hanya propagasi, worm biasanya melakukan fungsi yang tak diinginkan. Network worm menggunakan hubungan jaringan untuk menyebar dari sistem ke sistem lain. Sekali aktif di suatu sistem, network worm dapat berlaku seperti virus atau bacteria, atau menempelkan program trojan horse atau melakukan sejumlah aksi menjengkelkan atau menghancurkan. Untuk mereplikasi dirinya, network worm menggunakan suatu layanan jaringan, seperti :
·         Fasilitas surat elektronik (electronic mail facility), yaitu worm mengirimkan kopian dirinya ke sistem-sistem lain.
·         Kemampuan eksekusi jarak jauh (remote execution capability), yaitu worm mengeksekusi kopian dirinya di sistem lain.
·         Kemampuan login jarak jauh (remote login capability), yaitu worm log pada sistem jauh sebagai pemakai dan kemudian menggunakan perintah untuk mengkopi dirinya dari satu sistem ke sistem lain. Kopian program worm yang baru kemudian dijalankan di sistem jauh dan melakukan fungsi-fungsi lain yang dilakukan di sistem itu, worm terus menyebar dengan cara yang sama.
Network worm mempunyai ciri-ciri yang sama dengan virus komputer, yaitu mempunyai fase-fase sama, yaitu :
·         Dormant phase.
·         Propagation phase.
·         Trigerring phase.
·         Execution phase.
Network worm juga berusaha menentukan apakah sistem sebelumnya telah diinfeksi sebelum mengirim kopian dirinya ke sistem itu.

sumber : D. Sweetania, “Pengamanan sistem operasi,” pp. 1–19

Komentar