Cara Mengaktifkan ModSecurity Web Application Firewall di dalam Server NGINX
ModSecurity adalah modul web application firewall (WAF) lintas platform dan open-source yang membantu mendeteksi serta mencegah berbagai serangan terhadap aplikasi web. Modul ini dapat memblokir serangan injeksi kode umum yang memastikan tingkat keamanan server yang lebih tinggi. Modul ini dilengkapi dengan serangkaian aturan untuk skrip situs lintas, injeksi SQL, agen pengguna yang buruk, pembajakan sesi, trojan, dan eksploitasi lainnya.
Stack NGINX bersertifikat Jelastic (server aplikasi dan load balancer) sudah disediakan dengan modul ModSecurity yang telah di-pre-built. Anda hanya perlu mengikuti beberapa langkah untuk mengaktifkan fungsi ini di container Anda:
1. Muat modul NGINX ModSecurity yang telah dibagikan dengan menghapus komentar pada baris berikut di file /etc/nginx/nginx.conf:
#load_module modules/ngx_http_modsecurity_module.so;
Simpan perubahan pada file.
2. Selanjutnya, aktifkan fungsi ModSecurity dengan menghapus komentar pada baris berikut di konfigurasi /etc/nginx/nginx.conf untuk stack server aplikasi NGINX (atau /etc/nginx/nginx-jelastic.conf untuk load balancer, seperti dalam kasus kami).
#modsecurity on;
#modsecurity_rules_file /etc/nginx/conf.d/modsecurity/modsec_includes.conf;
Tip: Anda dapat menggunakan kolom Search untuk menemukan string yang diperlukan dengan cepat.
Jangan lupa untuk Simpan file setelah melakukan penyesuaian.
3. Berdasarkan konfigurasi /etc/nginx/conf.d/modsecurity/modsec_includes.conf, OWASP ModSecurity Core Rule Set (CRS) sudah disertakan secara default (menyediakan perlindungan umum dari kerentanan yang sering ditemukan di aplikasi web).
Selain itu, jika diperlukan, Anda dapat mengunggah aturan khusus Anda sebagai file *.conf ke folder /etc/nginx/conf.d/modsecurity/owasp-modsecurity-crs/rules.
4. Restart node NGINX yang sesuai untuk menerapkan semua penyesuaian yang telah dilakukan.
Sekarang, aplikasi Anda dilindungi dengan ModSecurity.
5. Anda dapat memverifikasi bahwa modul ini telah dimuat dengan menjalankan perintah nginx -V di node (misalnya melalui Web SSH) dan mencari modul ModSecurity dalam daftar.
6. Keberfungsian ModSecurity dapat diuji dengan mensimulasikan serangan pada aplikasi Anda. Misalnya, coba tambahkan string /?q="> ke domain environment Anda. Jika modul berfungsi sebagaimana mestinya, halaman 403 error akan ditampilkan, dan tindakan yang sesuai akan dilog di file log kesalahan:
Seperti yang Anda lihat, ModSecurity telah aktif dan bekerja untuk menjaga keamanan aplikasi web Anda.