Cloud Security
Cloud Security
Layanan berbasis cloud dianggap sebagai solusi pihak ketiga bagi sebuah
perusahaan, dimana keamanan diperlakukan sebagai kekhawatiran yang besar.
Keamanan adalah sebuah tanggung jawab bersama di lingkungan cloud. Bab ini
akan membahas persyaratan dasar keamanan serta beragam ancaman keamanan
dalam infrastruktur TI.
1. Basic Security Requirement
Beberapa persyaratan kemanan dalam memastikan aset TI tetap aman di
antaranya.
a. Authentication
Authentication adalah sebuah proses yang melibatkan kegaiatn
memverifikasi identitas seseorang, kredibilitasnya, dan keasliannya dengan
menggunakan fitur unik yang dimiliki pengguna.
Password Authentication
Untuk jenis otentikasi ini, security administrator merekomendasikan
password yang mengandung 12 karakter atau lebih dengan kombinasi angka,
karakter spesial, dan kombinasi huruf kapital dan huruf lowercase. Terdapat
beberapa isu untuk jenis otentikasi ini seperti: password yang mudah untuk
ditebak dan dicari, pencurian password, pengguna saling berbagai password, dan
password yang terlupa.
Biometric Authentication
Biometrik merujuk pada sebuah teknik yang menggunakan sifat fisik
maupun perilaku unik untuk melakukan otentikasi identitas seseorang. Biometrik
yang sifatnya fisik seperti fingerprint, facial recognition, iris, retina. Sementara
biometrik behavioral seperti pengenalan suara, tanda tangan, keystroke, dan
lainnya. Adapun kelemahan dari otentikasi ini yaitu membutuhkan hardware
spesial untuk otentikasinya.
Token Authentication
Token adalah sebuah perangkat, seperti dongle, kartu, RFID, yang
dibutuhkan untuk mengakses sebuah sistem yang aman. Otentikasi ini sulit untuk
diretas kecuali peretas itu memiliki perangkat tersebut, sehingga menjadi hampir
tidak mungkin diretas.
Multifactor Authentication
Multifactor Authentication adalah teknik otentikasi yang membutuhkan
dua atau lebih cara untuk memverifikasi identitas seseorang. Contohnya di ATM
dimana akses baru didapatkan pengguna setelah memasukkan kartu dan
memasukkan PIN.
c. Confidentiality
Confidentiality adalah sebuah mekanisme keamanan yang mencegah data
atau informasi diakses oleh pengguna tanpa izin. Mekanisme ini memastikan data
dan informasi hanya bisa diakses oleh orang-orang tertentu. Metode umum yang
dipakai yaitu encryption dengan menggunakan algoritma tertentu dengan secret
key yang digunakan penerima untuk mendekripsi pesan dan mendapatkan pesan
aslinya.
d. Data Integrity
Integritas memastikan data dan informasi tidak bisa diubah oleh pengguna
tanpa izin. Data integrity adalah proses pemeliharaan akurasi dan konsistensi data.
Hal ini bisa hilang karena masalah keamanan atau hilang karena kesalahan
hardware ataupun human error. Data Integrity memastikan data tidak berubah
sejak dibuat hingga saat ini. Data integrity dapat diterapkan dengan menggunakan
mekanisme keamanan data. Profesional dalam bidang keamanan database
menciptakan sejumlah hal yang dapat memastikan data integrity seperti enkripsi
data, backup data, akses kontrol, validasi masukan, validasi data, dan database
integrity constraint untuk menegakan sebuah aturan ketika sebuah data memasuki
aplikasi.
Istilah lain yang terkait dengan integritas adalah pesan integritas selama
transit data yang menghasilkan sebuah nilai hash. Nilai hash didapatkan dengan
menggunakan fungsi hash matematika yang satu arah (tidak bisa kembali). Hash
value ini biasa disebut message authentication code (MAC) yang dikirimkan
kepada seorang penerima melalui jaringan. Apabila MAC yang dikirim dan MAC
yang diterima sama, maka message integrity terjaga dan tidak terjadi perubahan
dalam pesan.
e. Availability
Ketersediaan merujuk pada data atau sumber daya yang harus selalu
tersedia dan dapat diakses oleh pengguna dengan izin. Data bisa menjadi tidak
tersedia karena skalabilitas yang rendah (servernya overload), atau kesalahan
hardware (server down), maupun serangan keamanan. Untuk memastikan
ketersediaan sumber daya, ada sejumlah hal yang perlu diperhatikan: perangkat
keras atau infrastruktur harus dijaga dengan kondisi kehandalan yang baik,
sumber daya yang cukup, dan mekanisme yang cukup untuk toleransi kesalahan
dan mekanisme keamanan untuk melindunginya dari serangan keamanan.
f. Accountability
Accountability adalah sebuah proses yang memverifikasi apakah
seseorang dengan izin tertentu telah menjalankan aksi sesuai dengan hak yang
dimilikinya. Hal ini memastikan mekanisme kontrol telah berjalan untuk
menghindari penyalahgunaan sumber daya. Proses dari accountability dapat
dilihat pada gambar di samping, dimana accountability akan melacak semua
kegiatan otentikasi, otorisasi dan kontrol serta memverifikasi apakah sudah
menjalankan tindakannya sesuai dengan satu set izin dan peraturan. COntoh
akuntabilitas yaitu kegiatan audit sebagai mekanisme untuk menginspect dan
mereview sumber daya, password policies, lisensi software, penggunaan internet
sehingga menghasilkan akuntabilitas pada data.
g. Privacy
Privasi merujuk pada hak dari individu untuk menjaga informasinya dari
pihak lain, hal ini meliputi menjaga data individu dari penyebarluasan bebas ke
internet atau dijual ke pihak ketiga. Pada layanan cloud, hal ini diimplementasikan
melalui peraturan kepatuhan. Hal ini sulit diimplementasikan untuk sistem cloud
karena tersebar secara geografis, dimana peraturan untuk privacy ini bervariasi
dari negara satu dengan negara lainnya. Salah satu contoh serangan terhadap
keamanan privacy adalah pencurian rekam medis seorang pasien dari database
sebuah rumah sakit. Hal ini berkaitan dengan keamanan privacy karena rekam
medis sifatnya confidential dan pribadi.
Malware Injection
Mengacu kepada seorang penyerang yang menyuntikan perangkat lunak
berbahaya kedalam sebuah aplikasi dengan mengeksploitasi kerentanan didalam
aplikasi. Penyerang dapat menyuntikan virtual machine berbahaya atau layanan
berbahaya kedalam layanan cloud. Untuk mencegah jenis penyerangan ini adalah
melakukan cek integritas pada VM dan service instances. Cara lainnya adalah
menggunakan perangkat lunak anti-malware untuk mendeteksi perangkat lunak
berbahaya dan mengambil tindakan protektif.
Backdoor and Debug Optios
Adalah sebuah praktek pengembangan yang umum digunakan oleh si
pengeembang. Kode Backdoor sudah dirancang secara spesifik untuk tujuan
debugging. Jika kode tersebu secara tidak sengaja tertinggal didalam aplikasi,
maka tidak hanya aplikasi saja yang di deploy tapi juga kode backdoornya.
Hackers bisa mengeksploitasi kode backdoor sebagai entry poin untuk ancaman
keamanan. Sebuah solusinya adalah untuk menggunakan aplikasi monitoring
jaringan yang kuat dan open source.
Misconfiguratuin of Application
Saat aplikasi dikonfigurasi dengan setting yang kurang aman, ancaman kamanan
menjadi jelas. Sebagai contoh sebuah web server bisa dikonfigurasi kurang aman
secara sengaja untuk mengijinkan pengguna manapun untuk melakukan navigasi
dan mengakses direktori, data dan sumber daya dari sistem
PaaS
Platform as a Service (PaaS) menyediakan tambahan layanan di atas
infrastruktur fisik, seperti virtualisasi sumber daya fisik, virtualisasi infrastruktur,
virtualisasi platform middleware, lingkungan runtime, alat pengembangan, dan
platform layanan. Contoh umum penyedia layanan PaaS yaitu Google Apps dan
Microsoft Windows Azure. Adapun ancaman keamanan umum di PaaS antara
lain.
1) Sumber daya heterogen dan aplikasi dengan kesalahan konfigurasi
PaaS terdiri dari sumber daya perangkat keras dan lunak yang terdistribusi
di berbagai lokasi yang berbeda. Sifatnya yang heterogen ini menyebabkan
permasalahan dalam konfigurasi setelan keamanan. Jika sebuah pengembang
aplikasi salah mengkonfigurasikan aplikasi dengan setelan yang lemah, maka
konfigurasi itu sendiri akan menjadi rawan dalam hal keamanannya.
SaaS
Aplikasi akan dihost oleh penyedia layanan dan tersedia untuk end-user
melalui internet. Penyedia layanan cloud secara implisit menggunakan virtualisasi
pada level yang berbeda diantaranya.
1) Penyedia layanan SaaS bisa menggunakan hypervisor-level isolation
sehingga infrastruktur fisik yang sama dapat dibagikan ke beberapa tenant.
2) Penyedia layanan bisa menggunakan application-level isolation sehingga
tamu dalam satu OS yang sama dapat dibagikan dengan lebih dari satu
dataset.
3) Penyedia layanan dapat menggunakan data-level isolation sehingga
dataset yang sama dapat dibagikan.
4) Sangat sering, penyedia layanan menerapkan aplikasi yang sama di
beberapa virtual machine sesuai dengan ketersediaan, skalabilitas, dan
kebutuhan performancenya.