All Products
Search
Document Center

Web Application Firewall:Kondisi pencocokan

Last Updated:Jul 04, 2026

Saat mengonfigurasi aturan daftar putih, aturan kustom, atau aturan Manajemen bot, Anda harus menentukan kondisi pencocokan dalam aturan tersebut untuk mengidentifikasi karakteristik permintaan yang akan dicocokkan. Topik ini menjelaskan bidang-bidang yang didukung oleh kondisi pencocokan aturan beserta penjelasannya.

Apa itu kondisi pencocokan

Kondisi pencocokan merujuk pada karakteristik permintaan yang diperiksa oleh Web Application Firewall (WAF). Saat mengonfigurasi aturan daftar putih, Aturan Kustom, atau Manajemen bot, Anda menentukan Match Condition untuk mengidentifikasi karakteristik permintaan yang akan diperiksa. Jika suatu permintaan memenuhi kondisi pencocokan yang dikonfigurasi dalam aturan tersebut, permintaan tersebut terkena aturan tersebut. WAF kemudian menerapkan aksi yang telah ditentukan dalam aturan—seperti mengizinkan, memblokir, atau memverifikasi permintaan—sesuai kebutuhan.Match conditions

Match Condition terdiri dari Match Field, Logical Operator, dan Match Content. Tabel berikut menunjukkan contoh konfigurasinya:

Match Field

Logical Operator

Match Content

Description

URI Path

Contains

/login.php

Permintaan cocok dengan aturan ini jika path permintaan berisi /login.php.

IP

Belongs to

192.1.XX.XX

Permintaan cocok dengan aturan ini jika IP client adalah 192.1.XX.XX.

Bidang pencocokan yang didukung

Tabel berikut mencantumkan bidang-bidang yang didukung oleh kondisi pencocokan beserta aturan terkaitnya.

  1. Definisi aturan advanced dan penagihan

    • Definisi: Suatu aturan dikategorikan sebagai aturan advanced jika memenuhi salah satu kondisi berikut:

      • Bidang pencocokan adalah Body atau Body Parameter.

      • Operator logika adalah Regular Expression Match atau Regular Expression Mismatch.

    • WAF pay-as-you-go: Aturan advanced dan aturan dasar memiliki standar penagihan yang berbeda. Untuk informasi harga spesifik, lihat Detail penagihan.

    • WAF berlangganan: Hanya Edisi Enterprise atau yang lebih tinggi yang mendukung aturan advanced. Untuk perbedaan fitur antar edisi, lihat Edisi.

  2. Mekanisme pencocokan

    • Sensitivitas huruf besar/kecil: Kecuali dinyatakan lain, konten pencocokan untuk semua bidang pencocokan tidak membedakan huruf besar dan kecil.

    • Penanganan encoding: Untuk konten permintaan yang menggunakan encoding umum seperti URL encoding, HTML encoding, atau Unicode encoding, sistem secara otomatis mendekode konten tersebut sebelum melakukan pencocokan.

Match field

Description

Supported logical operators

URI

Uniform Resource Identifier (URI) dari suatu permintaan, yang menunjukkan path sumber daya yang diminta. Secara umum, URI = URI Path + Query String.

Konten pencocokan yang sesuai diawali dengan / dan tidak mengandung nama domain. Contohnya, /login.php.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Panjang sama dengan, Panjang lebih besar dari, Panjang lebih kecil dari

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

IP

Alamat IP sumber dari permintaan, yaitu alamat IP klien yang menginisiasi permintaan.

Konten pencocokan harus memenuhi persyaratan berikut:

  • Alamat IPv4 (misalnya, 1.XX.XX.1) dan alamat IPv6 (misalnya, 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff) didukung.

  • Rentang alamat IP (misalnya, 1.XX.XX.1/16) didukung.

  • Tekan Enter setelah memasukkan setiap alamat IP untuk mengonfirmasi.

  • Mendukung hingga 100 alamat IP.

Belongs To, Does Not Belong To

Catatan

Satu aturan proteksi mendukung maksimal 100 alamat IP atau rentang alamat IP. Misalnya, jika suatu aturan proteksi berisi dua kondisi pencocokan dengan IP sebagai bidang pencocokan, jumlah total alamat IP atau rentang alamat IP dalam kedua kondisi pencocokan tersebut tidak boleh melebihi 100. Pisahkan beberapa alamat IP atau rentang alamat IP dengan koma (,).

Referer

URL sumber permintaan, yaitu halaman tempat permintaan dialihkan.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

User-Agent

Informasi browser dari klien yang menginisiasi permintaan, termasuk identifier browser, identifier mesin rendering, dan informasi versi.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Query String

String kueri dalam permintaan, khususnya bagian setelah tanda tanya (?) dalam URL.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Cookie

Informasi cookie dalam permintaan.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Length equals, Length is greater than, Length is less than

  • Regular Expression Match, Regular Expression Mismatch

Content-Type

Tipe konten HTTP yang ditentukan dalam permintaan, yaitu informasi tipe Multipurpose Internet Mail Extensions (MIME).

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Length equals, Length is greater than, Length is less than

  • Regular Expression Match, Regular Expression Mismatch

Content-Length

Jumlah byte yang terdapat dalam konten permintaan. Nilai yang valid: 0 hingga 2147483648.

  • Equals, Is greater than, Is less than

X-Forwarded-For

Alamat IP aktual klien dalam permintaan. Bidang header X-Forwarded-For (XFF) digunakan untuk mengidentifikasi alamat IP asli klien untuk permintaan yang diteruskan melalui proxy HTTP atau load balancer. Bidang ini hanya ada dalam permintaan yang diteruskan oleh proxy HTTP atau load balancer.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does Not Contain

  • Does Not Exist

  • Length equals, Length is greater than, Length is less than

Body

Informasi konten permintaan.

  • Equals

  • Contains

  • Does Not Exist

  • Starts with, Ends with

  • Regular Expression Match

Http-Method

Metode permintaan, termasuk GET, POST, DELETE, PUT, OPTIONS, CONNECT, HEAD, TRACE, dan PATCH.

  • Equals, Does not equal, Equals one of, Does not equal any of

Header

Informasi header permintaan. Bidang header kustom didukung.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Length equals, Length is greater than, Length is less than

  • Regular Expression Match, Regular Expression Mismatch

URI Path

Path URI permintaan.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Query String Parameter

Nama parameter dari parameter permintaan. Parameter permintaan mengacu pada bagian setelah tanda tanya (?) dalam URL permintaan. Misalnya, dalam www.aliyundoc.com/request_path?param1=a&param2=b, baik param1 maupun param2 merupakan parameter permintaan.

Catatan

Parameter kustom Query String Parameter bersifat case-sensitive.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

Server-Port

Port server.

  • Equals, Does not equal, Equals one of, Does not equal any of

File Extension

Ekstensi file dari file yang diminta, misalnya .png dan .php.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Filename

Nama file di akhir path permintaan. Misalnya, dalam /abc/index.php, index.php menunjukkan nama file tersebut.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Host

Nama domain yang diminta.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match, Regular Expression Mismatch

Cookie Name

Nama kunci cookie. Misalnya, dalam cookie acw_tc:111, acw_tc adalah nama kunci cookie tersebut.

Catatan

Cookie-Exact kustom dari Cookie Name bersifat case-sensitive.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match

Body Parameter

  • Aturan dasar

    • Bidang ini digunakan untuk menentukan nama parameter dalam badan permintaan. Pencocokan bersifat case-sensitive.

    • Panjang konten pencocokan harus lebih dari 4 karakter. Jika tidak, sistem tidak dapat mendeteksi traffic yang sesuai.

  • Spesifikasi format

    • Parameter reguler: Masukkan langsung nama kunci parameter. Misalnya, jika badan permintaan adalah a=1&b=2, masukkan a atau b.

    • JSON bersarang: Gunakan format hierarkis yang dipisahkan titik ParentKey.ChildKey. Misalnya, jika Anda perlu mencocokkan nilai dalam {"userInfo": {"userId": "12345"}}, masukkan userInfo.userId.

  • Equals, Does not equal, Equals one of, Does not equal any of

  • Contains, Does not contain, Contains one of, Does not contain any of

  • Exists, Does not exist

  • Is empty

  • Length equals, Length is greater than, Length is less than

  • Starts with, Ends with

  • Regular Expression Match

Client-ID

Identifier klien (seperti browser atau aplikasi), yang mengidentifikasi klien asal permintaan HTTP berdasarkan karakteristik seperti informasi User Agent dan sidik jari traffic.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Contains, Does Not Contain

  • Equals, Does Not Equal

  • Equals One of Multiple Values

JA3 Fingerprint

Sebuah string yang dihasilkan dengan melakukan penghashan MD5 pada parameter kunci selama proses jabat tangan TLS, termasuk versi TLS, paket sandi, algoritma kompresi, dan ekstensi TLS. String ini merepresentasikan konfigurasi TLS klien dan disebut sebagai sidik jari JA3.

Sidik jari JA3 dapat digunakan untuk mengidentifikasi dan membedakan berbagai jenis klien TLS, seperti browser web, aplikasi seluler, dan malware.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Equals, Does Not Equal

  • Equals One of Multiple Values

JA4 Fingerprint

Sidik jari JA4 memperkenalkan informasi kontekstual dan algoritma tambahan, seperti versi browser dan sistem operasi, untuk mengurangi potensi duplikasi yang disebabkan oleh sidik jari JA3.

Sidik jari JA4 dapat mengidentifikasi pengguna asli versus penipu dengan lebih akurat, sehingga mengurangi tingkat positif palsu.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Equals, Does Not Equal

  • Equals One of Multiple Values

HTTP/2 Fingerprint

Sidik jari HTTP 2.0 yang dihasilkan dengan memproses sidik jari asli klien HTTP/2 menggunakan algoritma MD5. Sidik jari ini digunakan untuk menganalisis dan mengidentifikasi klien yang berbeda guna mencapai komunikasi yang lebih aman dan efisien.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Equals, Does Not Equal

  • Equals One of Multiple Values

IDC

Mengidentifikasi sumber traffic berdasarkan data atribusi IP sumber. Server cloud memiliki biaya lebih rendah dan mudah dieksploitasi oleh pihak jahat untuk serangan.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

Equals One of Multiple Values, Does Not Equal Any Value

Web SDK

Mengidentifikasi traffic abnormal berdasarkan informasi probe yang dikumpulkan oleh Web SDK, seperti UMID web dan jumlah tekanan keyboard/mouse/layar sentuh.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Equals

  • Value Greater Than, Value Less Than

App SDK

Memungkinkan kontrol detail halus berdasarkan informasi probe yang dikumpulkan oleh App SDK.

Catatan

Hanya didukung oleh modul Bot Management > Advanced Custom Rules.

  • Contains, Does Not Contain

  • Equals, Does Not Equal

  • Length Less Than, Length Equal To, Length Greater Than

  • Equals One of Multiple Values, Does Not Equal Any Value

  • Contains One of Multiple Values, Does Not Contain Any Value

  • Regular Expression Match, Regular Expression Mismatch

  • Prefix Match, Suffix Match

  • Exists, Does Not Exist

  • Content Is Empty