Ancaman Ransomware terhadap Basis Data pada Infrastruktur Komputasi Awan

sumber

 


Komputasi awan (cloud computing) merupakan paradigma dalam dunia teknologi informasi yang menyediakan akses terhadap sumber daya komputer dengan performa tinggi untuk digunakan secara bersama-sama dengan membuat mesin-mesin virtual yang dapat dikonfigurasi dengan mudah untuk menjalankan aplikasi atau layanan. Penggunaan bersama sumber daya komputer akan meningkatkan efisiensi karena alokasi sumber daya komputasi dapat diatur dengan mudah untuk setiap mesin virtual yang berjalan.

Salah satu aplikasi atau layanan yang dewasa ini mulai mencari tempat hidup baru pada komputasi awan adalah basis data (database). Sebelumnya, perusahaan atau organisasi menggunakan komputer fisik yang disimpan pada fasilitas fisik milik mereka untuk menjalankan aplikasi atau layanan basis data bagi perusahaan atau organisasi tersebut. Hal tersebut sudah bergeser semenjak adanya komputasi awan yang memiliki banyak kelebihan dibandingkan infrastruktur on-site. Di sisi lain, banyaknya perusahaan dan organisasi yang melakukan migrasi basis data ke infrastruktur komputasi awan menimbulkan masalah tersendiri salah satunya adalah keamanan data yang disimpan. Dengan letaknya yang off-site dari fasilitas fisik perusahaan atau organisasi, potensi masalah keamanan data akan lebih kompleks.

Pada artikel ini akan dibahas latar belakang popularitas implementasi basis data dalam infrastruktur komputasi awan terutama dari segi keunggulan-keunggulan yang ditawarkan bagi perusahaan atau organisasi yang membuat mereka tertarik melakukan migrasi. Selanjutnya, akan dibahas perkembangan ransomware sebagai salah satu ancaman keamanan yang menghantui dunia IT yang kembali popular beberapa tahun belakangan ini. Di samping itu, akan dibahas serangan ransomware pada basis data yang disimpan di infrastruktur komputasi awan khususnya untuk MongoDB yang terjadi tahun ini dan mengakibatkan kerugian yang cukup besar. Di akhir artikel, diberikan beberapa langkah pencegahan terhadap serangan malware dan sebuah pertanyaan yang disisakan bagi pembaca apakah migrasi basis data ke infrastruktur komputasi awan merupakan kebutuhan saat ini bagi perusahaan atau organisasi yang bersangkutan.


Popularitas Basis Data pada Infrastruktur Komputasi Awan

sumber

Penggunaan infrastruktur komputasi awan (cloud computing) untuk menyimpan, mengelola, dan mejalankan basis data (database) merupakan sebuah tren beberapa tahun belakangan ini terutama ketika perusahaan ternama merilis layanan komputasi awan seperti Microsoft dengan Azure dan Amazon dengan AWS. Beberapa keuntungan melakukan migrasi basis data ke infrastruktur komputasi awan menurut [1] adalah sebagai berikut.

  • Penghematan biaya

Dengan menggunakan infrastruktur komputasi awan, perusahaan dapat mengurangi biaya operasional dan biaya kepemilikan seperti penghematan biaya dari pengurangan jumlah pekerja dan penghematan penggunaan lahan dan fasilitas fisik untuk infrastruktur IT. Selain itu, kebutuhan akan peralatan dan sumber daya lain untuk mengelola dan mengoperasikan peralatan IT yang kompleks dapat dikurangi.

  • Skalabilitas dan elastisitas

Umumnya, penyedia layanan komputasi awan mengizinkan pemakai layanan untuk melakukan peningkatan (upscale) atau pengurangan (downscale) kapasitas dari infrastruktur IT yang digunakan apabila diperlukan. Dengan demikian, baik perangkat keras maupun perangkat lunak dapat disesuaikan kapasitasnya sesuai dengan kebutuhan pengguna. Sementara itu, istilah elastisitas adalah kemampuan sebuah aplikasi untuk melakukan penambahan mesin virtual (virtual machine) untuk memenuhi kapasitas dalam melayani permintaan pengguna.

  • Pemulihan dari bencana

Penggunaan infrastruktur komputasi awan untuk membantu pemulihan dari bencana (disaster recovery) sudah umum dilakukan oleh perusahaan-perusahaan yang operasionalnya mengandalkan IT. Dengan menggunakan infrastruktur komputasi awan, masing-masing komputer server umumnya diimplementasikan sebagai sebuah mesin virtual yang dapat dicadangkan atau disalin dengan mudah untuk membuat mesin virtual baru. Hal ini dapat mengurangi biaya dan mempercepat pemulihan dari bencana karena tidak perlu melakukan konfigurasi masing-masing komponen pada komputer server.

  • Aksesibilitas

Penggunaan infrastruktur komputasi awan memudahkan pihak-pihak berwenang dalam perusahaan, contohnya karyawan, untuk mengakses data dan aplikasi dari mana saja sehingga meningkatkan produktivitas.

  • Kelincahan

Kelincahan (agility) adalah kemampuan sebuah perusahaan untuk beradaptasi dengan cepat dan efisien dari sisi biaya. Dengan keunggulan komputasi awan yang dijelaskan sebelumnya yaitu skalabilitas dan elastisitas, sebuah perusahaan akan lebih lincah untuk beradaptasi terhadap kebutuhan bisnis yang cenderung tidak konstan.

Dengan sederet keunggulan yang ditawarkan oleh infrastruktur komputasi awan, perusahaan berbondong-bondong memindahkan basis datanya ke infrastruktur komputasi awan. Sebuah situs DB-Engines mencatat adanya peningkatan yang signifikan terhadap basis data menggunakan komputasi awan sebesar sepuluh kali lipat pada Februari 2017 dibandingkan dengan empat tahun yang lalu [2].

sumber

Pemain besar basis data pada komputasi awan seperti Amazon, Microsoft, Google, dan IBM juga mencatatkan peningkatan pada peringkat popularitas seperti yang tercatat pada DB-Engines. Hampir semua pemain besar basis data pada komputasi awan memiliki peringkat popularitas yang lebih baik dibandingkan tahun lalu dengan Amazon DynamoDB memiliki peringkat ke-22 (dari ke-26 pada 2016), Microsoft Azure SQL Database memiliki peringkat ke-27 (dari ke-30 pada 2016), dan Google BigQuery memiliki peringkat ke-37 (dari ke-43 pada 2016) [2].

sumber

Selain itu, DB-Engines juga meyakini bahwa tren peningkatan popularitas penggunaan basis data pada komputasi awan baru memasuki tahap awal. Dengan kata lain, di masa mendatang, semakin banyak perusahaan yang akan melakukan migrasi basis data yang dimilikinya dari infrastruktur IT lokal ke infrastruktur komputasi awan. Hal ini menciptakan masalah tersendiri yang berkaitan dengan keamanan data yang disimpan pada komputasi awan.


Ancaman ransomware yang menghantui dunia IT

sumber

Ransomware adalah sebuah tipe malware yang mencegah atau membatasi pengguna untuk melakukan akses terhadap sistem mereka, baik dengan mengunci layar (screen lock) maupun mengunci data milik pengguna (data lock) [3]. Beberapa ransomware modern yang disebut crypto-ransomware menggunakan kriptografi dalam mengunci sistem atau data dengan suatu kunci tertentu yang dijanjikan untuk diberikan kepada pengguna apabila pengguna telah membayar sejumlah tebusan yang juga menggunakan mata uang kriptografi (cryptocurrency). Anonimitas yang ditawarkan oleh mata uang kriptografi membuat para pembuat ransomware menyenangi metode pembayaran tebusan menggunakan mata uang kriptografi walaupun ada beberapa ransomware yang menerima pembayaran menggunakan kartu hadiah (gift card) dari Amazon atau iTunes.

Secara umum, ransomware dapat masuk ke dalam sistem milik korban akibat ketidaktelitian korban dalam mengunduh data. Ransomware dapat dengan tidak sengaja terunduh ketika korban mengakses sebuah website ilegal atau website yang telah dibobol. Selain itu, ransomware juga dapat diperoleh dari malware lain, misalnya program-program untuk melakukan aktivasi perangkat lunak bajakan (crack, keygen, patcher) dan program-program yang dibagikan secara gratis melalui iklan di internet.

Menurut [4], pada tahun 2017, setiap 10 detik terdapat satu komputer rumahan yang terinfeksi oleh ransomware dan setiap 40 detik terdapat satu perusahaan yang infrastruktur IT-nya terinfeksi ransomware. Hal ini merupakan peningkatan yang signifikan dibanding tahun 2016 dengan angka satu infeksi komputer rumahan setiap 20 detik dan satu infeksi komputer perusahaan setiap dua menit.

Serangan ransomware terhadap perusahaan akan meningkat lebih jauh dibanding terhadap individual karena keuntungan dari pembayaran uang tebusan dengan korban sebuah perusahaan sangat besar. Pembuat ransomware juga perlu mengetahui statistik perusahaan yang ia serang dan besar uang tebusan yang diminta sehingga memberikan tawaran menarik bagi perusahaan tersebut untuk membayar uang tebusan agar dapat memperoleh datanya kembali.

Pada Februari 2016, sebuah rumah sakit bernama Hollywood Presbyterian Medical Center (HPMC) menjadi korban ransomware yang menyebabkan jaringan, e-mail, dan data pasien menjadi lumpuh total dengan tebusan yang diminta oleh ransomware adalah sebesar USD17000 [5]. Selain itu, pada Desember 2016, sebuah universitas bernama Los Angeles Valley College diharuskan membayar USD28000 untuk memulihkan kembali data dan infrastruktur IT yang terkena serangan ransomware [6].

Menurut [4], terdapat beberapa tren ransomware yang akan terus meningkat di masa mendatang. Ransomware akan lebih agresif menginfeksi perusahaan dan sektor bisnis lainnya karena keuntungan yang diperoleh lebih besar. Selain itu, lampiran e-mail akan menjadi metode terfavorit penyebaran ransomware yang diprediksi akan memiliki lebih banyak jenis pada tahun 2017. Dengan banyaknya jenis ransomware yang akan muncul, efektivitas ransomware dalam hal infeksi dan distribusi akan semakin meningkat. Beberapa perusahaan dengan perlindungan keamanan berlapis dilaporkan tetap dapat ditembus oleh ransomware model terbaru.

Beberapa ransomware tidak hanya melakukan enkripsi terhadap data milik korban, namun juga mencuri data-data penting yang memungkinkan untuk mengambil keuntungan dari data tersebut. Sebagai contoh, ransomware bernama Cerber juga dilaporkan melakukan pencurian data dompet beberapa mata uang kriptografi (cryptocurrency wallet) seperti Bitcoin dan Ethereum [7]. Selain itu, menurut [7] ransomware juga mampu mencuri password yang disimpan pada penjelajah web (web browser) seperti Google Chrome dan Mozilla Firefox.

Dengan maraknya infeksi ransomware pada perangkat IT baik milik individu maupun perusahaan dengan metode persebaran paling banyak adalah melalui lampiran pada e-mail, kebanyakan orang mengira bahwa cara terbaik untuk mengamankan data mereka adalah dengan menggunakan infrastruktur komputasi awan. Salah satu contohnya adalah menggunakan komputasi awan untuk melakukan penyimpanan data (cloud storage). Beberapa penyedia layanan penyimpanan (storage) dan pencadangan (backup) menjadikan momen ini sebagai promosi layanan yang mereka sediakan bahwa komputasi awan dapat mencegah infeksi ransomware pada data-data yang disimpan.

Hal tersebut tentu tidak sepenuhnya benar. Walaupun infeksi ransomware memang dilakukan pada komputer lokal, beberapa program klien untuk melakukan sinkronisasi data dari media penyimpan lokal ke media penyimpan pada infrastruktur komputasi awan akan secara otomatis mengunggah data yang telah terinfeksi dan menimpa data asli yang disimpan pada cloud storage tersebut. Apabila penyedia layanan penyimpan dan pencadangan berbasis infrastruktur komputasi awan tidak menyediakan fitur sejarah data (file history / file versioning), tentu saja data yang disimpan pada cloud storage tidak dapat dikembalikan ke kondisi semula karena sudah tertimpa data yang telah terinfeksi.

Selanjutnya adalah kaitannya dengan basis data yang disimpan pada infrastruktur komputasi awan. Tentu banyak orang yang beranggapan bahwa berbeda dengan data pada umumnya yang secara otomatis dilakukan sinkronisasi dari media penyimpan lokal ke media penyimpan berbasis awan, basis data yang disimpan pada infrastruktur komputasi awan tidak diperlukan sinkronisasi dengan media penyimpan lokal. Aplikasi-aplikasi yang memerlukan akses ke basis data tersebut langsung dapat mengakses pada server tersebut sehingga versi terbaru selalu berada pada infrastruktur komputasi awan. Hal ini tentu akan mengurangi potensi infeksi ransomware yang, seperti telah dijelaskan sebelumnya, umumnya menyebar melalui lampiran e-mail yang dibuka pada komputer lokal. Dengan kata lain, basis data berbasis infrastruktur komputasi awan akan sangat aman dari serangan ransomware.

Sayangnya, hal tersebut tidaklah sepenuhnya benar. Basis data yang disimpan pada infrastruktur komputasi awan tidak sepenuhnya aman dari ransomware dan jenis ancaman keamanan lainnya. Khusus untuk ransomware, mereka memanfaatkan celah keamanan yang ada pada basis data tersebut. Celah keamanan ini dapat berasal dari kesalahan pengembangan infrastruktur khususnya perangkat lunak ataupun berasal dari kesalahan konfigurasi dari basis data itu sendiri. Pada bagian selanjutnya akan dibahas sebuah tragedi serangan ransomware pada beberapa basis data khususnya yang terjadi akhir-akhir ini yaitu basis data dengan nama MongoDB.


Tragedi MongoDB yang Berakhir Menggenaskan dan Menyisakan Duka Lara

sumber

MongoDB adalah sebuah basis data sumber terbuka (open source database) yang menggunakan model data berorientasi pada dokumen (document-oriented data model) [8]. Di bawah bendera NoSQL, MongoDB merupakan salah satu basis data yang mulai diminati pada tahun 2000. Berbeda dengan basis data SQL yang menggunakan tabel dan baris serta relasional di antara mereka, arsitektur MongoDB tersusun atas dokumen yang berisi banyak set pasangan kunci dengan nilai serta koleksi yang tersusun atas banyak dokumen dan fungsi. Data-data modern umumnya berukuran sangat besar, tidak terstruktur, dan terkadang sulit dipakai. Dengan ekspektasi yang tinggi terhadap data tersebut, NoSQL lahir untuk membantu mengolah dan menyimpan data yang kompleks tersebut.

 

sumber

Menurut [9], MongoDB sangat unggul dibanding tipe basis data relasional (SQL) bila digunakan dalam keperluan sebagai berikut.

  • Penyimpanan data bervolume besar tanpa struktur yang jelas.

Basis data relasional menyimpan data secara terstruktur, contohnya data buku telepon. Namun, pertumbuhan data yang tak terstruktur seperti minat dari pelanggan, lokasi pelanggan, dan pembelian di masa lampau oleh pelanggan akan sangat sulit disimpan pada basis data relasional. Sebuah basis data NoSQL tidak memberi batasan untuk menambahkan berbagai jenis data berbeda apabila suatu saat dibutuhkan perubahan. Dikarenakan MongoDB fleksibel dan berbasis dokumen, pengguna dapat menyimpan data biner JSON (disebut BSON) pada suatu tempat tanpa harus mendefinisikan apa tipe data tersebut di awal.

  • Penggunaan infrastruktur komputasi awan dan penyimpanan awan.

Seperti yang telah dijelaskan sebelumnya, infrastruktur penyimpanan data berbasis awan memiliki keunggulan dari sisi biaya yang rendah, namun memerlukan teknik penyimpanan data yang dapat tersebar pada banyak server untuk alasan skalabilitas. MongoDB dapat mengambil data dengan volume yang besar dan memberi fleksibilitas dalam hal penyimpanan dan penyediaan data pada lingkungan komputasi awan dengan fitur yang bernama sharding yang membuat pembagian data (data partition) dan penyebaran data (data spread) pada banyak server menjadi mudah.

  • Pengembangan dan peluncuran yang cepat.

Apabila basis data yang digunakan sangat cepat berubah seperti perubahan terhadap struktur data, basis data relasional memerlukan waktu yang lama dan kemungkinan tak dapat diakses ketika pembaruan sedang diimplementasikan. MongoDB memiliki dynamic schemas yang memungkinkan pengembang untuk mencoba berbagai macam hal baru secara cepat dengan biaya yang rendah.

  • Peningkatan arsitektur basis data secara efisien dan murah.

MongoDB membuat penyebaran data menjadi mudah dan murah tanpa memerlukan perangkat lunak tambahan.

Dengan semakin populernya penggunaan infrastruktur komputasi awan untuk menyimpan basis data dan keunggulan yang ditawarkan oleh MongoDB, adopsi penggunaan MongoDB pada perusahaan dan organisasi di dunia mengalami peningkatan dari tahun ke tahun. Data dari [10] menunjukkan popularitas MongoDB yang meningkat dari tahun ke tahun. MongoDB juga dikabarkan pada [11] telah mengambil pasar yang cukup besar dari yang dipegang oleh Oracle. Sayangnya, pada tahun 2016 hingga 2017 MongoDB diterpa sebuah masalah keamanan terhadap serangan ransomware.

sumber

Dua orang peneliti di bidang keamanan, Victor Gevers and Niall Merrigan, melakukan pemantauan menarik terhadap serangan ransomware yang menjadikan MongoDB sebagai targetnya. Kejadian yang diberi nama MongoDB Apocalypse [12] memakan korban yang tidak sedikit. Serangan ini dimulai pada bulan Desember 2016 oleh sebuah kelompok bernama harak1r1. Awal mulanya, serangan yang dilakukan cukup kecil karena hanya dilakukan oleh kelompok tersebut saja.

Berbeda dengan serangan ransomware pada sebuah komputer pribadi atau komputer perusahaan yang dilakukan dengan mengenkripsi semua data yang ada, serangan yang dilakukan oleh kelompok ini dilakukan dengan meretas masuk server basis data MongoDB yang tidak terlindungi, mengambil seluruh data yang ada, menghapus atau menimpa data tersebut dengan data lain, dan meminta bayaran dalam bentuk Bitcoin agar korban dapat memperoleh datanya kembali.

Pada tanggal 7 Januari 2017, tercatat 10.500 server basis data MongoDB yang menjadi korban keganasan ransomware [12]. Dua hari kemudian, tanggal 9 Januari 2017, jumlah serangan ransomware terhadap basis data MongoDB meningkat lebih dua kali lipat menjadi 28.200 akibat keikutsertaan kelompok profesional ransomware bernama Kraken [12]. Hal ini menunjukkan bahwa serangan terhadap basis data MongoDB merupakan serangan yang menjanjikan, khususnya terhadap perusahaan atau organisasi komersial, karena korban memiliki keinginan besar untuk mengembalikan data-data yang telah diretas dengan membayar sejumlah uang kepada para penyerang.

Sebuah dokumen yang dapat diakses online mendata kelompok-kelompok penyerang, jumlah tebusan (ransom) yang diminta, alamat pengiriman bitcoin, beserta identifikasi bekas serangan dan jumlah korban [22]. Beberapa korban di antaranya membayar tebusan namun tidak mendapatkan kembali data yang telah diambil. Oleh karena itu, disarankan untuk melakukan pemeriksaan log file terlebih dahulu sebelum melakukan pembayaran tebusan karena pada log file terlihat aktivitas penyerang apakah ia melakukan ekspor data sebelum menghapus semua data yang ada.

Gevers menambahkan, penyerangan ini terjadi akibat perusahaan atau organisasi yang menjadi korban menggunakan versi MongoDB yang lama yang dipasang pada layanan komputasi awan. Basis data MongoDB yang paling mudah dibuka dan paling rentan dapat ditemui pada layanan komputasi awan Amazon Web Services (AWS) karena AWS merupakan tempat yang paling diminati oleh perusahaan atau organisasi untuk mengimplementasikan infrastruktur basis datanya pada infrastruktur komputasi awan. Sekitar 78% dari instalasi MongoDB yang ada di AWS merupakan versi yang memang rentan terhadap ancaman. Salah satu kerentanan versi MongoDB ini adalah konfigurasi bawaan yang mengizinkan basis data menerima koneksi dari luar (internet). [13]

Serangan ini umumnya dilakukan dengan sederhana. Untuk versi MongoDB sebelum versi 2.6.0, konfigurasi bawaan mengizinkan basis data MongoDB menerima koneksi dari jaringan luar (internet). Lebih jauh lagi, autentikasi tidak diperlukan sehingga instalasi MongoDB dengan konfigurasi bawaan sebelum versi 2.6.0 dengan senang hati menerima koneksi tidak terautentikasi dari jaringan luar (internet) [13]. Hal ini tentu dapat diatasi dengan melakukan konfigurasi secara manual pada file mongodb.conf yang banyak dilewatkan oleh para pengguna. Penyerang dapat dengan mudah mengidentifikasi basis data MongoDB yang memiliki celah keamanan seperti ini untuk dijadikan kandidat penyerangan dengan memanfaatkan mesin pencari seperti Shodan atau ZoomEye.

Yang menarik adalah, dari Github Check-In yang sudah lama [14] dengan cap waktu (timestamp) 26 September 2013, dapat diketahui bahwa konfigurasi bawaan pada file mongod.conf tidak mengizinkan koneksi dari luar (baris ke-17 dan ke-18). Namun, versi terakhir dari MongoDB yang masih secara bawaan mengizinkan koneksi dari luar yaitu versi 2.4.14 yang dirilis pada 28 April 2015 tidak menggunakan file mongod.conf pada [14].

Di sisi lain, isu konfigurasi bawaan yang mengizinkan koneksi dari luar ini telah dikemukakan pada 4 November 2011 oleh Roman Shtylman pada halaman JIRA MongoDB [15]. Isu ini dianggap enteng karena pada saat itu, penggunaan infrastruktur komputasi awan untuk menyimpan basis data belum populer. Instalasi yang dilakukan pada umumnya masih menggunakan komputer pada perusahaan atau organisasi masing-masing yang kebanyakan menggunakan NAT atau Firewall yang secara bawaan tidak mengizinkan akses pada port 27017 yang merupakan port bawaan dari MongoDB.

Dari sisi pengguna, konfigurasi bawaan yang tidak aman juga berpengaruh terhadap banyaknya serangan yang muncul. Berdasarkan studi pada [16] dan [17] disimpulkan bahwa pada umumnya pengguna tidak akan mengubah-ubah konfigurasi bawaan (default). Banyak diantaranya berpendapat bahwa konfigurasi bawaan merupakan konfigurasi paling baik karena didefinisikan oleh pengembang / pembuat aplikasi tersebut sehingga tidak perlu diubah. Hal ini tentu sangat berbahaya apabila konfigurasi bawaan mengandung celah yang bisa dimanfaatkan oleh penyerang tanpa diketahui oleh pengguna itu sendiri.

Dengan semakin populernya infrastruktur komputasi awan untuk menyimpan basis data, hal ini, MongoDB Inc., perusahaan pengembang basis data MongoDB, mengeluarkan versi MongoDB terbaru yang menambal kerentanan yang menjadi jalan bagi para penyerang untuk mengambil alih basis data. Dengan merilis versi 2.6.0-rc0, konfigurasi bawaan basis data MongoDB tidak lagi mengizinkan koneksi dari luar (internet) kecuali memang diaktifkan oleh pengguna. Dengan demikian, butuh waktu lebih dari dua tahun untuk memperbaiki isu yang terlihat mudah namun berdampak besar bagi pengguna dikemudian hari.

Sayangnya, walaupun MongoDB Inc. telah memberikan pembaruan yang menambal celah keamanan tersebut, umumnya pengguna tidak melakukan pemeliharaan yang baik karena tidak memperbarui versi MongoDB yang mereka pasang. Hal ini terbukti dari masih banyaknya instalasi MongoDB dengan versi lama dan menunggu untuk diserang. Memang, pembaruan versi atau migrasi versi sebuah infrastruktur akan sedikit mengganggu operasional dan memerlukan usaha lebih.

Oleh karena itu, melalui laman resminya, MongoDB Inc. memberikan tata cara mitigasi masalah serangan ransomware yang memanfaatkan celah ini [19] [20]. MongoDB Inc. juga memberi dorongan kepada pengguna untuk memperbarui versi MongoDB ke versi yang lebih baru. Selain itu, bersamaan dengan rilis versi 2.6.0-rc0, MongoDB Inc. membuka kesempatan bagi publik untuk berlomba-lomba menemukan celah pada basis data MongoDB (bug hunter) yang kemudian disampaikan kepada pengembang MongoDB sehingga berkesempatan mendapatkan hadiah [21].


Langkah Pencegahan yang Harus Dilakukan atau Membayar Mahal Di Akhir

sumber

Tragedi penyerangan MongoDB selain menyisakan duka dan lara, juga menyisakan pelajaran yang bisa diambil. Pelajaran ini tidak hanya sebatas pada basis data MongoDB, namun juga basis data lain yang mungkin juga memiliki celah keamanan. Sebagai contoh, serangan ransomware juga terjadi pada basis data MySQL [23].

Berikut ini adalah langkah-langkah pencegahan yang dapat dilakukan untuk menghindari serangan ransomware. Memang beberapa langkah ini membutuhkan biaya dan kerja ekstra untuk melakukannya, namun mengingat data merupakan sesuatu yang sangat penting tentu langkah-langkah tersebut akan sangat baik apabila dilakukan saat menggunakan infrastruktur komputasi awan sebagai server basis data.

  • Memilih mesin basis data dengan fitur yang sesuai dan dukungan yang baik.

Sebelum melakukan pemilihan penyedia layanan infrastruktur komputasi awan dilakukan, kita perlu menentukan mesin basis data yang diperlukan untuk memenuhi kebutuhan penyimpanan dan pengolahan data yang akan kita lakukan. Beberapa mesin basis data menyediakan versi berbayar (enterprise) yang memiliki dukungan dari pengembang yang sangat baik, fitur keamanan yang lebih kompleks, fitur distribusi data untuk pemerataan beban akses (load balance), dan sebagainya. Namun, untuk perusahaan atau organisasi yang tidak memiliki biaya untuk menggunakan versi berbayar, versi gratis atau sumber terbuka (open-source) dapat menjadi pilihan yang menarik. Gunakan mesin data yang masih dengan aktif dikelola oleh pengembangnya.

  • Memilih penyedia infrastruktur komputasi awan yang tepercaya.

Pemilihan penyedia infrastruktur komputasi awan merupakan sesuatu yang sangat penting karena kita tidak bisa sepenuhnya mengontrol aset IT yang kita letakan di infrastruktur mereka. Pelajari dengan baik syarat layanan (Terms of Services), perjanjian layanan (Service-level Agreement), dan reputasinya dari berbagai macam sisi termasuk keamanan sebelum memutuskan untuk menggunakan layanan mereka. Beberapa penyedia infrastruktur komputasi awan juga memberikan beberapa jenis layanan yang memang dikhususkan untuk mesin basis data yang akan kita gunakan sehingga dapat berjalan lebih optimal.

Selain ketentuan-ketentuan pada saat kita melakukan implementasi (commisioning) dan operasional (operational), perlu dilihat juga kebijakan pada saat kita mengakhiri langganan kita terhadap layanan mereka (decomissioning). Walaupun data-data kita telah dihapus, bisa jadi ada peluang untuk dipanggil kembali yang tentu menjadi ancaman terhadap data-data sensitif.

  • Melakukan instalasi mesin basis data sesuai rekomendasi dari pembuat dan sesuai dengan standar keamanan.

Setelah pemilihan penyedia infrastruktur komputasi awan dilakukan, kini saatnya kita melakukan instalasi mesin basis data pada komputer server yang telah kita sewa tersebut. Ikuti petunjuk instalasi yang disediakan oleh pembuat, periksa setiap konfigurasi yang ada dan jangan biarkan kita tidak mengetahui maksud nilai konfigurasi bawaan dari pembuatnya.

  • Melakukan pencadangan secara berkala baik di dalam mesin yang sama maupun di luar mesin yang sama.

Pencadangan adalah keharusan bagi mereka yang tidak ingin menyesal di masa depan bila terjadi masalah. Memang, pencadangan akan menambah biaya operasional sesuai dengan frekuensi pencadangan yang dilakukan dan lama hasil pencadangan disimpan sebelum ditimpa dengan yang baru. Namun, apabila di masa depan terjadi sesuatu dan tidak ada pencadangan apapun, kerugian yang dialami perusahaan atau organisasi akan sangat besar.

Oleh karena itu, terapkan pencadangan secara berkala dengan frekuensi pencadangan disesuaikan dengan aktivitas basis data yang ada. Gunakan metode pencadangan yang menyimpan sejarah (snapshot) dari basis data sebagai pencadangan dengan frekuensi yang tinggi (per-jam atau per-hari). Di sisi lain, kita tetap harus membuat pencadangan penuh (full backup) dengan frekuensi yang lebih lama (misalkan per-minggu atau per-bulan).

Selain itu, penyimpanan hasil pencadangan juga tidak boleh terfokus pada server yang sama dengan tempat basis data tersebut disimpan. Onsite backup memang diperlukan untuk pemulihan dengan cepat pada saat terjadi bencana, namun offsite backup juga tidak kalah penting. Terlebih lagi, dengan menggunakan mesin virtual, pencadangan dapat dilakukan satu mesin penuh.

  • Mengikuti perkembangan berkaitan dengan mesin basis data yang digunakan dan melakukan pembaruan apabila diperlukan.

Seiring berjalannya waktu, pembuat mesin data akan merilis pembaruan terbaru untuk meningkatkan performa, menambal celah keamanan, atau menambah fitur baru. Akan sangat penting bagi pengurus mesin basis data untuk mengikuti perkembangan tersebut dan memperbarui versi mesin basis data yang digunakan apabila diperlukan. Forum-forum diskusi yang biasanya ada pada setiap halaman pembuat juga dapat dimanfaatkan untuk bertukar pikiran dengan pengurus mesin basis data di perusahaan atau organisasi lain.

  • Memantau dan mengamati log sistem secara rutin untuk melakukan pemeriksaan terhadap hal-hal yang mencurigakan.

Semua aktivitas yang terjadi pada basis data dapat direkam dalam bentuk log. Ukuran file log ini dapat menjadi sangat besar apabila terlalu banyak parameter yang direkam sehingga diperlukan pemilihan terhadap kejadian atau parameter penting yang akan direkam. Selain itu, log harus dibedakan antara informasi, peringatan, dan bahaya sehingga pengamatan intensif dapat dilakukan pada log dengan urgensi yang tinggi.


Simpulan

sumber

Jadi, apakah lebih baik tetap di darat atau pindah ke awan? Itu merupakan pilihan masing-masing perusahaan atau organisasi. Dengan sederet keunggulan yang ditawarkan oleh komputasi awan, diperlukan sederet persiapan pula untuk menjamin tingkat keamanan basis data yang akan diimplementasikan pada infrastruktur tersebut. Dengan mengikuti prosedur keamanan standar yang direkomendasikan baik oleh penyedia layanan komputasi awan, pembuat mesin basis data, ataupun pakar-pakar keamanan yang lain ditambah dengan pencadangan, perawatan, dan pemantauan mesin basis data, ancaman keamanan dapat diminimalisir sekecil mungkin.

© 2017 Bagus Hanindhito (23217009) [hanindhito (at) bagus (dot) my (dot) id]

Sumber

[1] http://stepshot.net/database-migration-trend-towards-cloud-based-databases/
[2] https://db-engines.com/en/blog_post/68
[3] https://www.trendmicro.com/vinfo/us/security/definition/ransomware
[4] https://blog.barkly.com/new-ransomware-trends-2017
[5] https://venturebeat.com/2016/03/26/next-wave-of-ransomware-could-demand-millions/
[6] https://www.bleepingcomputer.com/news/security/los-angeles-valley-college-pays-a-whopping-30-000-in-ransomware-incident/
[7] https://securityintelligence.com/news/cerber-ransomware-now-steals-bitcoin-data/
[8] http://searchdatamanagement.techtarget.com/definition/MongoDB
[9] https://www.upwork.com/hiring/data/should-you-use-mongodb-a-look-at-the-leading-nosql-database/
[10] https://db-engines.com/en/ranking_trend/system/MongoDB
[11] https://www.forbes.com/sites/petercohan/2017/05/30/mongodb-taking-share-from-oracle-in-40-billion-market/#5334a07e3156
[12] https://www.bleepingcomputer.com/news/security/mongodb-apocalypse-professional-ransomware-group-gets-involved-infections-reach-28k-servers/
[13] https://snyk.io/blog/mongodb-hack-and-secure-defaults/
[14] https://github.com/mongodb/mongo/blob/e01dfe96c73e89fb5e20f55faff4fcbfb54de1b5/debian/mongod.conf
[15] https://jira.mongodb.org/browse/SERVER-4216
[16] https://www.nngroup.com/articles/the-power-of-defaults/
[17] https://www.uie.com/brainsparks/2011/09/14/do-users-change-their-settings/
[18] https://www.mongodb.com/blog/post/announcing-the-mongodb-bug-hunt-260-rc0
[19] https://www.mongodb.com/blog/post/how-to-avoid-a-malicious-attack-that-ransoms-your-data
[20] https://www.mongodb.com/blog/post/update-how-to-avoid-a-malicious-attack-that-ransoms-your-data
[21] https://www.mongodb.com/blog/post/announcing-the-mongodb-bug-hunt-260-rc0
[22] https://docs.google.com/spreadsheets/d/1QonE9oeMOQHVh8heFIyeqrjfKEViL0poLnY8mAakKhM/edit#gid=1781677175
[23] https://www.guardicore.com/2017/02/0-2-btc-strikes-back-now-attacking-mysql-databases/

Hardening CentOS Security

William Stallings dan Lawrie Brown dalam bukunya yang berjudul Computer Security: Principles and Practice menulis tentang langkah-langkah pengamanan sistem yang menggunakan sistem operasi Linux / UNIX. Secara garis besar, langkah-langkah tersebut adalah:

  • Patch Management
  • Application and Service Configuration
  • Users, Groups, and Permissions
  • Remote Access Controls
  • Logging
  • Application Security Using a chroot jail
  • Security Testing

Berikut adalah langkah-langkah implementasi di atas secara spesifik pada sistem operasi CentOS. Setelah selesai proses basic instalasi pastikan terhubung dengan internet, sebelum dilakukan patching atau pembaharuan dan instalasi paket periksa alamat repositori yang dituju apakah sudah benar dan terpecaya.

Patch Management

Update CentOS untuk memastikan sistem dan aplikasi yang terpasang menggunakan security patch terbaru. Perintah yang digunakan untuk melakukan update CentOS adalah menggunakan perintah “yum install update”.

Application and Service Configuration

Instalasi aplikasi-aplikasi, seperti apache dan mysql, dilakukan dengan menggunakan yum. Khusus untuk OpenSSH-server instalasi dilakukan secara manual karena versi OpenSSH yang ada pada repository CentOS bukan merupakan versi OpenSSH terbaru. OpenSSH versi terbaru digunakan karena pada versi terbaru celah-celah keamanan yang ada pada versi-versi sebelumnya telah diperbaiki. Langkah-langkah instalasi OpenSSH-server secara manual dilakukan dengan menggunakan referensi berikut:  Quick and dirty manual compile of OpenSSH on CentOS 5. Walaupun referensi tersebut menginstalasi OpenSSH versi 5.0p1 pada CentOS 5, namun tetap relevan untuk melakukan instalasi OpenSSH versi 6.4p1 pada CentOS 6.

Setelah selesai melakukan instalasi OpenSSH terbaru, dilakukan konfigurasi aplikasi dan servis. Konfigurasi aplikasi dan servis yang dilakukan kali ini adalah konfigurasi apache, mysql, firewall, rkhunter (aplikasi untuk memindai rootkit) dan terakhir dilakukan konfigurasi sistem untuk membuang aplikasi / servis yang tidak diperlukan.

Konfigurasi apache dilakukan apabila diperlukan saja. Dalam kasus ini, webserver tidak melayani permintaan HTTPS sehingga konfigurasi apache akan memastikan apache tidak mendengar (Listen) port yang biasa digunakan HTTPS yaitu port 443. Untuk memastikan hal tersebut, pastikan tidak ada baris “Listen 443” pada file konfigurasi apache (/etc/httpd/conf/httpd.conf).

Konfigurasi mysql dilakukan untuk menambahkan password pada account root mysql dan mematikan fitur jaringan pada mysql karena pada kasus ini webserver dan database berada pada mesin yang sama. Dengan mematikan fitur jaringan mysql, kemungkinan terjadinya eksploitasi pada mysql dari pihak luar dapat diminimalisir.

Apabila pertama kali dijalankan, account root pada mysql belum memiliki password. Untuk menambahkan password pada account root ketika mysql pertama kali dijalankan adalah dengan menggunakan perintah “mysqladmin -u root password NEWPASSWORD”. Pastikan root tidak bisa diakses tanpa menggunakan password.

Langkah konfigurasi berikutnya untuk mysql adalah mematikan fitur jaringan (menghentikan Listen ke port 3306). Langkah ini dapat dilakukan dengan cara menambahkan baris “skip-networking” pada file config mysql di /etc/my.cnf.

Configure Firewall dilakukan untuk menutup port-port yang tidak digunakan. Apabila port-port Listen yang tidak digunakan dibiarkan begitu saja, maka port-port tersebut bisa menjadi celah keamanan yang bisa dimanfaatkan oleh pihak luar. Dalam kasus ini, konfigurasi dilakukan untuk menutup port SSH dan HTTPS yang tidak digunakan. Sebagaimana sudah dijelaskan di atas, port HTTPS tidak digunakan karena webserver tidak melayani permintaan HTTPS. Sedangkan untuk port SSH ditutup karena untuk melakukan SSH ke mesin ini digunakan port lain, bukan port default. Untuk memudahkan konfigurasi firewall digunakan tools “system-config-firewall-tui” yang menyediakan konfigurasi berbasis Text-based User Interface (TUI).

Setelah selesai melakukan konfigurasi firewall, dilanjutkan dengan instalasi dan konfigurasi aplikasi bernama rkhunter. Rkhunter (Rootkit Hunter) adalah tools untuk melakukan pemindaian pada sistem berbasis Unix / Linux. Rkhunter akan memindai backdoor, rootkit, dan local exploit yang ada pada sistem. Hal lain yang akan dipindai oleh rkhunter adalah: hidden files, wrong permissions set on binaries, suspicious strings in kernel etc. Detail lain mengenai rkhunter dapat diliat langsung pada situs resminya yaitu http://www.rootkit.nl/. Langkah-langkah instalasi dan konfigurasi rkhunter dilakukan dengan menggunakan referensi berikut: Install Linux Rkhunter (Rootkit Hunter) in RHEL, CentOS and Fedora.

Langkah terakhir pada konfigurasi aplikasi dan servis adalah memeriksa aplikasi yang terinstalasi pada sistem. Apabila ada aplikasi atau servis yang tidak perlu sebaiknya aplikasi atau servis tersebut dihapus saja. Pemeriksaan aplikasi yang terinstalasi dapat dilakukan dengan menggunakan perintah “rpm -qa”. Sedangkan untuk menghapus dapat menggunakan yum dengan perintah “yum remove package-name”

User, Group, and Permission

Pemeriksaan user dilakukan dengan melihat isi file /etc/passwd. User dengan user ID dan grup ID lebih kecil dari 500 merupakan user dan grup standar dari sistem operasi (baik user dan grup untuk aplikasi ataupun servis). Pada kasus ini hanya satu  user yang memiliki user ID 500  dan user tersebut merupakan user yang biasa dipakai pada server sehingga tidak perlu tindakan lebih lanjut.

Pemeriksaan group dilakukan dengan melihat isi file /etc/group. File ini mempunyai format nama-grup:x:grupID:user1,user2,dst. Grup dengan grup ID lebih kecil dari 500 merupakan grup standar dari sistem operasi (baik grup untuk aplikasi ataupun servis). Pada kasus ini hanya satu  grup yang memiliki grup ID 500 sehingga tidak perlu tindakan lebih lanjut.

Remote Access Control

Pembatasan remote akses dilakukan dengan mengkonfigurasi ssh. Konfigurasi yang dilakukan adalah menolak root login pada ssh dan mengganti port default dari ssh. Langkah untuk menolak root login dan pengubahan port ssh dilakukan dengan merubah isi file sshd_config. Karena OpenSSH diinstalasi secara manual maka letak file ada di /usr/local/etc/sshd_config. Apabila instalasi ssh dilakukan oleh yum maka letak file ada di /etc/ssh/sshd_config. Tambahkan baris “PermitRootLogin no” untuk menolak root login dan ubah nilai Port untuk mengganti default port.

Logging

Untuk mempermudah logging, digunakan aplikasi Logwatch. Logwatch berfungsi untuk mengirimkan log pada sistem operasi dalam bentuk email. Log dikirimkan ke administrator yang terdaftar pada konfigurasi Logwatch agar mesin tidak perlu mengurusi penyimpanan file log. Untuk melakukan instalasi dan konfigurasi Logwatch dapat mengikuti referensi berikut: Logwatch How to Install on CentOS. Pada dasarnya langkah yang dilakukan adalah:

  • instalasi logwatch melalui yum dengan perintah “yum install logwatch”
  • edit “MailTo=” pada config logwatch di /usr/share/logwatch/defaults.conf/logwatch.conf

Logwatch pada CentOS secara default menggunakan sendmail MTA (message transfer agent) untuk mengirimkan email ke mailhub yang lalu mengirimkan email ke administrator. Pada kasus ini digunakan email dari gmail sehingga MTA harus dikonfigurasi untuk terhubung dengan gmail. Setelah beberapa saat mencoba konfigurasi sendmail dirasa sangat sulit dan rumit, ditemukan aplikasi yang lebih sederhana yang hanya berfungsi mengirim email dari komputer ke mailhub (tidak bisa terima) yaitu ssmtp. Langkah instalasi dan konfigurasi ssmtp serta membuatnya ssmtp menjadi default MTA dapat menggunakan referensi berikut: Use Gmail SMTP with sendmail on CentOS 6.3 using SSMTP. Pada referensi tersebut langkah-langkah yang dilakukan adalah:

  • mematikan servis sendmail

  • menambahkan alamat repository pada yum untuk mendapatkan ssmtp package

  • install ssmtp

  • konfigurasi ssmtp (seperti pada referensi)

FromLineOverride=YES
root=username@gmail.com
mailhub=smtp.gmail.com:587
UseTLS=YES
UseSTARTTLS=YES
AuthUser=username
AuthPass=password

  • menggunakan ssmtp sebagai default MTA

Setelah selesai melakukan koonfigurasi jalankan perintah “logwatch” (dengan root permission) untuk menjalankan Logwatch. Apabila ingin diatur laporan perhari dapat menggunakan cron job. Berikut penggalan contoh hasil laporan Logwatch pada mesin yang dicobakan:

Application Security Using a chroot jail

Server memiliki beberapa service yang diberikan akses ke publik dan privat yang diakses melalui sebuah jaringan yang besar. service tersebut tidak sepenuhnya memerlukan fitur yang lengkap dari sistem operasi tersebut melainkan hanya beberapa fungsi saja, seperti file data dan direktori untuk layanan tersebut beroperasi. Hal ini dikenal dengan istilah Chroot Jail.

Contoh yang umum digunakan pada Chroot Jail adalah service dari FTP, HTTP, dan lain sebagainya. Kesemua fitur ini biasanya sering diakses baik pengunduhan maupun pengunggahan, sehingga sangat retan diserang apabila diberikan akses ke seluruh sistem. Apabila terserang maka penyerang tersebut dapat mengakses data yang lain dari sistem tersebut. Sistem pada Unix atau Linux menyediakan mekanisme untuk menjalankan layanan tersebut di Chroot Jail, yang membatasi pandangan server dari sistem file untuk hanya sebagian ditentukan.

Security Testing

Setelah selesai mengkonfigurasi aplikasi dan servis, perlu dilakukan beberapa pengujian untuk memastikan hasil konfigurasi. Berikut adalah pengujian-pengujian yang dilakukan.

Verifikasi integritas package yang terinstalasi dengan rpm.

Memastikan server hanya LISTEN ke port yang dikenali saja.

Port 2345 merupakan port yang digunakan untuk SSH, sedangkan port 80 merupakan port yang digunakan apache untuk memberi layanan web. Port HTTPS (443) pada apache sengaja ditutup.

Ditulis oleh:  Adrian Dwiananto A (23212035) & Mulkan Fadhli (23212034)

Hardening WordPress Configuration

William Stallings dan Lawrie Brown dalam bukunya yang berjudul Computer Security: Principles and Practice pada bagian Application Security (Chapter 12) merupakan bagian terpenting setelah melakukan proses pengamanan Sistem Operasi. Pada kasus ini apikasi utama pada server berjalan adalah WordPress. Oleh karenanya, proses pengamanan WordPress dimasukkan dalam bahagian tersendiri.

Agar WordPress dapat berjalan maka ada beberapa prasyarat yang harus terpenuhi, yaitu :

  • Apache Deamon sudah aktif
  • MySQL Deamon sudah aktif
  • PHP

Ketiga proses tersebut telah dijelaskan pada bahagian Application and Service Configuration, gunakan versi terbaru. satu lagi paket yang harus dimiliki yaitu WordPress source biasanya dalam bentuk .zip atau .tar.gz apabila diunduh dari situs resmi https://wordpress.org/. Berikut langkah-langkah instalasi dan konfigurasi wordpress.

  • Memastikan Prasyarat dari WordPress.

Untuk PHP ketikkan :

Untuk MySql ketikkan :

Untuk Apache ketikkan :

  • Download WP terbaru

Setelah semua aplikasi di atas terinstal dan terkonfigurasi, periksa apakah sudah jalan dengan benar. Selanjutnya unduh wordpress versi terbaru dari situsnya dengan memberikan perintah wget –secure-protocol=auto https://wordpress.org/latest.tar.gz

Dikarenakan fitur wget yang tersedia (versi terbaru) belum mendukung protokol sekuriti yang terdapat pada situs https://wordpress.org maka WP versi terbaru yaitu wordpress v3.7.1 diunduh dengan menggunakan browser terlebih dahulu.

setelah proses pengunduhan selesai, untuk alasan keamanan maka disarankan untuk

  • Extract file nya dan mounting di direktori apache nya

[root@localhost /]# tar -xvzf latest.tar.gz
[root@localhost /]# cp -R wordpress-3.3.1 /var/www/html/blog

  • Buka browser anda dan arahkan urlnya ke localhost/blog maka proses instalasi akan muncul apabila tidak maka arahkan ke //localhost/blog/wp-admin/install.php

Securing WordPress

Setelah selesai melakukan instalasi WordPress, langkah selanjutnya adalah mengamankannya dari berbagai macam kemungkinan celah keamanan. Adapun langkah-langkah mengamankannya, yaitu :

  • Gunakan password yang tangguh

Gunakan password dengan kombinasi yang tangguh sehingga sulit untuk dicoba-coba secara acak. Minimalkan penggunaan akun admin dalam mengisi konten. Dan untuk menjaga keamaan akun anda agar tidak mudah diretas melalui password berikut diberikan tips sehingga akan akun akan sulit diretas :

Password yang kuat adalah:

Minimal 8 karakter (lebih banyak lebih baik)
Mengandung lebih dari 1 huruf kecil, 1 huruf besar, 1 angka dan 1 simbol
Setiap karakter selang-seling antara huruf kecil, huruf besar, angka & simbol
Tanpa ada karakter yang sama atau berulang

Password yang ideal adalah:

Mudah diingat
Beda akun/ web/ aplikasi, beda password
Diganti setidaknya sebulan sekali

Password yang harus dihindari adalah:

Berupa kata yang ada di kamus dalam bahasa apapun
Singkatan-singkatan yang umum
Karakter berurutan baik angka maupun huruf pada keyboard
Informasi pribadi seperti nama atau tanggal lahir

  • Lindungi akses admin wordpress

Rubahlah username default dari administrator. Pada bagian Users di halaman admin, terdapat bagian pengaturan profil.

  • Update wordpress

Ini sangat penting untuk memperbarui WordPress anda dari bugs dan masalah keamanan. Anda dapat menggunakan Automatic Upgrade (Tools > Upgrade), atau 3 langkah upgrade manual.

  • Hapus file WordPress/../readme.html

Selalu periksa file readme.html apabila masih ada segera hapus, karena dengan mengetahui versi yang sedang digunakan mempermudah salah satu langka peretas dalam menyusup.

  • Konfigurasi file .htaccess untuk tutorial lengkap dapat dilihat ada creativebloq.com

Lindungi direktori WP-Admin dengan password dari sisi server. Letakkan file .htaccess pada direktori yang ingin anda amankan. Berikut adalah kode dari file .htaccess

AuthName “WP-Admin”
AuthType Basic
AuthUserFile /path/ke/passwd  #(direktori tujuan file .htpasswd)
Require valid-user

Gunakan htpasswd untuk membuat file passwd (.htpasswd) dan letakkan file ini pada direktori yang tidak bisa diakses dari web (htpasswd -c /tujuan/direktori/passwd username).

  • Monitor Malware

Instal plugin yang terpercaya guna melakukan monitoring terhadap malware serta memberikan laporan kepada admin web apabila ada malware detection sehingga apabila terindikasi dapat dihapus.

  • Lindungi dari serangan “brute force” untuk tutorial dapat dilihat pada copyblogger.com

Kadangkalanya sebuah web diserang secara ‘brute force’/acak, sehingga akan terdapat laporan percobaan penyusupan hingga berkali-kali. Blok IP yang kelihatan mencoba secara terus menerus dan berkala.

  • Block Akses Search Engine ke Direktori WP-

Direktori WP- tidak perlu di-index oleh search engine, jadi blok saja akses ke direktori ini. Anda bisa menggunakan konfigurasi berikut di file robots.txt.

              Dissalow: /wp-*

  • PLugin

Kelola plugin yang digunakan secara bijak. pastikan plugin yang digunakan berasal dari sumber yang sangat aman. Periksa daftar plugin yang sudah aktif di web, selanjutnya optimalkan dengan cara menghapus plugin yang tidak digunakan

  • Backup

Ini adalah aturan dasar yang sederhana yang dapat menyelamatkan web dalam banyak kasus. Jangan lupa untuk selalu mem-backup website (root folder dan semua file-file yg ada) dan database secara berkala, agar website dapat dikembalikan apabila terjadi serangan.

Dapat dilakuan dengan menggunakan PhpMyAdmin untuk backup database. Bukalah database anda, klik tab Export, pilih semua tabel pada pilihan SQL (jangan lupa centang “Add DROP TABLE“). Selain itu, gunakan fungsi GZIP Compression.

Kompresi adalah cara cepat dan efektif untuk menghemat bandwidth dan mempercepat website.Apache memungkinkan kompresi melalui mod_deflate dan tambahkan kode berikut di dalam file .htaccess sehngga akan mengaktifkan kompresi GZIP pada halaman web Anda.

# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/xml text/css application/x-javascript application/javascript
</ifmodule>
# END GZIP

Ditulis oleh:  Adrian Dwiananto A (23212035) & Mulkan Fadhli (23212034)

CentOS Secure Installation

Langkah paling utama dan pertama yang harus dilalui adalah mengamankan pondasi yaitu Sistem Operasi. Diawali dengan memastikan sumber paket instalasi tersebut berasal dari sumber yang benar. Banyak cara memastikanya, pertama gunakan paket instalasi resmi (berbeli atau unduh dari situs yang meyakinkan misalnya secure web). kedua periksa md5sum serta sha*-nya apakah sesuai dengan informasi yang tertera pada situs resmi CentOS. Langkah kedua ini berlaku untuk semua aplikasi yang bersumber dari pengunduhan.

Sistem Operasi Centos merupakan turunan dari RedHat, versi terbaru dari Centos sekarang adalah 6.4. Sistem Operasi Centos dapat diunduh dari salah satu mirror yang terdaftar pada situs resminya http://www.centos.org. Untuk pengunduhan sistem operasi centos tersedia dalam beberapa versi, Live CD (tidak dapat digunakan untuk instalasi), Minimal, Full Service. Pada versi fulservice sudah tersedia banyak aplikasi yang dibutuhkan. Pada laporan ini digunakan OS Centos yang full service akan tetapi proses instalasi menggunakan sistem Minimal, dengan tujuan mengurangi beban server. Setelah mengunduh pastikan md5sum, sha1sum, dan sha256sum sesuai dengan yang diberikan oleh situs mirror dan situs http://www.centos.org.

Jalankan CD Instalasi CentOS, setelah proses booting akan tampil tampilan depan dari CentOS. Tersedia beberapa pilihan untuk dilakukan instalasi, untuk alasan keamanan maka pilih instalasi minimal atau instalasi basic sehingga aplikasi yang terinstal hanyalah aplikasi yang dibutuhkan saja.

Setelh memilih basic instalasi selanjutnya akan muncul tampilan media testing

Akan membutuhkan waktu yang sangat lama untuk menyelesaikan pengecekan, apabila anda yakin dengan CD instalasi yang anda miliki maka disaran untuk memilih skip saja. selanjutnya pilih Bahasa yang akan digunakan pada sistem operasi.

Selesaikan semua konfigurasi yang dibutuhkan hingga proses instalasi berjalan. Untuk proses instalasi dapat dilihat pada situs  howtoforge.com.

 

Strategi Pengamanan WordPress pada Sistem Operasi Centos

Penggunaan sistem komputer di banyak perusahaan sudah menjadi kebutuhan yang sangat mendukung jalannya proses bisnis perusahaan tersebut. Sistem komputer klien dan server merupakan komponen utama dari infrastuktur IT, sistem klien menyediakan akses ke data dan aplikasi yang digunakan perusahaan. Proses tersebut didukung oleh komputer server yang menyimpan dan menjalankan aplikasi serta datanya. Sistem yang berjalan secara umum sangat mudah untuk diserang baik dari luar maupun dalam, sehingga diperlukan beberapa langkah sehingga terbentuknya sistem yang tangguh. Strategi untuk penguatan sistem yang diusulkan yaitu Perencanaan, Intalasi, Konfigurasi, Pembaharuan, dan Pemeliharaan untuk sistem operasi dan aplikasi yang berjalan.

Langkah – langkahnya dibagi kedalam 3 kelompok besar yaitu :

  1. Secure Instalation CentOS
  2. Hardening CentOS Security
  3. Hardening WordPress Configuration

Ditulis oleh:  Adrian Dwiananto A (23212035) & Mulkan Fadhli (23212034)