Berarti secara tradisional diambil untuk mewujudkan tujuan ini
adalah upaya untuk menciptakan sebuah platform komputasi yang aman, dirancang
sehingga agen (pengguna atau program) hanya dapat melakukan tindakan yang telah
diizinkan. Hal ini mencakup penetapan dan pelaksanaan kebijakan keamanan.
Tindakan tersebut dapat dikurangi pada operasi akses, modifikasi dan
penghapusan. Keamanan komputer dapat dilihat sebagai subfield teknik keamanan,
yang tampak pada masalah keamanan yang lebih luas selain keamanan komputer.
Dalam sebuah sistem yang aman pengguna yang sah dari sistem yang
masih mampu melakukan apa yang mereka harus mampu melakukannya. Sementara yang
lain mungkin dapat mengamankan komputer di luar penyalahgunaan menggunakan
langkah-langkah ekstrim (terkunci dalam lemari besi tanpa alat kekuasaan atau
komunikasi misalnya), ini tidak akan dianggap sebagai sistem yang aman berguna
karena kebutuhan di atas.
Adalah penting untuk membedakan teknik yang digunakan untuk
meningkatkan keamanan sistem dari masalah status keamanan yang sistem. Secara
khusus, sistem yang mengandung kelemahan mendasar dalam desain keamanan mereka
tidak dapat dibuat aman tanpa mengorbankan utilitas mereka. Akibatnya, sistem
komputer yang paling tidak dapat dibuat aman bahkan setelah penerapan yang luas
"keamanan komputer" tindakan.
Keamanan Komputer Dengan Desain
Ada dua pendekatan yang berbeda untuk keamanan dalam komputasi.
Satu berfokus terutama pada ancaman eksternal, dan secara umum memperlakukan
sistem komputer itu sendiri sebagai sistem dipercaya. Filosofi ini dibahas
dalam artikel ketidakamanan komputer.
Yang lain, dibahas dalam artikel ini, menganggap sistem komputer
itu sendiri sebagai sebagian besar sistem tidak dapat dipercaya, dan
pendesainan ulang untuk membuatnya lebih aman dalam beberapa cara.
Teknik ini memaksa pemisahan hak istimewa, di mana sebuah entitas
hanya memiliki hak istimewa yang diperlukan untuk fungsinya. Dengan begitu,
bahkan jika penyerang telah ditumbangkan oleh satu bagian dari sistem, keamanan
memastikan bahwa hal itu sama sulit bagi mereka untuk menumbangkan sisanya
Selanjutnya, dengan memecah sistem menjadi komponen yang lebih
kecil, kompleksitas komponen individu berkurang, membuka kemungkinan menggunakan
teknik seperti membuktikan teorema otomatis untuk membuktikan kebenaran
subsistem perangkat lunak penting. Dimana bukti-bukti kebenaran formal tidak
mungkin, penggunaan ketat memeriksa kode dan langkah-langkah pengujian unit
dapat digunakan untuk mencoba untuk membuat modul sebagai aman mungkin.
Desain harus menggunakan "pertahanan mendalam", di mana
lebih dari satu subsistem perlu dikompromikan untuk kompromi keamanan sistem
dan informasi yang dimilikinya. Subsistem harus default untuk mengamankan
pengaturan, dan sedapat mungkin harus dirancang untuk "gagal aman"
daripada "gagal tidak aman. Idealnya, sebuah sistem yang aman harus
memerlukan, disengaja sadar, berpengetahuan dan keputusan bebas dari pihak
otoritas yang sah untuk membuatnya tidak aman. Apa yang merupakan suatu
keputusan dan apa otoritas yang sah jelas kontroversial.
Selain itu, keamanan tidak harus menjadi masalah semua atau tidak
sama sekali. Para desainer dan operator sistem harus mengasumsikan bahwa
pelanggaran keamanan yang tak terelakkan dalam jangka panjang. Jejak audit
lengkap harus disimpan di aktivitas sistem, sehingga ketika terjadi pelanggaran
keamanan, mekanisme dan tingkat pelanggaran dapat ditentukan. Menyimpan jejak
audit jarak jauh, di mana mereka hanya dapat ditambahkan ke, dapat menjaga
penyusup menutupi jejak mereka. Akhirnya, pengungkapan penuh membantu untuk
memastikan bahwa ketika bug ditemukan di "jendela kerentanan"
disimpan sesingkat mungkin.
Teknik Untuk Membuat Sistem Aman
Teknik-teknik berikut dapat digunakan dalam rekayasa sistem aman.
Teknik-teknik ini, sementara berguna, tidak dengan sendirinya menjamin
keamanan. Satu pepatah keamanan adalah "sistem keamanan tidak lebih kuat
dari link security yang lemah("a security system is no stronger than its
weakest link")" :
Teorema pembuktian otomatis dan alat verifikasi lainnya dapat
mengaktifkan algoritma kritis dan kode yang digunakan dalam sistem yang aman
secara matematis terbukti memenuhi spesifikasi mereka.
Oleh karena itu microkernels sederhana dapat ditulis sehingga kita
bisa yakin mereka tidak mengandung bug: misalnya EROS dan Coyotos.
Sebuah OS yang lebih besar, mampu menyediakan API standar seperti
POSIX, dapat dibangun pada mikrokernel menggunakan server API kecil berjalan
sebagai program normal. Jika salah satu dari server API memiliki bug, kernel
dan server lainnya tidak terpengaruh: Hurd misalnya.
Teknik kriptografi dapat digunakan untuk mempertahankan data dalam
transit antara sistem, mengurangi kemungkinan bahwa data yang dipertukarkan
antara sistem dapat dicegat atau dimodifikasi.
Teknik otentikasi yang kuat dapat digunakan untuk memastikan bahwa
komunikasi end-poin yang mereka katakan.
Cryptoprocessors aman dapat digunakan untuk meningkatkan teknik
keamanan fisik ke dalam melindungi keamanan sistem komputer.
Rantai teknik kepercayaan dapat digunakan untuk mencoba untuk
memastikan bahwa semua perangkat lunak dimuat telah disertifikasi sebagai
otentik oleh desainer sistem.
Kendali akses mandatory dapat digunakan untuk memastikan bahwa
akses istimewa ditarik ketika hak yang dicabut. Misalnya, menghapus account
pengguna juga harus menghentikan proses yang sedang berjalan dengan hak akses
pengguna tersebut.
Kemampuan dan teknik kontrol akses daftar dapat digunakan untuk
memastikan pemisahan hak istimewa dan kendali akses mandatory. Bagian
berikutnya membahas penggunaannya.
No comments:
Post a Comment