P. 1
Sistem Operasi - Keamanan Sistem Komputer

Sistem Operasi - Keamanan Sistem Komputer

5.0

|Views: 1,745|Likes:
Published by fachryfr
Security of Computer System and Flaws in many operating systems.
Security of Computer System and Flaws in many operating systems.

More info:

Published by: fachryfr on Nov 29, 2009
Copyright:Traditional Copyright: All rights reserved

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX or read online from Scribd
See more
See less

04/25/2013

Tugas Mata Kuliah Sistem Operasi Keamanan Sistem Komputer

Dibuat Oleh : 1. Fachry Frisandi / 13507027 2. Adiska Fardani / 13507052 3. M. Ikrar Pradana / 13507063 4. Mega Ariyanfina / 13507077

Institut Teknologi Bandung Sekolah Teknik Elektro dan Informatika 2009

Serangan Keamanan yang Umum
Untuk mengerti tipe-tipe ancaman atau serangan keamanan pada sistem, kita membutuhkan definisi dari pernyataan kebutuhan terhadap keamanan (security requirements). requirements : 1. Confidentiality : Informasi yang ada pada sistem komputer hanya dapat diakses atau dibaca oleh pihak-pihak yang berhak. Jenis akses termasuk menampilkan, mencetak, dan bentuk lain pengungkapan informasi. 2. Integrity : Aset-aset sistem komputer hanya dapat dimodifikasi oleh pihakpihak yang berwenang. Jenis – jenis modifikasi termasuk menulis, mengubah, mengubah status, menghapus dan membuat. 3. Availability : Aset – aset sistem komputer hanya tersedia untuk pihakpihak yang berwenang. 4. Authenticity : Sistem komputer mampu untuk memverifikasi identitas dari user. Cara yang biasa digunakan untuk mengetes keamanan suatu sistem adalah dengan menyewa group yang terdiri dari para pakar, yang sering dikenal dengan sebutan tiger teams atau penetration teams, untuk mencoba menyusup masuk ke dalam sistem kita. Tim penetrasi ini telah menemukan beberapa area dengan keamanan yang lemah dari sistem. Jenis – jenis serangan yang dilakukan diantaranya : 1. Meminta memory pages, disk space, atau tape , dan kemudian Keamanan komputer dan jaringan harus memenuhi 4

membacanya. Banyak sistem yang tidak menghapus memory pages, disk space dan tape sebelum mengalokasikan mereka dan didalamnya terdapat informasi dari pemilik sebelumnya. 2. Mencoba system call yang ilegal, atau system call yang legal dengan parameter yang ilegal, atau system call yang legal dengan parameter yang legal namun memasukkan parameter yang tidak masuk akal, seperti nama file yang berisi ribuan karakter. Pada banyak sistem, cara seperti ini akan membingungkan.

3. Mulai masuk (log in) dan menekan tombol DEL, RUBOUT, atau BREAK ditengah-tengah proses login. Pada sebagian sistem, program untuk mengecek password akan selesai dan proses login akan dianggap selesai. 4. Mencoba memodifikasi struktur sistem operasi yang kompleks yang disimpan di user space. 5. Lihat manual yang berkata “jangan lakukan X”. Kemudian, lakukan ‘X’ dan sebanyak mungkin variasinya . 6. Yakinkan system programmer untuk menambahkan pintu jebakan (trap door) sebagai jebakan setiap ada user yang melewatkan pemeriksaan keamanan yang vital. 7. Jika serangan-serangan lain gagal, tim dapat menemui administrator sistem dan berpura-pura sebagai user yang lupa password dan membutuhkannya cepat.

Skema Keamanan Sistem Komputer

Skema keamanan sistem komputer berikut adalah hal-hal yang perlu diperhatikan dalam mengamankan suatu sistem komputer, yakni : • • • File Security (Keamanan File) Proteksi Data Autentikasi User

File yang sensitif harus diamankan (file security)

Data

Akses ke data harus dikontrol (proteksi) Data

Akses ke komputer harus dikontrol (autentikasi user)

Proses yang merepresentasikan user Guard

User melakukan request

Ancaman terhadap keamanan dan aset sistem komputer

Aset Komputer

Availability

Secrecy

Integrity / Authenticity

Hardware

Komponen dicuri atau dibuat tidak berfungsi sehingga menghilangkan servis (denying service).

Software

Program dihapus, mengakibatkan kehilangan akses ke user.

Copy program yang belum diautorisasi.

Program yang berjalan di modifikasi sehingga mengakibatkan kegagalan pada saat eksekusi atau mengakibatkan program melakukan sesuatu yang tidak diinginkan.

Data

File dihapus, sehingga user tidak dapat mengakses file tersebut.

Aksi membaca file yang belum terautorisasi. Dan, Analisis data statistik yang membuka data-

File yang sudah ada dimodifikasi atau file baru dibuat.

data tersembunyi. Jalur komunikasi Pesan dirusak atau dihapus. Jalur komunikasi dirusak sehingga tidak dapat digunakan Pesan dibaca tanpa izin. Traffic dari jaringan diamati Pesan dimodifikasi, tertunda atau diduplikasi.

Celah keamanan yang Populer
Definisi security flaws System security flaws – lubang sekuritas sistem merupakan kondisi apapun yang dapat mengakibatkan penolakan layanan, pembukaan informasi yang tidak diinginkan, perusakan data tanpa persetujuan, maupun modifikasi data. Medapatkan jawaban ini, seringkali ditanyakan kembali oleh banyak orang, “kalau begitu, apakah security flaw itu adalah bug?”. Jawaban dari pertanyaan ini adalah ya, security flaw memang merupakan hal yang baisa disebut dengan istilah bug. Secara umum, security flaw adalah bagian dari suatu program yang dapat menyebabkan pelanggaran pada requirements keamanan sistem itu sendiri. Oleh sebab itu, untuk menemukan security flaw dibutuhkan pengetahuan yang berbeda. Menurut IEEE Standard Glossary of Software Engineering Terminology, berikut merupakan beberapa definisi dari istilah ‘flaw’: • • • Error : aksi manusia yang memberikan hasil yang tidak benar (seperti software yang mengandung kesalahan). Fault : kesalahan langkah, proses, ataupun definisi data pada program komputer. Failure fungsinya Dari glossary ini, bug atau security failure termasuk sebagai sinonim dari error dan fault. Dalam hal ini, flaw memiliki definisi dengan fault, dengan : ketidakmampuan sistem atau komponen untuk menjalankan yang luas dalam hal requirements keamanan – security requirements. Requirements ini tentunya bervariasi untuk sistem dan aplikasi

kemungkinan bahwa fault bisa didapatkan secara insidental ataupun dengan sengaja.

Mengapa dilakukan pencarian security flaws Pekerjaan awal pada bidang keamanan komputer berdasar pada pola “penetrate and patch” – melubangi dan menutup; para analis mencari-cari security flaws dari sistem dan berusaha untuk menghilangkannya. Namun sayangnya, flaws ini seperti tidak pernah berakhir, selalu muncul yang baru. Terkadang perbaikan dari security flaws menyebabkan terbentuknya flaws yang baru, namun tidak dapat diperbaiki karena sistem operasi tersebut masih bergantung kepada perbaikan tadi. Pengalaman ini membawa para researcher untuk mencari cara pembangunan sistem yang berorientasi pada keamanan dari awal, untuk memperbaiki sistem ter-install yang berlubang. dibandingkan mencoba

Kategori flaws US Naval Research Laboratory telah melakukan riset mengenai sekuritas komputer sejak tahun 1993. Berikut merupakan klasifikasi security flaws dair hasil riset tersebut.

Bagan 1Flaw dari segi Bagaimana flaw ditemukan

Bagan 2Flaw dari segi Waktu flaw ditemukan

Bagan 3 Flaw dari segi Lokasi flaw ditemukan

Flaw pada sistem operasi yang ada sekarang Setiap perancang sistem operasi pasti telah melakukan yang pekerjaan yang maksimal untuk menghasilkan sistem operasi yang terbaik yang pernah ada. Namun pada sistem operasi-sistem operasi yang ada sekarang, masih dapat ditemukan lubang di segi keamanan yang bahkan datng dari fitur sistem itu sendiri. Berikut merupakan beberapa contoh kekurangan sekuritas yang terkenal oleh komunitas pengguna dan pengembang di beberapa sistem operasi yang ada sekarang. UNIX • Utilitas lpr pada UNIX Perintah lpr yang dimiliki oleh UNIX adalah perintah yang berfungsi untuk mencetak file ke line printer, dengan opsi untuk menghapus file tersebut dari direktori setelah file tersebut dicetak. Hal ini memungkinkan pengguna untuk menghapus file apapun, termasuk file yang berisikan password yang disimpan oleh pengguna lain.

Core file linking

Pengguna yang telah mengenal sistem UNIX dengan baik akan mampu untuk memecahkan keamanan UNIX dengan cara menghubungkan file yang dinamakan dengan nama core, yang disimpan di direktori kerja dengan suatu file yang berisikan password. Lalu pengguna ini akan memaksa melakukan core damp pada suatu program yang memerlukan user ID dan password (program SETUID). Maka program tersebut akan menulis file core yang tadi, yang sekarang berada di atas file password. Dengan cara ini, pengguna tadi bisa mengganti file password dengan file yang berisikan string apapun yang dibuat olehnya (argumen perintah, dll) • Perintah mkdir Perintah mkdir yang merupakan sebuah program SETUID yang dimiliki oleh root. Pada operasinya, mkdir akan membentuk i-node untuk direktori tertentu (yang diikutsertakan saat penulisan perintah) dengan system call mknod, dan kemudian mengganti owner dari direktori tadi dari root menjadi UID seorang pengguna. Saat sistem itu lambat, seorang pengguna akan mampu untuk dengan cepat menghapus i-node direktori tadi dan membuat link dengan file password atas nama direktori tadi – setelah perintah mknod, tetapi sebelum penggantian owner dilakukan (perintah chown). Saat mkdir melakukan chown, pengguna tadi telah menjadi owner dari file password tersebut. Dengan beberapa perintah di script shell, hal ini dapat dicoba berulang-ulang hingga berhasil dilakukan.

OS/360 Pada OS/360, salah satu lubang sekuritas yang terkenal dari sistem operasi ini ditemukan dari fiturnya yang mampu melakukan pembacaan tape sambil terus melanjutkan komputasi. Hal ini memungkinan pengguna yang cerdik untuk melakukan start up pembacaan tape, lalu melakukan system call yang membutuhkan struktur data user; contohnya adalah file untuk dibaca beserta passwordnya. Sistem operasi pertama-tama akan mem-verifikasi apakah password tadi merupakan password yang tepat untuk file yang dimaksud. Lalu sistem operasi akan kembali membaca nama file lagi untuk mengakses (akses data sungguhan). Sayangnya, tepat sebelum sistem mengambil nama file untuk

kedua kalinya, nama file tadi sudah tergantikan dengan tape drive (ter-overwrite oleh pembacaan tape drive ke user space). Maka nama file yang akan dibaca oleh sistem adalah nama file yang baru, yang dengan catatan file tersebut tidak memerlukan password. Hal ini mengakibatkan file yang diproteksi oleh password jadi dapat diakses tanpa otorisasi user.

Celah keamanan populer di TENEX

Sistem operasi TENEX dahulu populer digunakan pada DEC-10 Computer. Saat ini TENEX tidak lagi digunakan, namun celah keamanannya telah menjadi salah satu sejarah dalam dunia keamanan komputer. TENEX mendukung metode paging. Untuk memungkinkan pengguna untuk memantau perilaku program mereka, dimungkinkan untuk menginstruksikan sistem untuk memanggil pengguna fungsi pada setiap page fault. TENEX juga menggunakan password untuk memproteksi files, sehingga untuk mengakses file tersebut program harus memiliki kata kunci yang sesuai. Cara kerja sistem operasi dalam mengecek password adalah sebagai berikut :

Mengiterasi karakter per karakter rangkaian password dimulai dari karakter pertama

Apabila karakter sesuai dengan karakter pada password sebenarnya, maka sistem operasi akan melanjutkan pengecekan ke karakter berikutnya.

Apabila karakter tidak sesuai dengan karakter pada password sebenarnya, maka sistem operasi akan memberikan peringatan bahwa password salah.

Karakteristik TENEX inilah yang memberi celah kepada para intruder

untuk memasuki celah keamanannya. Mereka mensiasatinya dengan mengatur posisi password secara hati-hati seperti pada gambar di bawah ini :

Para intruder menempatkan karakter pertama di akhir page yang ada pada memori dan sisanya di page selanjutnya (kita sebut page 2) yang ada di luar memori dengan cara mereferensi ke banyak page lainnya sehingga page 2 terpaksa harus berada di luar memori. Selanjutnya kembali ke cara kerja pengecekan password tadi, dimana ketika ditemukan ada password yang tidak sesuai, maka program akan mengeluarkan peringatan ILLEGAL PASSWORD. Pada contoh (a) terlihat bahwa intruder mencoba memasukkan karakter ‘A’, namun karena tidak sesuai dengan password sebenarnya, ia menggantinya dengan ‘B ‘seperti pada contoh (b). Hal ini terus berulang hingga ditemukan karakter yang pas. Ketika karakter yang sesuai ditemukan, pengecekan akan dilanjutkan ke karakter berikutnya seperti pada contoh (c). Pada kasus ini karakter pertama password sebenarnya adalah ‘F’, kemudian intruder melakukan hal yang sama untuk karakter selanjutnya. Dari cara pengecekan ini maka terdapat 128n kemungkinan, sesuai dengan jumlah karakter ASCII.

Prinsip Desain untuk Keamanan
1. Desain sistem sebaiknya diketahui oleh publik (Open Design) Suatu desain sistem yang dibuat rahasia atau tertutup menjamin keamanan dari sistem. 2. Default awal dari sistem adalah no access Hal ini memudahkan untuk mengetahui jika terjadi error yang disebabkan oleh penolakan terhadap orang yang tidak berhak mengakses. 3. Selalu periksa current authority Karena default awal adalah no access, maka untuk melakukan akses terhadap sistem, file atau data harus selalu dilakukan pemeriksaan otoritas, apakah orang yang sedang atau akan mengakses sistem adalah orang yang memang mempunyai hak. 4. Setiap proses harus diberikan privilege sesedikit mungkin Suatu proses yang sedang berjalan hanya diberikan akses secukupnya yang akan digunakan untuk menyelesaikan tugasnya. Setelah suatu akses terhadap file atau data telah selesai, hak akses tersebut harus segera dihilangkan. Hal ini dilakukan agar tidak banyak terjadi banyak kerusakan bila muncul “serangan” terhadap komputer kita. 5. Mekanisme proteksi haruslah sederhana, seragam, dan dibangun di dalam layer terbawah dari sistem 6. Harus bisa diterima secara psikologi Mekanisme untuk menjaga keamanan dari suatu sistem jangan dibuat semakin rumit, terutama dari sisi user. Sebisa mungkin kerumitan dalam mekanisme tersebut disembunyikan dan yang ditampilkan kepada user hanya hal-hal yang diperlukan saat instalasi, konfigurasi dan penggunaan dari suatu sistem. Hal tambahan yang harus diperhatikan: belum tentu

Keep the design simple Dari segi keamanan, semakin sederhana desain sistem yang dibuat makan semakin besar kemungkinannya untuk memiliki tingkat keamanan yang tinggi.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->