Siapa sih yang tidak kenal dengan salah satu CMS terpopuler di dunia dan dapat digunakan secara open source, yaitu WordPress. CMS ini seringkali digunakan karena mudah digunakan dan gratis. Selain itu, CMS ini juga membebaskan penggunanya dalam mengatur dan menggunakan plug-in serta tema yang dikembangkan oleh para pengguna sukarelawannya.
Karena gratis dan mudah digunakan, membuat CMS ini mempunyai banyak celah terutama dalam hal keamanan sistemnya. Berikut ini adalah beberapa kasus serangan serta beberapa langkah pencegahan yang dapat Anda lakukan dalam kerentanan sistem WordPress tersebut.
Table of Contents
Apa itu WordPress?
Sebelum mengetahui langkah-langkah apa saja yang bisa Anda lakukan untuk menanggulangi celah yang terdapat pada sistem WordPress, sebaiknya Anda mengetahui mengenai WordPress itu sendiri. WordPress merupakan salah satu CMS terpopuler dan terfavorit para web developer karena mudah digunakan dan open source. Perangkat lunak ini rata-rata dimanfaatkan oleh masyarakat seluruh dunia dengan rasio sebesar 28,8%, menurut W3 Techs.
Halaman web dibuat menggunakan bahasa HTML, akan tetapi saat Anda menggunakan CMS ini, Anda tidak perlu membuat semuanya dari awal. Apalagi jika Anda hanya membuat konten yang ingin ditampilkan tanpa menggunakan HTML, maka WordPress merupakan pilihan terbaik yang bisa Anda pilih.
Kasus serangan yang menargetkan WordPress
Karena software ini bersifat open source, membuat CMS ini rawan untuk disusupi. Berikut ini adalah beberapa kasus serangan yang pernah terjadi dan menargetkan WordPress sebagai tujuan utamanya, antara lain yaitu:
1. Serangan DDoS yang mengeksploitasi fungsi Pingback pada tahun 2014
WordPress mempunyai sistem manajemen konten Web yang berfungsi untuk menerima permintaan atau yang sering disebut dengan Pingback (pinback) dan efektif jika digunakan secara default, dimana awalnya dengan menggambarkan tautan URL referensi di blog. URL ini mempunyai fungsi untuk memberi tahu Anda mengenai pernyataan tersebut.
Fungsi ini terletak pada bagian dashboard WordPress, yaitu di bagian pengaturan -> diskusi -> “Cobalah untuk memberi tahu semua tautan yang termasuk dalam postingan ini” dan “Terima posting baru dari blog lain (Pinback – Trackback)”. Hal ini merupakan pengaturan penerimaan dari WordPress yang pada umumnya diaktifkan secara default.
Memanfaatkan fungsi tersebut, serangan tersebut dilakukan untuk menurunkan traffic dari situs target yang telah diterapkan dengan mengirimkan sejumlah besar permintaan Pingback. Cara ini sebenarnya bukan merupakan sebuah infeksi virus yang berbahaya namun hanya memanfaatkan celah yang terdapat pada fungsi WordPress yang ada.
2. Serangan yang disebabkan oleh pemrosesan REST API pada Januari 2017
Mulai dari WordPress 4.7.0 hingga 4.7.1 mempunyai kerentanan yang memungkinkan para penyerangnya untuk mengutak-atik pengiriman dengan cara mengirimkan permintaan yang dibuat secara khusus. Kondisi ini merupakan salah satu celah yang ditemukan pada Januari 2017 dan merupakan masalah serius dari WordPress.
Celah ini terdapat pada otoritas penulisan ulang konten, dimana pengguna yang tidak termasuk dalam otoritas yang mampu menulis konten, justru dapat menulis ulang konten dengan cara memasukkan string karakter tertentu saja.
Mengetahui hal tersebut, WordPress.org segera membuka patch koreksi dari celah yang ada dan memberikan peringatan kepada para penggunanya. Namun, hal tersebut sediki terlambat karena penyerang berhasil merusak banyak file pelanggannya, terbukti dengan ditemukannya 1,55 juta kasus ini.
Lalu saat ditemukan celah pada sistem WordPress, langkah apa yang perlu dilakukan?
Ketika celah sistem ditemukan, maka langkah yang bisa Anda lakukan antara lain yaitu,
1. Meningkatkan ke versi terbaru
Langkah pertama adalah dengan meningkatkan versi WordPress yang Anda miliki secara rutin dan mengupdatenya secara rutin. Selain itu, Anda juga dapat memerika pemberitahuan pada WordPress, untuk melakukan update terutama di bagian dashboard WordPress.
Namun, sebelum Anda melakukan update dan pembaharuan, pastikan Anda telah mencadangkan data konten sebelumnya. Untuk melakukan pencadangan data, WordPress telah menyediakan mekanisme cadangan, berupa “BackuWPup” dan UpdraftPlus”.
Selain itu, sangat penting bagi Anda untuk tetap menjaga konten berada di luar WordPress dengan menggunakan fungsi ekspor. Akan tetapi, dalam hal ini semuanya tergantung kepada situasi pemulihan, rekonfigurasi tautan yang dapat terjadi. Karena itu, Anda perlu mengetahui mekanisme seluruh cadangan pada WordPress jika ingin menangani banyak konten.
2. Jangan menggunakan tema atau plugin kecil
Tema dan plug-in kecil seringkali justru akan menghentikan pengembangan dari versi tersebut, belum lagi jika ditemukan celah, Anda tentunya akan kesulitan dalam mengatasinya atau malah tidak mampu mengatasinya sama sekali. Karena itu, sebaiknya Anda menggunakan tema dan plug-in yang telah mempunyai rekam jejak bagus dan sering mendapatkan pembaharuan.
3. Gunakanlah fitur komentar anti-spam dengan menggunakan plug-in “Akismet”
Salah satu gerbang masuknya serangan dunia maya adalah melalui serangan menggunakan komentar spam. Karena itulah, Anda memerlukan plug-in “Akismet” yang diinstal secara default. Plug-in dipilih karena sering mengalami pembaharuan.
4. Ubahlah ID Pengguna serta kata sandi administrator Anda dari default
Biasanya jika Anda menggunakan mode default, maka nama penggunanya sudah tentu adalah “admin”. Jika Anda tetap melakukan hal ini, maka bukan tidak mungkin Anda terkena serangan brute force yang menyerang melalui kata sandi. Karena itu, ubahlah ID pengguna administrator Anda.
Bukan hanya itu saja, sebaiknya Anda juga mengubah nama pengguna dan nama panggilan yang ada ke nama lain serta mengubah nama tampilan pada blog Anda menjadi nama panggilan. Hal ini dikarenakan nama pengguna akan ditampilkan pada artikel blog nampak seperti apa adanya.
5. Melakukan tindak pencegahan terhadap injeksi SQL dan skrip lintas situs
Untuk melakukan tindak pencegahan terhadap injeksi ke SQL dan skrip lintas situs, disarankan bagi Anda untuk menggunkana cloud bertipe WAF. Hal ini dikarenakan WAF terbukti efektif dalam menanggulangi serangan serta tidak memerlukan teknisi khusu dalam pengaplikasiannya. Keuntungan lainnya adalah WAF tidak hanya terbatas pada WordPress saja.
6. Jangan menampilkan daftar file dalam pengaturan server Web
Agar struktur direktori public tidak dapat dilihat menggunakan browser atau sejenisnya, sebaiknya Anda meninjau kembali pengaturan yang terdapat pada WordPress itu sendiri dan pastikan struktur direktori tersebut tidak dapat dilihar dari luar. Fitur yang bisa Anda gunakan adalah pada pengaturan mekanisme server Web yang terdapat di dalam WordPress.
7. Batasi akses menuju ke halaman login dashboard (wp-login.php)
Ada berbagai fitur di mana Anda dapat membatasi akses dengan cara melakukan edit “.htaccess” dengan merujuk pada server web. Namun, semuanya tetap bergantung pada penyewa server, dimana pembatasan akan ditetapkan secara otomatis oleh perusahaan yang memanajemen penyewaan server.
Karena itu, setelah celah ditemukan pada WordPress, sebaiknya Anda segera menanggapi tindakan tersebut dengan cara memeriksa apakah terdapat kesalahan operasi atau tidak, meskipun hal tersebut akan cukup sulit untuk dilakukan. Namun, untuk mengantisipasinya dapat dilakukan dengan cara mengamankannya terlebih dahulu.