You are on page 1of 13

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). Keamanan komputer dan jaringan harus memenuhi 4
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 pihak-
pihak yang berwenang. Jenis – jenis modifikasi termasuk menulis,
mengubah, mengubah status, menghapus dan membuat.
3. Availability : Aset – aset sistem komputer hanya tersedia untuk pihak-
pihak 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


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

Proses yang merepresentasikan


user
Guard
Akses ke komputer harus dikontrol (autentikasi user)

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, Copy program Program yang


mengakibatkan yang belum berjalan di
kehilangan akses diautorisasi. modifikasi sehingga
ke user. mengakibatkan
kegagalan pada
saat eksekusi atau
mengakibatkan
program melakukan
sesuatu yang tidak
diinginkan.

Data File dihapus, Aksi membaca file File yang sudah ada
sehingga user tidak yang belum dimodifikasi atau
dapat mengakses terautorisasi. Dan, file baru dibuat.
file tersebut. Analisis data
statistik yang
membuka data-
data tersembunyi.

Jalur komunikasi Pesan dirusak atau Pesan dibaca Pesan dimodifikasi,


dihapus. Jalur tanpa izin. Traffic tertunda atau
komunikasi dirusak dari jaringan diduplikasi.
sehingga tidak diamati
dapat digunakan

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 luas dalam hal requirements keamanan – security
requirements. Requirements ini tentunya bervariasi untuk sistem dan aplikasi
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 : ketidakmampuan sistem atau komponen untuk menjalankan
fungsinya

Dari glossary ini, bug atau security failure termasuk sebagai sinonim dari error
dan fault. Dalam hal ini, flaw memiliki definisi dengan fault, dengan
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, dibandingkan mencoba
untuk memperbaiki sistem ter-install yang berlubang.

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 belum tentu
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:


Keep the design simple

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

You might also like