Lindungi Situs WordPress Anda Dengan Firewall Situs Web

Diterbitkan: 2020-08-25
Protect Your WordPress Site With a Website Firewall

Popularitas besar WordPress telah menjadikannya target besar bagi penjahat dan peretas yang mencoba mengeksploitasi situs WordPress Anda untuk menghasilkan uang dengan cepat. Bahkan bisa jadi hanya script kiddies yang ingin mencetak beberapa kredibilitas internet dengan rekan-rekan mereka dengan merusak situs Anda untuk iseng. Tidak peduli bagaimana hal itu terjadi, segala bentuk kompromi situs akan menyebabkan hilangnya kepercayaan yang serius dengan klien Anda dan dapat dengan mudah mengeja akhir dari merek Anda.

Oleh karena itu, melindungi situs web Anda, klien Anda, dan merek Anda adalah prioritas utama setiap kali Anda menerapkan instance WordPress. Sayangnya, peretas telah mengembangkan alat dan teknik canggih untuk mengeksploitasi WordPress dan menghancurkan apa yang telah Anda buat. Satu-satunya cara untuk tetap terdepan adalah memahami bagaimana situs WordPress Anda dapat ditargetkan dan bagaimana menjaga dari ancaman tersebut.

Pada artikel ini, kita akan melihat semua cara peretas dapat memanfaatkan cara situs WordPress Anda berkomunikasi dengan internet dan pertahanan yang dapat Anda bangun untuk menghentikan mereka sebelum mereka melakukan kerusakan.

Memfilter Bit dan Bytes – Firewall Jaringan

Mengirim data melalui internet adalah proses yang sangat rumit. Ada banyak "lapisan" dari lapisan perangkat keras di bagian bawah yang mendefinisikan infrastruktur fisik ke beberapa lapisan perangkat lunak di atas, yang masing-masing tergantung pada yang di bawah. Lapisan yang menarik bagi kami di bagian ini adalah lapisan host-to-host. Dalam lapisan ini data, seperti gambar yang Anda kirim ke teman, dibagi menjadi potongan-potongan kecil yang disebut paket. Ini dirutekan di internet dari Anda (sumber) ke teman Anda (tujuan) di mana mereka dirakit kembali menjadi gambar asli yang Anda kirim.

Semua paket data ini memiliki beberapa karakteristik yang meliputi:

  • Protokol – Misalnya, TCP, UDP, ICMP, dan lainnya
  • Port – Misalnya, Web 80/443, Email 110/25
  • Alamat IP – IP sumber dan tujuan komputer yang mengirim dan menerima paket

Firewall jaringan berada di antara antarmuka jaringan dan sistem operasi dan memeriksa setiap paket saat tiba di server. Ini akan mengizinkan atau menolak paket untuk melanjutkan ke sistem operasi berdasarkan seperangkat aturan izinkan dan blok. Paket akan dibuang jika melanggar salah satu aturan firewall.

Firewall jaringan adalah bagian tak terpisahkan dari server dan instalasi WordPress karena memblokir komunikasi tidak sah dengan proses yang secara tidak sengaja atau sengaja mendengarkan lalu lintas berbahaya. Satu-satunya lalu lintas yang diizinkan melalui sistem operasi dan lebih dari itu ke WordPress harus sesuai dengan aturan ketat yang diterapkan firewall.

Firewall jaringan yang dikonfigurasi dengan benar adalah bagian standar dari setiap server yang terhubung ke internet. Sayangnya, ini tidak berarti bahwa mereka mudah dipasang dan dikelola. Faktanya, jika Anda hanya memiliki akses ke instance WordPress Anda, maka mengelola firewall tidak mungkin dilakukan dengan benar karena firewall yang efektif tidak akan dapat diakses dari dalam WordPress.

Memfilter Permintaan Web – Firewall Aplikasi Web

Peretas telah memperluas persenjataan mereka dengan metode serangan jaringan yang canggih di mana mereka membuat permintaan web berbahaya untuk menyerang situs WordPress Anda. Permintaan web ini tidak akan melanggar aturan firewall jaringan apa pun sehingga mereka akan diizinkan untuk berinteraksi dengan situs WordPress Anda di mana mereka dapat menyebabkan kerusakan serius.

Untuk memahami cara kerja permintaan web berbahaya, pertama-tama pertimbangkan bagaimana permintaan web telah berkembang dalam kompleksitas selama bertahun-tahun. Sebelum teknologi web aktif seperti PHP, permintaan web sangat sederhana dan tampak seperti berikut:

 http://www.example.com/index.php

Permintaan ini dibagi menjadi beberapa bagian sebagai berikut:

  • http:// – Permintaan menggunakan protokol HTTP.
  • www.example.com – Nama host yang ditetapkan ke alamat IP server web.
  • index.php – File yang diminta.

Seperti yang Anda lihat, permintaan ini sangat mudah. Saat Anda ingin mengamankan situs web, Anda cukup membuat daftar blokir file yang bersifat pribadi sehingga server web akan menolak untuk menayangkannya. Tidak ada banyak hal lain untuk itu.

Seiring dengan semakin rumitnya teknologi situs web, peluang untuk memanfaatkan kompleksitas ini juga meningkat.

Salah satu contoh permintaan jahat semacam itu dikenal sebagai serangan SQL Injection. Jenis serangan ini mencoba membaca informasi sensitif dari atau memodifikasi database WordPress. Ini dilakukan dengan membuat permintaan web yang akan dijalankan oleh skrip PHP, dan, jika skrip belum ditulis untuk memeriksa inputnya, akan memungkinkan penyerang untuk membaca atau menulis ke database WordPress.

Mari kita lihat permintaan web serangan injeksi SQL sederhana. Misalnya, bayangkan Anda memiliki formulir login yang dikirim ke browser klien. Ketika mereka mengisi formulir, ia mengirimkan permintaan web kembali ke server yang berisi nama pengguna akun yang mereka masukkan. Dalam permintaan contoh ini, ID nama pengguna adalah JohnSmith yang memberi kami permintaan web yang terlihat seperti ini:

 http://www.example.com/accountView?id=JohnSmith

Jika skrip PHP di server mengambil input ini dan tidak memeriksa validitasnya, ini dapat menyebabkan masalah serius. Misalnya, peretas dapat mencoba mengirim URL salah format berikut yang tidak memiliki ID sama sekali, misalnya:

 http://www.example.com/app/accountView? memiliki arti khusus dalam SQL, bahasa database. Ini dapat menyebabkan skrip yang ditulis dengan buruk mengirim kembali daftar lengkap basis data pelanggan, mungkin termasuk kata sandi dan informasi sensitif lainnya. Ini jelas bencana.

Jadi bagaimana Anda melindungi diri Anda dari bentuk-bentuk serangan ini?

Di sinilah Web Application Firewall (WAF) masuk. WAF ditempatkan di antara internet dan WordPress dan memeriksa setiap permintaan web saat tiba di server. Jika menemukan permintaan yang salah format, seperti yang di atas, atau melanggar daftar aturannya, permintaan itu akan diblokir agar tidak masuk ke WordPress Anda. WAF secara efektif mengalahkan seluruh kelas kesalahan pemrograman umum yang dapat dengan mudah membahayakan situs WordPress yang seharusnya memerlukan pemeriksaan setiap file PHP di situs Anda.

Jelas, itu hanya satu contoh permintaan jahat dari berbagai kemungkinan yang besar dan berkembang pesat. Hal ini membuat WAF yang benar-benar efektif menjadi tantangan berkelanjutan untuk menambahkan aturan yang sejalan dengan para peretas. Sama seperti firewall jaringan, WAF adalah proposisi yang secara teknis menantang untuk disiapkan dan yang lebih penting dipelihara.

Menghentikan Bot – Perlindungan Bruteforce dan reCAPTCHA

Lapisan terakhir dari pertahanan jaringan yang efektif adalah menghentikan serangan otomatis terhadap halaman login panel admin WordPress Anda. Serangan ini dilancarkan oleh program yang biasa disebut “bots” yang diambil dari kata robot. Bot digunakan oleh peretas karena mereka bekerja tanpa lelah dan dalam jumlah besar untuk meluncurkan serangan terkoordinasi.

Metode serangan yang paling umum adalah menargetkan halaman login dengan serangan brute force. Ini mencoba menebak nama pengguna dan kata sandi sehingga mereka dapat masuk ke situs WordPress Anda.

Serangan bruteforce bekerja dengan mencoba banyak kombinasi nama pengguna dan kata sandi yang berbeda. Biasanya, ini akan menjadi kombinasi nama pengguna paling populer seperti admin atau root bersama dengan kata sandi paling umum seperti "123456". Serangan bruteforce akan dimulai dengan mengirimkan kombinasi nama pengguna dan kata sandi berikut:

  • admin : 123456
  • admin : passw0rd
  • admin : letmein
  • admin : qwerty
  • akar : 123456
  • root : passw0rd
  • akar : letmein
  • akar : qwerty

Dan lanjutkan dari sana mencoba kombinasi yang semakin jarang.

Bot akan mencoba beberapa ratus hingga ribuan dan tergantung pada cara konfigurasinya. Perlindungan bruteforce akan melihat semua login yang gagal dan kemudian memblokir permintaan lebih lanjut yang datang dari alamat IP yang mengirimkan permintaan login palsu. Ini adalah perlindungan penting dari pengguna WordPress akan sering memilih kata sandi yang lebih lemah ketika mereka diizinkan untuk memilih kata sandi mereka sendiri.

Serangan bruteforce bukan satu-satunya penggunaan bot. Mereka juga digunakan untuk menyelidiki kelemahan situs Anda, file sensitif yang terbuka, atau plugin dan tema yang dapat dikompromikan.

Bot ini dapat dihentikan jejaknya oleh alat penyalahgunaan iklan anti-penipuan standar industri Google yang disebut reCAPTCHA. reCAPTCHA secara otomatis menyortir manusia dari bot jahat yang memungkinkan manusia mengunjungi situs Anda dan menolak bot. Ini biasanya terjadi tanpa terlihat dan mulus bagi pengguna manusia sementara bot tidak mungkin berhasil masuk ke situs web Anda di mana ia akan mencoba yang terbaik untuk menerobos masuk.

Tapi Bagaimana Saya Semua Ini?

Jika Anda tidak memiliki waktu, pengetahuan teknis ahli, atau anggaran untuk mengkonfigurasi dan memelihara firewall jaringan, WAF, detektor bruteforce, dan reCAPTCHA, maka Anda harus menyerahkannya kepada para ahli seperti Rocket. Rocket adalah penyedia hosting terkelola yang mendapatkan keamanan WordPress. Termasuk semua alat keamanan penting ini sebagai standar pada setiap instalasi WordPress.

Yang perlu Anda lakukan adalah mendaftar, meluncurkan situs WordPress dan beberapa detik kemudian mulai membuat.

Atau checkout Cara Mengatur Otentikasi Tanpa Kata Sandi di WordPress