Postingan

Menampilkan postingan dengan label Basis Data

Arsitektur Audit Basis Data

Gambar
Menurut Matt Bishop (2003), arsitektur audit basis data terdiri dari tiga bagian yaitu Logger , Analyzer , dan Notifier .  1. Logger Bertujuan untuk mencatat seluruh informasi yang diperlukan dalam audit. Proses dapat dilakukan secara aktif, pasif, maupun dengan mengekstrak log. Secara aktif yaitu dengan menggunakan sebuah perangkat yang terhubung secara langsung ke dalam jaringan yang terdapat diantara server basis data dan client. Dengan begitu, setiap aktivitas yang akan dilakukan dalam basis data harus melalui server tersebut. Dengan demikian server dapat mengetahui setiap aktivitas yang terjadi dan mencatatnya ke dalam log dan juga dapat membatalkan transaksi ke basis data jika dibutuhkan. Namun, cara ini dapat memberikan dampak pada kecepatan dan performa basis data itu sendiri. Secara pasif adalah juga menggunakan sebuah perangkat namun tidak terhubung secara langsung dengan server basis data. Perangkat akan menerima salinan dari setiap paket yang dikirimkan ke ...

Membaca SQL Server Transaction Log

SQL Server memiliki dua jenis log, yaitu error log dan transaction log. Error log berisi infromasi error yang tejadi dalam basis data. Biasanya error log pada SQL Server dapat diakses melalui Object Explorer > Instance > Management > SQL Server Logs. Log tersebut terdiri dari beberapa archive dengan jumlah yang dapat ditentukan. Sedangkan transaction log adalah log yang mencatat transaksi yang berlangsung dalam sebuat basis data. Transaction log biasanya disimpan dalam format ldf. Setiap basis data akan memiliki file ldf masing-masing. Transaction log tersebut biasanya digunakan untuk melakukan recovery atau sebagai backup dari basis data. Namun tidak menutup kemungkinan untuk dapat membaca transaction log tersebut dengan menggunakan sql statement, yakni dengan menggunakan sys.fn_dblog. Berikut ini contoh penggunaannya. Select b.Description, d.AllocUnitName, b.[Transaction ID], d.name, d.Operation, b.[Transaction Name], b.[Begin Time], c.[End Time] from ( Sel...

Penerapan Trigger untuk Logging Akses Basis Data pada Microsoft SQL Server

Gambar
Dalam beberapa kasus, akses ke dalam basis data perlu dicatat untuk memantau siapa saja yang mengakses basis data, jumlah akses yang dilakukan, dan kapan akses dilakukan. Informasi tersebut dapat diperoleh dengan melakukan pencatatan saat akses ke basis data dilakukan. Proses pencatatan tersebut sering disebut dengan istilah logging . Trigger merupakan salah satu objek basis data yang dimiliki oleh Microsoft SQL Server. Trigger dapat digunakan untuk mencatat akses yang terjadi ke basis data. Pada SQL Server, selain menggunakan trigger, logging juga dapat dilakukan dengan menggunakan SQL Server Error Log, yaitu log yang mencatat setiap error yang terjadi dalam basis data. Dengan melakukan sedikit pengaturan, maka log tersebut dapat digunakan untuk mencatat informasi akses basis data. Jadi, mengapa logging dengan trigger diperlukan jika logging bisa dilakukan dengan SQL Server Error Log?

Ciri Penyerangan Terhadap Basis Data Berdasarkan Error Log pada Microsoft SQL Server

Walaupun basis data biasanya berada pada layer terdalam pada suatu arsitektur aplikasi, tetap saja basis data tidak luput dari serangan. Salah satunya adalah SQL Injection. SQL Injection adalah jenis penyerangan yang memanfaatkan celah dari suatu aplikasi. Celah tersebut muncul karena aplikasi tidak menyaring masukan dari pengguna sehingga pengguna dapat memasukkan kode, yaitu perintah SQL, melalui aplikasi Namun, penyerangan tersebut dapat dideteksi melalui error yang terjadi saat penyerangan dilakukan. Jenis error yang dapat merepresentasikan serangan tersebut adalah sebagai berikut. 1. Error 18456 Error ini adalah error yang muncul saat login gagal dilakukan. Login gagal dapat dikategorikan sebagai percobaan penyerangan, yaitu saat penyerang mencoba melakukan 'brute-force' untuk memperoleh akses ke basis data.

Objek Basis Data

Secara umum, basis data merupakan sekumpulan data yang saling berhubungan yang bersifat terorganisasi dan terstruktur. Basis data dapat berupa penyimpanan berukuran besar yang dapat digunakan secara bersamaan oleh banyak pengguna untuk menyimpan, mengakses, memanipulasi dan memperbaharui data.Basis data terdiri dari berbagai objek yang memiliki tugas dan tujuan yang berbeda-beda. Pada umumnya, jenis objek basis data terbagi menjadi sebagai berikut.