All Products
Search
Document Center

API Gateway:waf

Last Updated:Jul 02, 2025

Plugin waf adalah mesin perlindungan berbasis aturan yang didasarkan pada ModSecurity. Plugin ini dapat digunakan untuk memblokir permintaan mencurigakan sesuai dengan aturan yang telah dikonfigurasi. Plugin waf mendukung OWASP ModSecurity Core Rule Set (CRS) untuk menyediakan fitur perlindungan dasar bagi situs web. Topik ini menjelaskan cara mengonfigurasi plugin waf.

Catatan

Plugin waf didasarkan pada aturan ModSecurity open source. Aturan default merupakan aturan statis. Anda tidak dapat menggunakan aturan default untuk mengidentifikasi risiko keamanan terbaru atau memperbarui set aturan secara real-time. Untuk mendapatkan kemampuan perlindungan keamanan yang lebih kuat, aktifkan Web Application Firewall (WAF) untuk instance Cloud-native API Gateway. Untuk informasi lebih lanjut, lihat Aktifkan WAF.

Tipe Plugin

Plugin perlindungan keamanan.

Bidang

Bidang

Tipe data

Diperlukan

Nilai default

Deskripsi

useCRS

bool

Tidak

false

Menentukan apakah akan mengaktifkan OWASP CRS. Untuk informasi lebih lanjut, lihat coreruleset.

secRules

array of string

Tidak

-

Aturan perlindungan kustom yang dikonfigurasi untuk plugin waf. Untuk informasi lebih lanjut tentang sintaks, lihat Dokumentasi ModSecurity.

Contoh konfigurasi

Gunakan aturan default

Aktifkan aturan default untuk memblokir permintaan mencurigakan.

useCRS: true

Aktifkan aturan default untuk mendeteksi permintaan mencurigakan tanpa memblokirnya.

useCRS: true
secRules:
  - "SecRuleEngine DetectionOnly"

Gunakan aturan perlindungan kustom

useCRS: true
secRules: 
  - "SecRule REQUEST_URI \"@streq /admin\" \"id:101,phase:1,t:lowercase,deny\""
  - "SecRule REQUEST_BODY \"@rx maliciouspayload\" \"id:102,phase:2,t:lowercase,deny\""

Permintaan berikut diblokir berdasarkan konfigurasi aturan di atas.

curl http://example.com/admin
curl http://example.com -d "maliciouspayload"

Aktifkan aturan perlindungan untuk rute atau nama domain tertentu

useCRS: true
secRules: 
  - "SecRule REQUEST_URI \"@streq /admin\" \"id:101,phase:1,t:lowercase,deny\""
  - "SecRule REQUEST_BODY \"@rx maliciouspayload\" \"id:102,phase:2,t:lowercase,deny\""

Terapkan konfigurasi plugin berikut ke rute route-1:

secRules:
  - "SecAction \"id:102,phase:1,deny\""

Terapkan konfigurasi plugin berikut ke nama domain *.example.com dan test.com:

secRules:
  - "SecAction \"id:102,phase:1,pass\""
Catatan
  • Rute route-1 adalah rute yang ditentukan saat pembuatan rute Cloud-native API Gateway. Jika permintaan klien cocok dengan rute tersebut, aturan yang dikonfigurasikan untuk rute tersebut akan diterapkan.

  • Nama domain *.example.com dan test.com digunakan untuk mencocokkan nama domain dalam permintaan. Jika permintaan klien cocok dengan salah satu nama domain, aturan yang dikonfigurasikan untuk nama domain yang cocok akan diterapkan.

  • Aturan yang Anda konfigurasikan diterapkan secara berurutan. Jika aturan pertama cocok, aturan berikutnya akan diabaikan.