Rule Creating Mode seçenekleri (Comprehensive, Data Based, Page Independent) arasındaki fark nedir; hangisini seçmeliyim?
Kısa cevap
Rule Creating Mode, Analysis & Learning'in hangi isteklere ayrı sayfa tipi açacağını belirler. Comprehensive (Each page is learned) her adres için sayfa tipi üretir; Create New Rules ile birlikte Any Paths'in izinli metot listesi boşaltılır, yani öğrenilmemiş her erişim engellenir. Data based (Pages with dynamic data are learned), ilk açılıştaki seçim, yalnızca query, gövde ya da GET, HEAD ve OPTIONS dışında bir metot taşıyan isteklere sayfa tipi üretir; Create New Rules ile Any paths'te GET, HEAD ve OPTIONS açık kalır, JSON, XML ve form gövdeleri ile query verisi kapatılır: verisiz gezinti serbest, veri taşıyan öğrenilmemiş istek engellenir. Page independent (Pages are not learned) uygulamada hiç sayfa tipi yazmaz; bütün öğrenme Any paths kuralına yazılır, metot listesi ve gövde kısıtları trafikten genişletilir. Combine with Old Rules seçiliyse Any paths kısıtlanmaz. Analizde seçilen mod, uygulama başarılı olunca Learning Methods kartındaki Rule Creation Policy ayarına da yazılır. Çoğu web uygulaması için Data based uygundur.
Karşılaştırma
| Comprehensive | Data based | Page independent | |
|---|---|---|---|
| Sayfa tipi üretilen istekler | Bütün istekler | Query, gövde ya da GET/HEAD/OPTIONS dışı metot taşıyanlar | Hiçbiri; her şey Any paths'e yazılır |
| Create New Rules ile Any paths | İzinli metot yok; JSON/XML/form gövdesi ve query kapalı | GET, HEAD, OPTIONS açık; JSON/XML/form gövdesi ve query kapalı | GET, HEAD, OPTIONS ile başlar; JSON/XML/form kapalı başlar, trafikte görülen metot ve gövde türleri açılır |
| Combine with Old Rules ile Any paths | Kısıtlanmaz | Kısıtlanmaz | Kısıtlanmaz |
| Öğrenilmemiş istek | Engellenir | Veri taşıyorsa engellenir | Any paths kuralına göre denetlenir |
| Uygun olduğu durum | Uç noktaları sabit ve iyi bilinen uygulamalar, API'ler | Çoğu web uygulaması | Yapısı sürekli değişen siteler |
- Uygulamadan önce analiz sonucunda çıkan path'ler Analyze Page Types ekranında kontrol edilir; listede yalnız WAF kuralı oluşturulacak path'ler kalmalıdır ve bilinmeyen ya da şüpheli path'lerin Exclude from Analysis ile analizden çıkarılması önerilir.
- Data based'de query ve gövde taşımayan GET, HEAD ve OPTIONS istekleri sayfa tipi üretmez; analiz özetinde Static Requests olarak sayılır.
- Page independent'ta analiz ağacı yine sayfa sayısı gösterir; uygulamada sayfa tipi yazılmaz.
- Any paths kısıtlaması yalnızca Create New Rules seçiliyken yeniden kurulur (Analizde "Create New Rules" ile "Combine with Old Rules" arasındaki fark nedir?).
- Mod penceresinde ilk açılışta Data based seçilidir; sonraki açılışlarda o vService için son kullanılan mod gelir.
- Kalıcı politikayla ilişkisi: Rule Creation Policy'yi değiştirmek mevcut kuralları değiştirir mi?
Sık Karıştırılan Noktalar
- "Comprehensive daha güvenli olduğu için her zaman seçilmeli." Öğrenilmemiş her erişimi engeller; sık değişen sitelerde false positive üretir.
- "Analizdeki mod yalnızca o analizi etkiler." Uygulama başarılı olunca Rule Creation Policy de bu moda eşitlenir.
- "Page independent'ta hiçbir kısıt öğrenilmez." İzinli metotlar ve gövde türleri Any paths kuralında öğrenilir; query kısıtlanmaz.
Dokümantasyonda nasıl yapılır
