Brute force adalah hal yang mungkin menyebalkan dan sering anda temui jika anda seorang blogger atau admin website. sesuai judul kami akan membahas bagaimana Cara Proteksi Brute Force Pada WordPress.
Apakah brute force itu?
Brute Force Attack adalah metode untuk meretas password (password cracking) dengan cara mencoba semua kemungkinan kombinasi yang ada pada “wordlist” atau list database password secara acak. Metode ini dijamin akan berhasil menemukan password yang ingin diretas. Namun, proses untuk meretas password dengan menggunakan metode ini akan memakan banyak waktu
ada 2 cara untuk meminimalisir serangan brute force, yaitu
1. Menggunakan plugins, atau
2. Menggunakan bash script yang terintergrasi dengan firewall seperti iptables ataupun csf
Menggunakan Plugins
beberapa rekomendasi plugin yang bisa anda gunakan untuk firewall wordpress anda, seperti
Sucuri Firewall
Sucuri mungkin nama yang paling terpercaya dalam keamanan WordPress. layanan firewall mereka menciptakan proxy yang pada dasarnya membuat jaringan Sucuri sebagai perantara antara website Anda dan web lainnya. Mereka mengurus semua serangan berbahaya dan trafik mencurigakan, dan hanya mengirim trafik yang sebenarnya ke situs Anda.
Price: from $9.99/month
All In One WP Security & Firewall
adalah plugin yang berkembang dalam beberapa tahun terakhir menjadi salah satu dari segelintir plugin yang mendominasi Keamanan WordPress. Mereka menawarkan berbagai fitur lengkap yang dirancang untuk membantu meningkatkan keamanan WordPress Anda sebaik mungkin; satu utama adalah fitur firewall mereka yang baik
Price: FREE
dan beberapa plugin lainnya yang tidak bisa kami sebutkan satu persatu.
Menggunakan Bash Script
cara lainnya adalah menggunakan bash script
yang mendeteksi akses ke file wp-login.php
secara tidak wajar lalu IP address pengakses kita input ke firewall seperti IPtables ataupun CSF secara otomatis dengan tujuan ip tersebut terblokir. scriptnya adalah sebagai berikut
buat dulu direktori dan file dengan nama wplogin.sh
mkdir wpbrute cd wpbrute vi wpbrute.sh
lalu isi file wpbrute.sh
dengan script dibawah ini
Cara Proteksi Brute Force Pada WordPress
#!/bin/bash ###start editing thold="100" btime="359m" ###stop editing egrep 'wp-login.php' /usr/local/apache/domlogs/* | grep -v ftp_log | awk -F : '{print $2}' | awk '{print $1}' | sort | uniq -c | sort -n | awk -v limit="$thold" '$1 > limit{print $2}' > $$_ip_$$ while IFS= read -r line do /usr/sbin/csf -td "$line" "$btime" "banned for wordpress attack" done < $$_ip_$$ rm -f $$_ip_$$
buat permission file agar executable
chmod +x wpbrute.sh
buat cronjob agar script wpbrute.sh
dapat berjalan otomatis
0 */6 * * * /path_to_script/wplogin/wpbrute.sh
Catatan:
- Anda dapat mengubah ambang batas untuk seberapa kali sebuah ip/pengunjung dapat mengakses script wp-login.php
sebelum itu akan diblokir dengan mengubah nilai Thold (default adalah 100) pada awal dari script. pastikan Anda me-whitelist ip user aktif anda pada firewall
- Anda dapat mengubah batas waktu (temporary banned) sebuah ip address yang dilarang, dengan cara mengubah nilai waktu pada bagian atas script (default adalah 6 jam).
Untuk per detik, hanya anda perlu mengganti format menjadi, contoh: btime=”3600″ untuk 3600detik |
Untuk per menit, hanya anda perlu menambah format m format menjadi, contoh: btime=”6m” untuk 6 menit. |
Untuk per jam, hanya anda perlu mengganti format h menjadi, contoh: btime=”6h” untuk 6 jam. |
Untuk per hari, hanya anda perlu mengganti format d menjadi, contoh:btime=”6d” untuk 6 hari. |
Selamat mencoba artikel Cara Proteksi Brute Force Pada WordPress 🙂