Pertemuan 3 Operationg System Security

 Pertemuan 3 Operationg System Security

   Sistem operasi adalah sekumpulan rutinitas yang memberikan layanan kepada pengguna dan memudahkan mereka untuk menggunakan komputer. Dalam komputer multiuser, sistem operasi juga mengawasi pengguna, melindungi setiap pengguna dari pengguna lain, juga melindungi dirinya dari kerusakan yang tidak disengaja dan disengaja oleh pengguna. Sistem operasi merupakan garis pertahanan pertama terhadap segala macam perilaku yang tidak di. 

1. Memahami Konsep Sistem Operasi

    Sistem operasi adalah sekumpulan rutinitas yang memberikan layanan kepada pengguna dan memudahkan mereka untuk menggunakan komputer. Dalam komputer multiuser, sistem operasi juga mengawasi pengguna, melindungi setiap pengguna dari pengguna lain, juga melindungi dirinya dari kerusakan yang tidak disengaja dan disengaja oleh pengguna.

   Sistem operasi merupakan garis pertahanan pertama terhadap segala macam perilaku yang tidak di inginkan. Sistem operasi adalah penggendali fundamental dari semua system sumber daya, juga menjadikannya traget utama serangan.

2. Meningkatkan Keamanan Sistem Operasi

   Sebagian besar pekerjaan dalam keamanan dan perlindungan yang berkaitan dengan OS secara kasar dapat dikelompokan menjadi 3 kategori:

a. Access Control : Berkaitan dengan pengaturan akses pengguna ke sistem total, sub-sistem, dan data, dan pengaturan akses proses ke berbagai sumber daya dan objek didalam sistem.

b. Kontrol arus informasi : Mengatur aliran data dalam sistem dan pengirimannya ke pengguna.

c. Sertifikat : berkaitan dengan pembuktian bahwa mekanisme kontrol akses dan aliran bekerja sesuai dengan speksifikasinya.

A. Aset-aset Sistem Komputer

    Aset sistem komputer dapat dikategorikan sebagai perangkat keras, perangkat lunak, data.

a. Hardware . Ancaman perangkat keras sistem komputer ada di area ketersediaan (availability). Perangkat keras paling rentan terhadap serangan, juga tidak dapat menerima kontrol otomatis.

b. Software . OS, utilitas, dan program aplikasi adalah yang membuat perangkat keras sistem komputer berguna bagi bisnis dan individu.Manajemen konfigurasi software yang cermat, termasuk membuat backup versi terbaru, dan dapat menjaga ketersediaanyinggi.

c. Data . Keamanan perangkat keras dan perangkat lunak biasanya menjadi perhatian profesional pusat komputasi atau masalah individu pengguna komputer pribadi. Masalah yang jauh lebih luas adalah keamanan data,yang melibatkan file dan bentuk data lain yang dikendalikan oleh individu,kelompok, dan organisasi bisnis.

B. Prinsip Desain Keamanan

    Saltzer dan Schroeder mengindentifikasi sejumlah prinsip untuk desain langkah-langkah keamanan untuk berbagai ancaman terhadap sistem komputer.

a. Hak istimewa terkecil(Least Privilege). Setiap program dan setiap pengguna sistem harus beroperasi menggunakan hak istimewa paling sedikit yang diperlukan untuk menyelesaikan pekerjaan .

b. Mekanisme ekonomis. Mekanisme keamanan harus sekecil dan sesederahan mungki, membantu verifikasi mereka.

c. Dapat diterima. Mekanisme keamanan tidak boleh terlalu mengganggu pekerjaan pengguna. Mekanisme tersebut harus memenuhi kebutuhan mereka yang memberi otorisasi akses.

d. Mediasi lengkap. Setiap akses harus diperiksa terhadap informasi kontrol akses, termasuk akses yang terjadi diluar operasi normal,seperti dalam pemulihan atau pemeliharaan.

e. Desain terbuka (Open design). Keamanan sistem tidak boleh bergantung pada kerahasiaan desain mekanismenya. Mekanismenya dapat ditinjau oleh banyak ahli, dan pengguna dapat memeiliki kepercayaan yang tinggi terhadapnya.

c. Memperkuat Ketahanan Sistem Operasi

    Langkah penting pertama dalam mengamankan sistem adalah mengamankan sistem operasi dasar yang menjadi sandaran semua aplikasi dan layanan lain. Landasan kemanan yang baik membutuhkan sistem operasi yang dipasang,ditambal (patched), dan dikonfigurasi dengan benar. memasimalkan kemudahan penggunaan dan fungsionalitas, daripada keamanan. setiap organisasi memiliki kebutuhan keamanan sendiri,profil keamanan yang sesuai, dan karenanya konfigurasi juga akan berbeda.

NIST SP 800-123 menyarankan langkah-langkah dasar berikut yang harus digunakan untuk mengamankan sistem operasi:

1). Instal dan patch sistem operasi

2). Perkuat dan konfigurasikan sistem operasi untuk memenuhi kebutuhan keamanan sistem yang teridentifikasi secara memadai dengan:

a. Mengahpus layanan, apilkasi, dan protokol yang tidak perlu.

b. Konfigurasi pengguna,grup, dan izin.

c. Konfigurasi kontrol sumber daya.

3). Instal dan konfigurasi kontrol keamanan tambahan, seperti anti-virus, firewall berbasis host, dan intrusion detection system (IDS), jika diperlukan.

4). Uji keamanan sistem operasi dasar untuk memastikan bahwa langkah-langkah yang diambil telah memenuhi kebutuhan keamanannya secara memadai.

3. Membuat Mekanisme Perlindungan Tambahan Pada Sistem Operasi

    Pengenalan multiprogram menghasilkan kemampuan untuk berbagai (Sharing) sumber daya diantara pengguna. Sharing disini tidak hanya melibatkan prosesor tetapi juga:

a. Memory

b. I/O devices, seperti disk dan printer

c. Program

d. Data

Kemampuan untuk berbagai sumber daya ini memperkenalkan kebutuhan akan perlindungan. Pfleeger dan pfleeger menujukan bahwa OS mungkin menawarkan perlindungan sepanjang spektrum ini :

a. Tidak ada poteksi. ini sesuai jika prosedur sensitif dijalankan pada waktu yang berbeda.

b. Isolasi. Pendekatan ini menyiratkan bahwa setiap proses beroperasi secara terpisah dari proses lain, tanpa berbagi atau komunikasi.

c. Bagikan semua atau jangan bagikan apa pun. Pemilik suatu objek (misalnya, file atau segmen memori) mendeklarasikannya sebagai publik atau privat.

d. Bagikan melalui batasan akses. OS memeriksa izin setiap akses oleh pengguna tertentu ke objek tertentu.

e. Berbagi melalui kemampuan dinamis. Ini memperluas konsep kontrol akses untuk memungkinkan kreasi dinamis dari hak berbagi untuk objek.

f. Batasi penggunaan suatu objek. Bentuk perlindungan ini tidak hanya membatasi akses ke suatu objek tetapi penggunaan tempat objek tersebut dapat diletakkan.

OS perlu menyeimbangkan kebutuhan untuk memungkinkan berbagi, yang meningkatkan utilitas sistem komputer, dengan kebutuhan untuk melindungi sumber daya pengguna individu. Bagian ini membahas beberapa mekanisme yang digunakan OS untuk menerapkan perlindungan untuk objek ini.

a. Perlindungan Memori

    Perlindungan memori utama (random access memory, atau RAM) sangat penting. Perhatian di sini bukan hanya keamanan tetapi fungsi yang benar dari berbagai proses yang aktif.

    Pemisahan ruang memori dari berbagai proses diselesaikan dengan mudah dengan skema memori virtual. Baik segmentasi atau paging, atau keduanya dalam kombinasi, memberikan cara yang efektif untuk mengelola memori utama.

    Jika sharing diizinkan, segmen atau halaman yang sama dapat muncul di lebih dari satu tabel. Jenis berbagi ini dilakukan paling mudah dalam sistem yang mendukung segmentasi atau kombinasi segmentasi dan paging. Dalam kasus ini, struktur segmen dapat dilihat oleh aplikasi, dan aplikasi dapat mendeklarasikan segmen individu sebagai yang dapat dibagikan atau tidak dapat dibagikan.

     Segmentasi, khususnya, cocok untuk implementasi kebijakan perlindungan dan pembagian. Karena setiap entri tabel segmen menyertakan panjang dan juga alamat dasar, program tidak dapat secara tidak sengaja mengakses lokasi memori utama di luar batas segmen.

b. Kontrol Akses Berorentasi Pengguna

   Teknik yang paling umum untuk kontrol akses pengguna pada sistem atau server bersama adalah logon pengguna, yang memerlukan pengenal pengguna (ID) dan beberapa bentuk otentikasi, seperti memberikan sandi, token, atau atribut biometrik.

   Setelah pengguna membuat sesi, sistem operasi kemudian dapat mengotorisasi berbagai bentuk akses (misalnya: membaca, menulis, menambahkan, mengunci, atau mengeksekusi) ke berbagai jenis data (misalnya: file, database, perangkat, atau komunikasi tertentu).

   Kontrol akses pengguna dalam lingkup terdistribusi dapat terpusat atau terdesentralisasi. Dalam pendekatan terpusat, jaringan menyediakan layanan logon, menentukan siapa yang diizinkan untuk menggunakan jaringan dan kepada siapa pengguna diizinkan untuk terhubung.

   Kontrol akses pengguna yang terdesentralisasi memperlakukan jaringan sebagai tautan komunikasi transparan, dan host tujuan melakukan prosedur logon biasa. Masalah keamanan untuk mengirimkan kata sandi melalui jaringan harus tetap diatasi.

   Fasilitas dua tingkat ini diinginkan untuk kasus umum, saat ini, di mana jaringan menghubungkan host yang berbeda dan hanya menyediakan cara yang nyaman untuk akses terminal-host. Dalam jaringan host yang lebih seragam, beberapa kebijakan akses terpusat dapat diterapkan di pusat kendali jaringan.

c. Kontrol Akses Berorientasi Data

    Melalui prosedur kontrol akses pengguna, pengguna dapat diidentifikasi ke sistem. Terkait dengan setiap pengguna, mungkin ada profil yang menentukan operasi yang diizinkan dan akses file. OS kemudian dapat memberlakukan aturan berdasarkan profil pengguna. Sistem manajemen database, bagaimanapun, harus mengontrol akses ke catatan tertentu atau bahkan bagian dari catatan.

   Sementara OS dapat memberikan izin kepada pengguna untuk mengakses file atau menggunakan aplikasi, setelah itu tidak ada pemeriksaan keamanan lebih lanjut, sistem manajemen database harus membuat keputusan pada setiap upaya akses individu. seseorang dalam administrasi mungkin diizinkan untuk mendapatkan daftar personel perusahaan, tetapi hanya individu terpilih yang dapat memiliki akses ke informasi gaji. Masalahnya lebih dari satu tingkat detail.

d. Perlindungan Berdasarkan Mode Sistem Operasi

    Salah satu teknik yang digunakan di semua OS untuk memberikan perlindungan didasarkan pada mode eksekusi prosesor. Kebanyakan prosesor mendukung setidaknya dua mode eksekusi: mode yang biasanya terkait dengan OS dan yang biasanya terkait dengan program pengguna. Instruksi tertentu hanya dapat dijalankan dalam mode yang lebih diistimewakan. Ini termasuk membaca atau mengubah register kontrol, seperti kata status program; instruksi I / O primitif; dan instruksi yang berhubungan dengan manajemen memori.

    Mode yang kurang memiliki hak istimewa sering disebut sebagai mode pengguna, karena program pengguna biasanya akan dijalankan dalam mode ini. Mode yang lebih diistimewakan disebut sebagai mode sistem, mode kontrol, atau mode kernel.

1). Manajemen proses

a. Proses creation dan temination

b. Proses scheduling dan dispatching

c. Proses switching

d. Proses sinkornisasi dan dukungan untuk komunikasi antar proses

e. Manajemen proses blok control

2). Manajemen memori

a. Alokasi ruang alamat ke proses

b. Swapping

c. Manajemen halaman dan segmen

3). Manajemen I/O

a. Manajemen penyangga (buffer)

b. Alokasi saluran dan perangkat I/O ke proses

4). Fungsi pendukung

a. Penanganan interupsi

b. Accounting

c. Monitoring

    Alasan menggunakan dua mode harus jelas. Hal ini diperlukan untuk

melindungi OS dan tabel OS utama, seperti blok kontrol proses, dari
gangguan oleh program pengguna. Dalam mode kernel, perangkat lunak
memiliki kendali penuh atas prosesor dan semua instruksi, register, dan
memori.

e. Perlindungan Berdasarkan Virtualisasi 
 
  Dengan ketersediaan memori yang terus meningkat (misalnya, puluhan
hingga ratusan gigabyte RAM), ruang disk (penyimpanan terabyte hingga
petabyte), prosesor yang lebih cepat (puluhan gigahertz), dan sistem
multicore (berpotensi ribuan prosesor bekerja secara paralel), virtualisasi
komputer telah berkembang menjadi kegunaan praktis dan luas.

f. File Sharing 

Sistem multi pengguna hampir selalu mengharuskan file dapat dibagikan
di antara sejumlah pengguna.  

1). Hak Akses 

   Sistem file harus menyediakan alat yang fleksibel untuk memungkinkan berbagai file cecara ekstensif diantara pengguna. Sistem file harus menyediakan sejumlah opsi sehingga cara mengakses file tertentu dapat dikontrol. Biasanya, pengguna atau kelompok pengguna diberikan hak akses tertentu ke file.

a). None. Pengguna bahkan mungkin tidak mengetahui keberadaan file tersebut.
b). Knowledge. Pengguna dapat menentukkan bahwa file tersebut ada dan siapa pemiliknya.
c). Execution. Pengguna dapat memuat dan menjalankan program tetapi tidak dapat menyalinnya.
d). Locking. Pengguna dapat mengubah status dari tanda logical yang menunjukkan pembatasan sementara pada akses ke akses data.
e). Reading. Pengguna dapat membaca file untuk tujuan apa pun, termasuk menyalin dan mengeksekusi.
f). Appending. Pengguna dapat menambahkan data ke file, seringkali hanya dibagian akhir.
g). Updating. Pengguna dapat mengubah, menghapus, dan menambahkan ke data file.
h). Changing protection. Pengguna dapat mengubah hak akses yang diberikan kepada pengguna lain.
i). Deletion. Pengguna dapat menghapus file dari sistem file.

   Hak-hak ini dapat dianggap sebagai suatu hierarki, dengan masing-
masing hak mengartikan hak yang mendahuluinya. Jadi, jika pengguna
tertentu diberikan hak memperbarui untuk file tertentu, maka pengguna
tersebut juga diberikan hak-hak ini pengetahuan, eksekusi, membaca,
dan menambahkan. Satu pengguna ditetapkan sebagai pemilik file tertentu, biasanya ini adalah orang yang pertama kali membuat file tersebut. Pemilik memiliki semua hak akses yang terdaftar sebelumnya dan dapat memberikan hak kepada orang lain.

a). Specific user. Pengguna individu yang ditentukan oleh ID pengguna.
b). User groups. Sekumpulan pengguna yang tidak ditentukan satu per
satu. Sistem harus memiliki beberapa cara untuk melacak
keanggotaan grup pengguna.
c).  All. Semua pengguna yang memiliki akses ke sistem ini. Ini adalah
file publik.

2). Akses Simultan 

    Ketika akses diberikan untuk menambahkan atau memperbarui file
ke lebih dari satu pengguna, OS atau sistem manajemen file harus
menegakkan disiplin. Pendekatan brute force adalah mengizinkan
pengguna mengunci seluruh file saat akan diperbarui. Butir kontrol yang
lebih baik adalah mengunci catatan individu selama pembaruan.

g File Descriptor

Agar proses dapat bekerja dengan file, mereka memerlukan cara
singkat untuk merujuk ke file tersebut, selain selalu menuju sistem file dan
menentukan jalur ke file tersebut. Untuk membaca dan menulis file yang disimpan di disk secara efisien, sistem operasi modern mengandalkan mekanisme yang dikenal sebagai deskriptor file. Deskriptor file pada dasarnya adalah nilai indeks yang disimpan dalam tabel, yang dikenal sebagai tabel deskriptor file. Saat program perlu mengakses file, panggilan dilakukan ke panggilan sistem terbuka, yang mengakibatkan kernel membuat entri baru dalam tabel deskriptor file yang memetakan ke lokasi file di disk. 

4. Memahami Keamanan Program Aplikasi

   Setelah sistem operasi dasar diinstal dan diamankan dengan benar,
layanan dan aplikasi yang diperlukan selanjutnya harus diinstal dan dikonfigurasi. Persoalannya, seperti dengan sistem operasi dasar, adalah hanya menginstal perangkat lunak pada sistem yang diperlukan untuk memenuhi fungsionalitas yang diinginkan, untuk mengurangi jumlah tempat kerentanan dapat ditemukan. Pada sistem klien, perangkat lunak seperti Java, PDF viewer, Flash, browser Web, dan Microsoft Office merupakan target yang diketahui dan perlu diamankan. Pada sistem server, perangkat lunak yang menyediakan akses atau layanan jarak jauh, termasuk Web, basis data, dan server akses file, menjadi perhatian khusus, karena penyerang mungkin dapat memanfaatkan ini untuk
mendapatkan akses jarak jauh ke sistem.

a. Konfigurasi Program Aplikasi 

   Konfigurasi khusus aplikasi apa pun kemudian dilakukan. Ini mungkin
termasuk membuat dan menentukan area penyimpanan data yang sesuai untuk aplikasi, dan membuat perubahan yang sesuai pada detail konfigurasi default aplikasi atau layanan. 

  Beberapa aplikasi atau layanan mungkin menyertakan data default,
skrip, atau akun pengguna. Ini harus ditinjau, dan hanya disimpan jika
diperlukan, dan diamankan dengan sesuai.

   Konsekuensinya adalah bahwa setiap penyerang yang dapat mengeksploitasi beberapa kerentanan baik di perangkat lunak server atau skrip yang dijalankan oleh server mungkin dapat memodifikasi file-file ini. Sejumlah besar serangan "perusakan web" adalah bukti nyata dari jenis konfigurasi yang tidak aman ini. Sebagian besar risiko dari bentuk serangan ini dikurangi dengan memastikan bahwa sebagian
besar file hanya dapat dibaca, tetapi tidak ditulis, oleh server. 

b. Teknologi Enkripsi

   Jika layanan jaringan aman disediakan, kemungkinan besar
menggunakan TLS atau IPsec, maka kunci publik dan pribadi yang sesuai
harus dibuat untuk masing-masing. Kemudian sertifikat X.509 dibuat dan
ditandatangani oleh otoritas sertifikat yang sesuai, yang menghubungkan
setiap identitas layanan dengan kunci publik yang digunakan. Jika akses jarak
jauh yang aman disediakan menggunakan Secure Shell (SSH), maka server  yang sesuai, dan mungkin kunci klien, harus dibuat. Sistem file kriptografi
adalah penggunaan enkripsi lainnya. 

Komentar

Postingan populer dari blog ini

Pertemuan 14 Pengenalan Dan Penanggulangan Virus,Trojan, Dan Worm

Pertemuan 13 Ekploitasi Keamanan