Seperti yang sudah aku sampaikan di dalam tulisan sebelumnya mengenai jenis serangan siber, belakangan ini aku sibuk untuk mengurus situs web (selanjutnya akan menggunakan istilah website) organisasi dan invidu yang mengalami serangan. Rata-rata, mereka mengatakan bahwa website-nya di-hack oleh pihak yang tidak bertanggung jawab. Mungkin ada benarnya karena rata-rata mereka adalah organisasi yang bekerja untuk isu yang cukup sensitif seperti HAM, Lingkungan dan Pekerja Migran. Bahkan ada satu organisasi yang mengatakan bahwa website mereka mulai bermasalah saat mengunggah sebuah tulisan yang cukup keras mengkritik pihak tertentu.
Namun setelah mencoba melihat masalah yang mereka hadapi, aku cuman bisa mengelus dada. Seperti yang sudah disampaikan sebelumnya bahwa bahwa persoalan terbesar berasal dari kesalahan manusia (human error). Bahkan IBM mengeluarkan laporan bahwa 95% dari insiden keamanan melibatkan kesalahan manusia.
Laporan ini terkonfirmasi, beberapa diantara website tersebut tidak terkelola dengan baik. Bahkan ada satu website yang diserang oleh backdoor malware karena menggunakan template bajakan. Ada juga yang tidak pernah melakukan pembaruan CMS dan plugin-nya sejak website mereka dibangun. Luar biasa!
Akan tetapi, serangan siber yang terjadi jumlahnya memang luar biasa. Forbes pernah melaporkan bahwa rata-rata setiap hari ada 30.000 website yang di-hack. McAfee memperkirakan bahwa setiap hari ada 300.000 malware baru yang dibuat oleh peretas.
Lalu, apa yang bisa dilakukan untuk menghidari serangan tersebut? Ada banyak yang bisa dan perlu dilakukan, tentu saja sebaiknya dari sejak awal perencanaan untuk membangun website. Keamanan website adalah praktek dari melindungi aplikasi web dari berbagai ancaman dan/atau serangan siber. Di bawah ini ada beberapa hal yang perlu anda ketahui untuk meningkatkan keamanan website anda
Pengelolaan Domain dan Hosting
Sebenarnya ini tidak terkait langsung dengan serangan siber, namun menurutku sangat penting untuk diperhatikan oleh anda. Tidak sedikit organisasi yang aku temui dan bantu tidak memiliki kendali atas domain dan hosting mereka. Rata-rata kendalinya dimiliki oleh pengembang karena didaftarkan atas nama mereka. Hal ini sangat berbahaya karena dari pengalamanku, ada satu organisasi yang bahkan harus mengubah nama domain mereka karena pihak pengembang tidak mau menyerahkan. Mengapa ini bisa terjadi? tentu saja banyak faktor, ketidakpahaman (atau ketidakacuhan) dari individu atau kelompok mengenai pengelolaan domain dan hosting. Oleh karena itu, selalu pastikan bahwa domain dan hosting dikelola langsung oleh anda atau organisasi.
Memilih Penyedia Layanan Domain dan Hosting
Salah satu hal yang sangat penting dilakukan untuk menjaga keamanan website yang akan dibangun atau sedang dikelola adalah memastikan bahwa penyedia layanan hosting memberikan garansi keamanan dari server mereka. Tentu saja, aku seperti mayoritas dari orang yang membaca tulisan ini mungkin menggunakan shared hosting karena jauh lebih terjangkau dan mudah dikelola. Sebaiknya coba lah melakukan survey dan review terhadap penyedia layanan atau mungkin bertanya rekomendasi dari praktisi keamanan digital atau mereka yang sudah punya pengalaman menggunakan berbagai layanan. Jika memiliki budget yang cukup besar dan pengetahuan yang cukup, tidak ada salahnya untuk menggunakan Virtual Private Server (VPS) atau penyedia layanan seperti google cloud dan amazon web service.
Setidaknya dari pengalamanku, cukup banyak website yang mengalami serangan karena lemahnya keamanan di server. Situasi ini dimungkinkan jika penyedia layanan tidak melakukan peningkatan keamanan di server mereka.
Memilih CMS yang cukup aman
Content Management System (CMS) adalah software yang digunakan untuk mengelola pembuatan dan modifikasi content digital. Saat ini, website banyak yang menggunakan CMS seperti Joomla, Wordpress, Drupal, Magento, Laravel dan lainnya. Tentu saja, masing-masing CMS memiliki kelebihan dan kekurangannya. Oleh karena itu, pastikan anda sudah mempelajari terlebih dahulu dari CMS yang akan digunakan. Pastikan dari tingkat keamanan, dukungan serta pembaruan dari CMS tersebut. Hindari menggunakan CMS yang sudah tidak dikelola dan didukung lagi oleh pengembangnya. Jangan lupa, pilih CMS yang mudah dikelola oleh anda sendiri jika memiliki keterbatasan sumber daya. Aku sendiri memilih menggunakan Wordpress karena CMS ini adalah salah satu yang paling mudah dikelola dan selalu ada pembaruan.
Wordpress adalah salah satu pilihan populer, saat ini 35% dari website di dunia menggunakannya. Tentu saja jumlah pengguna yang banyak menjadi target dari para hacker untuk mencari celah keamanan di CMS tersebut. Dalam sebuah laporan, 98% kerentanan terhadap CMS seperti Wordpress adalah plugin. Oleh karena itu, selalu pastikan bahwa plugin yang digunakan cukup aman dengan melihat review dari para penggunanya. Jangan lupa, pastikan bahwa plugin tersebut masih diperbarui secara berkala. Jika sudah tidak diperbarui, segera cari plugin serupa yang masih dikelola.
Selalu Perbarui CMS dan plugin
Salah satu kunci untuk memastikan keamanan website yang anda kelola adalah selalu melakukan pembaruan dari CMS dan plugin yang ada gunakan. Peretas akan selalu mencari dan memanfaatkan kerentanan serta celah keamanan di CMS apapun, terutama yang paling banyak digunakan. Beberapa CMS dan plugin yang masih dikelola akan segera melakukan pembaruan untuk menutup jika menemukan celah keamanan di dalam produk mereka. Meskipun ini terdengar sepele namun menjadi sangat penting karena mayoritas website yang aku bantu dan tangani mengalami peretasan dikarenakan CMS dan plugin tidak diperbarui.
Selain itu, hindari menggunakan themes atau plugin premium versi pak tani alias bajakan. Setidaknya, aku mengalami satu kali kendala yang diakibatkan oleh themes bajakan yang digunakan oleh pengembang website. Setelah diperiksa, themes tersebut telah disusupi backdoor malware yang mengakibatkan website mereka disusupi dan dijadikan phising site.
Perketat Manajemen Pengguna
Jika website organisasi anda dikelola oleh banyak pengguna, baik internal maupun external maka maka perketatlah manajemen pengguna. Pastikan bahwa setiap pengguna memiliki kewenangan yang sesuai dengan fungsinya. Misalnya seorang pengguna memiliki fungsi sebagai penulis, makan berikanlah peran (role) sesuai dengan kewenangannya. Beberapa kali menemukan organisasi yang semua penggunanya menjadi administrator padahal mayoritas dari mereka hanya bertugas untuk mengunggah tulisan. Akibatnya, sering terjadi kendala jika seorang pengguna dengan peran sebagai tanpa sengaja melakukan pembaruan diluar kapasitasnya.
Langkah ini sebaiknya sudah dilakukan sejak perencanaan pengembangan website. Aku sendiri merekomendasikan sebaiknya peran admin hanya dipegang maksimal dua orang. Sementara lainnya bisa diberikan seperti editor, penulis, kontributor dan seterusnya dengan kewenangan sesuai dengan fungsinya.
Perkuat Kata Sandi (Password)
Mengelola website sudah pasti akan berhadapan dengan persoalan pengelolaan banyaknya password. Akhirnya, seringkali pengelola website menggunakan satu password untuk semua kebutuhannya. Akibatnya, saat terjadi serangan yang menyasar pada password, maka sekali berhasil tembus akan berdampak ke semuanya. Saat ini, bahkan ada praktisi yang dapat membongkar 20% password pengguna dari sebuah perusahaan hanya dalam 1 detik.
Oleh karena itu, pengguna website sebaiknya diwajibkan untuk menggunakan password yang cukup kompleks. Aku pribadi menerapkan beberapa prinsip dasar seperti password harus lebih dari 15 karakter dengan campuran berbagai karakter. Susah mengingat password yang kompleks? Iya, pasti! Makanya aku selalu mendorong orang yang mengelola website untuk selalu menggunakan password manager.
Gunakan perangkat untuk memantau Website
Seiring dengan perkembangan teknologi, saat ini sudah tersedia banyak layanan gratis maupun berbayar untuk melakukan pengecekan dan sekaligus melakukan pemantauan keamanan terhadap website anda. Ada banyak layanan yang dapat digunakan melihat kecepatan hingga kerentanan sebuah website. Beberapa diantaranya gratis dan berbayar, sangat tergantung dari kebutuhan dan sumber daya yang dimiliki organisasi anda. Anda bisa menggunakan Pingdom Website Speed Test untuk mengecek kecepatan akses dari wesbite anda. Sementara untuk mengetahui kerentanan website, anda dapat menggunakan Sitecheck dari Sucuri.
Beberapa CMS juga sudah menyediakan Web Application Firewall (WAF) untuk menambah perlindungan dari serangan siber. Aku sendiri setidaknya sudah menggunakan 3 jenis WAF (semuanya yang gratis) untuk beberapa website. Mungkin di kemudian hari aku akan coba bahas satu persatu untuk memberikan perbandingan.
Pantau pesan kesalahan (error)
Ini kesalahan yang sering terjadi dari pengelola sebuah website. Seringkali pesan kesalahan muncul di dashboard atau dari sumber lainnya tidak diindahkan selama website masih bekerja dengan baik. Padahal pesan tersebut bisa saja memberikan informasi mengenai kerentanan atau masalah yang terjadi di sebuah website. Aku sangat menyarankan setiap pengelola website untuk segera mencari solusi jika muncul pesan kesalahan di website anda. Oh iya, jangan lupa untuk menggunakan fasilitas seperti analytics atau search console untuk mengetahui performa website anda. Secara berkala mereka memberikan laporan mengenai kesalahan yang mungkin saja terjadi pada website anda.
Backup Secara Berkala
Aku selalu percaya, langkah pencegahan adalah salah satu cara pertahanan yang baik dari serangan siber. Makanya, setiap membangun atau membereskan website, aku selalu berpesan kepada pengelola website untuk melakukan prosedur backup website secara berkala. Langkah ini menurut sangat membantu untuk mengurangi downtime serta kemungkinan hilangnya data dari sebuah website.
Namun pada kenyataannya, hampir semuanya tidak melakukan tindakan ini. Beberapa diantara bahkan pernah kehilangan arsip yang cukup banyak karena tidak memiliki backup. Jadi, sangat aku sarankan untuk membuat mekanisme backup secara berkala dengan jangka waktu yang disesuaikan. Jika website organisasi anda mengunggah informasi setiap hari, maka sebaiknya melakukan backup setiap minggu. Namun pada umumnya, aku menyarankan organisasi untuk melakukan backup setiap bulan. Oh iya, ada beberapa penyedia layanan hosting memberikan fasilitas backup harian; ada yang gratis dan berbayar. Jadi, bisa untuk pertimbangkan saat mencari penyedia layanan hosting.
Setidaknya ini adalah beberapa hal yang perlu anda perhatikan saat mengelola website anda. Mungkin saja situasi yang anda hadapi berbeda dengan yang aku tulis. Jika anda ingin mendiskusikan lebih jauh tentang persoalan ini, jangan sungkan untuk menghubungiku!