DATABASE SECURITY Oleh: Ir. M. Ramadhan, MT Sekuritas Basis Data (Database security) • Definisi: proteksi basis data terhadap ancaman / gangguan melalui kendali yang bersifat teknis maupun administrasi. • Sekuritas basis data meliputi hardware, software, orang, data • Sekuritas basis data berkaitan dengan situasi sbb: – pencurian – kehilangan integritas – kehilangan kerahasiaan – kehilangan ketersediaan – kehilangan privacy • Ancaman / gangguan: situasi atau kejadian, baik disengaja atau tidak, yang merusak sistem sehingga merugikan organisasi: (a) tangible: kehilangan/kerusakan hardware, software, data (b) intangible: kehilangan kredibilitas, kehilangan kepercayaan client • Kerusakan sistem dapat menyebabkan aktivitas terhenti • Berapa lama aktivitas terhenti dan sampai sejauh mana basis data dapat dipulihkan bergantung pada: – apakah ada hardware & software alternativ yang dapat digunakan – kapan backup terakhir dilakukan – waktu yang diperlukan untuk me-restore sistem – apakah data yg hilang dapat dipulihkan Contoh ancaman gangguan Pencurian Wire tapping Menggunakan Id & password orang lain Kegagaln sw: akses lebih dari normal Blackmail Penganmbilan data secara tidak sah Pelatihan staf tdk memadai Entri ilegal oleh hacker Kerahasiaan Wire tapping Menggunakan Id & password orang lain Kegagaln sw: akses lebih dari normal Blackmail Membuka & melihat data scr tdk sah Pelatihan staf tdk memadai Entri ilegal oleh hacker Pembuatan program / rutin yg membypass mekanisme keamanan Prosedur yg memungkinkan output rahasia bercampur dg output normal Privacy Wire tapping Menggunakan Id & password orang lain Kegagaln sw: akses lebih dari normal Blackmail Membuka & melihat data scr tdk sah Pelatihan staf tdk memadai Integritas Virus Data rusak karena listrik padam Kerusakan fisik pada peralatan Kebakaran Kabel putus atau tidak terhubung Pelatihan staf tdk memadai Interferensi elektronik Ketersediaan Virus Kegagalan hw seperti disk head crash Kerusakan fisik pada peralatan Kebakaran Kabel putus atau tidak terhubung Banjir Interferensi elektronik Serangan bom Pengendalian Keamanan Berbasis Komputer • otorisasi • backup & recovery • enkripsi • view • integritas • teknologi RAID Otorisasi (authorization) • pemberian hak yg memungkinkan seseorang secara sah mengakses sistem atau objek (tabel, view, aplikasi, prosedur, objek lain dl sistem) • Jenis otorisasi: – – – – read authorization, otorisasi u/ mbaca data saja, tdk u/ memodifikasi data insert authorization, otorisasi u/ me+ data baru, tdk u/ memodifikasi data update authorization, otorisasi u/ memodifikasi dt, ttp tdk u/ mhapus data delete authorization, otorisasi untuk menghapus data (record/tuple, bukan relasi/tabel) • Jenis otorisasi lainnya: – index authorization, otorisasi untuk membentuk dan menghapus pengindekan – resource authorization, otorisasi untuk membuat tabel baru – alteration authorization, otorisasi untuk menambah atau menghapus atribut relasi/tabel – drop authorization, otorisasi untuk menghapus relasi/tabel Enkripsi • Enkripsi: pengkodean data dengan algoritma khusus sehingga data tidak dapat dibaca oleh program tanpa kunci deskripsi • Juga memproteksi data yang ditransmisikan melalui jalur komunikasi • Mentransmisikan data secara aman melalui jaringan menggunakan cryptosystem yang terdiri atas: – Kunci enkripsi untuk mengenkripsi data (plaintext) – Algoritma enkripsi yang, dengan kunci enkripsi, mentransformasikan plaintext menjadi ciphertext. – Kunci dekripsi yang mendekripsi ciphertext. – Algoritma dekripsi yang, dengan kunci dekripsi, mentransformasikan ciphertext menjadi plaintext. • Symmetric encription: kunci enkripsi = kunci dekripsi Contoh: Data Encription Standard (DES) yg dikembangkan oleh IBM • Asymmetric encription: kunci enkripsi ≠ kunci deskripsi. Contoh: RSA RAID (Redundant Array of Independen Disks) • Fault-tolerant: sistem tetap dapat beroperasi walaupun salah satu komponen hardware rusak atau gagal • Disk drive adalah komponen yang paling penting karena paling sering gagal dibandingkan dengan komponen lainnya. Solusi: RAID • RAID terdiri atas array disk, meningkatkan keandalan dan atau kinerja • Kinerja ditingkatkan dengan data striping. Data disegmentasi ke partisi berukuran sama dan didistribusikan ke banyak disk. Kinerja meningkat karena proses I/O dilakukan secara paralel. • Keandalan ditingkatkan dengan penyimpanan informasi redundan ke beberapa disk dengan menggunakan skema paritas dan skema errorcorrecting. • Dalam skema paritas, setiap byte mempunyai bit paritas yang merekam 1 jika jumlah bit dalam byte itu genap, 0 bila ganjil. Jika jumlah bit dalam byte rusak, paritas baru menjadi tidak cocok dengan paritas tersimpan. • Skema error-correcting memiliki dua bit tambahan atau lebih dan dapat merekonstruksi data original jika sebuah bit rusak. Level RAID (Redundant Array of Independen Disks) Ada sejumlah konfigurasi disk yg berbeda (level RAID) yaitu: • • • • RAID 0 Nonredundant RAID 1 Mirrored RAID 0+1 Nonredundant dan Mirrored RAID 2 Memory-style Error Checking Codes • RAID 3 Bit-Interleaved Parity • RAID 4 Block-Interleaved Parity • RAID 5 Block-Interleaved Distributed Parity • RAID 6 P+Q Prosedur • Berbagai mekanisme pengamanan data tidak efektif bila tidak dikendalikan dan digunakan dengan tepat sebagaimana mestinya. • Oki, diperlukan prosedur berkaitan dengan mekanisme keamanan. Otorisasi • Password biasa digunakan untuk memverifikasi pengguna. Password hendaknya: – Terjaga kerahasiaannya (tidak mencatatnya di mana pun, tidak memberitahukannya ke orang lain, dsb). – Tidak ditampilkan selama prosedur login. – Dikelola oleh sistem dalam bentuk yang telah dienkripsi. – Cukup panjang, minimum enam karakter. – Kombinasi dari huruf dan angka, bahkan simbol. – Diubah secara reguler dalam interval waktu tertentu. – Tidak mudah ditebak. Jangan menggunakan nama (isteri, suami, anak, kekasih, tempat), angka (tgl. lahir, no. telepon/hp, dsb.) • Jika pekerjaan seorang user berubah, otorisasinya juga diubah disesuaikan dengan deskripsi pekerjaannya yang baru. • Bila seorang karyawan berhenti bekerja, maka account dan otorisasinya harus dihapus. Backup • Basis data besar dibackup setiap pekan atau setiap bulan, tetapi backup secara inkremental dilakukan lebih sering. • Hari/waktu backup ditentukan bersama dg personel penanggung jawab • Semua bagian sistem harus dibackup: sistem operasi, aplikasi, data. • Dibutuhkan beberapa backup, disimpan dalam wadah tahan api di lokasi yang berbeda. • Semua detil harus dispesifikasikan dengan jelas dalam prosedur yang harus diikuti oleh personel. Recovery • Prosedur recovery bergantung pd tipe crash: kegagalan media, sw, hw • Juga bergantung pada metode recovery yang digunakan oleh DBMS. • Prosedur recovery hendaknya selalu diuji untuk menjamin keberhasilannya, idealnya diuji secara reguler dalam interval waktu tertentu. Pemasangan Perangkat Lunak Aplikasi Baru • Aplikasi telah diuji dan di-run dengan sejumlah data uji. • Sebelum instalasi, backup harus dilakukan. • Setelah instalasi, sistem harus dimonitor untuk jangka waktu tertentu Audit • Auditor mengobservasi prosedur manual, menginvestigasi sistem komputer dan semua dokumentasi sistem • Tujuannya adalah untuk: – Menjamin keakuratan input data. – Menjamin keakuratan pemrosesan data. – Mencegah dan mendeteksi error selama eksekusi program. – Mencegah perubahan program yang tidak sah. – Memonitor akses data. – Menjamin dokumentasi up to date. Instalasi/Upgrade Perangkat Lunak Sistem • DBA secara periodik menerima upgrade DBMS: minor atau revisi penuh • Dokumentasi detail perubahan harus ada. • Perubahan boleh jadi mudah diimplementasikan, misalnya program aplikasi harus dikompilasi ulang. • Lainnya mungkin menghabiskan banyak waktu, misalnya konversi data • Dalam hal sistem harus tersedia selama jam kerja, instalasi/upgrade dilakukan di luar jam kerja, biasanya di akhir pekan. Sebelumnya, sistem yang ada telah di-backup secara penuh. • Setelah di-upgrade, bd & aplikasi diuji sebelum di-run pada data aktual. Daftar Pustaka Connolly, Thomas., et.al., 2002. Database System. Wokingham England, Addison-Wesley Publishing Company. Date, C.J, 2000. An Introduction to Database System. 7th Edition, New York, Addison Wesley Publishing Company. © 2006, M. Ramadhan