Structure Checks ve Argument Checks ana anahtarları ne yapar; kapatırsam ne olur?
Kısa cevap
Structure Checks ve Argument Checks, sayfa tiplerindeki Check Fields denetimlerinin vService genelindeki iki ana anahtarıdır ve WAF açıldığında ikisi de açıktır. Structure checks uzunluk, sayı, boyut, derinlik, değer deseni ve geçersiz gövde denetimlerini (Path length, Query key count, Total query size, XML depth, Header value pattern, Block invalid JSON contents …) yönetir; Argument Checks izinli ve zorunlu ad listelerini (Allowed query parameters, Required headers, Allowed JSON keys …) yönetir ve kapalıyken trafik analizi bu listeler için öneri üretmez. Anahtar kapatılınca ilgili denetimler çalışmaz ve alanları kural formlarında gizlenir; kurallardaki değerler silinmez, anahtar açılınca aynı değerlerle döner. Allowed methods, Block all JSON/XML/form contents, mime tipi listeleri, Block unparsed contents, Block unexpected parser errors, OWASP imza taraması ve kara liste bu anahtarlardan etkilenmez. Anahtarlar Checks penceresinden değiştirilir ve Edit ile kaydedilir.
Anahtarların Yönettiği Denetimler
| Bölüm | Structure checks | Argument checks | İki anahtardan bağımsız |
|---|---|---|---|
| Path | Path length, Path depth | - | Allowed methods |
| Query | Query Key Length, Query Key Count, Total Query Size, Query Value Length, Query Value Count, Query Value Pattern | Allowed Query Parameters, Required Query Parameters | - |
| Header | Header Key Length, Header Key Count, Total Header Size, Header Value Length, Header Value Count, Header Value Pattern | Allowed headers, Required headers | - |
| JSON | JSON Key Length, JSON Key Count, JSON depth, JSON Value Length, JSON Value Pattern, Block Invalid JSON Contents | Allowed JSON Keys | Block All JSON Contents |
| Xml | XML key length, XML Key Count, XML depth, XML Value Length, XML Value Pattern, Block Invalid XML Contents | Allowed XML Keys | Block All XML Contents |
| Form | Form key length, Form Key Count, Form Value Length, Form Value Count, Form Value Pattern, Block Invalid Form Contents | Allowed Form Fields, Required Form Fields | Block All Form Contents, Allowed Upload Mime Types |
| Raw | Raw Body Size | - | Allowed Raw Body Mime Types, Block Unparsed Contents, Block Unexpected Parser Errors |
- Kapalıyken: Anahtarın yönettiği denetimler kurala yazılmaz ve çalışmaz; alanlar kural formunda ve sayfa tipinin detay panelinde görünmez. Değerler kayıtta kalır.
- Argument checks kapalıyken öğrenme: Trafik analizi izinli ve zorunlu ad listesi önermez; Max. Allowed Arguments alanı da pencerede gizlenir (Max. Allowed Arguments ne işe yarar; bir sayfanın öğrenilmiş argüman listesi bu sayıyı aşarsa ne olur?).
- Mod: Yapısal ve argüman denetimleri Monitor ve Blocking modlarında çalışır; Learning modunda çalışmaz (Learning modunda WAF ne yapar; saldırılar engellenir mi?).
- Kapsam: Ayar vService genelindedir ve bütün host gruplarında ortaktır.
TR7'de Anahtarları Değiştirme
Left Monitor Panel → WAF-Protected vServices → vService → WAF Management sekmesinde Inspection & Blocking bölümündeki Checks kartının sağ üstündeki kalem ikonuna tıklanır.
Structure Checks ya da Argument Checks anahtarı açılır veya kapatılır.
Edit tıklanır; değişiklik ayrı bir dağıtım adımı olmadan uygulanır. Cluster kurulumunda varsayılan auto-sync ile eş cihaza da gönderilir; Manual Sync Mode açıksa eş cihaza elle gönderilir.
- Sonuç: Checks kartı iki anahtar açıkken Structure checks and Argument checks are applied to requests, biri kapalıyken Only … is applied to requests yazar; kapalı anahtar … is off satırında (kapalı URL Decoding ile birlikte … are off satırında) listelenir.
- WEB-CLI:
waf options update poolId <vService> --syncWithDefaultFwRules false --structureChecks falseya da--argumentChecks false(temel denetimler); yeniden açmak için değertrueyazılır.
Ne Zaman Kapatılır?
Anahtarlar yalnızca imza taraması ve kara liste istenip sayfa bazlı pozitif model kullanılmayacaksa kapatılır. Öğrenme tamamlanmadan Blocking moduna geçilmesi gerekiyorsa anahtarı kapatmak yerine öğrenilmemiş sayfaların davranışı Rule Creation Policy ile belirlenir ve Monitor modunda doğrulanır (Learning modundan Monitor'a, Monitor'dan Blocking'e ne zaman geçmeliyim?).
Sık Karıştırılan Noktalar
- "Anahtarı kapatmak kuralları siler." Değerler kayıtta kalır; yalnızca uygulanmaz.
- "İki anahtar kapalıyken WAF korumaz." OWASP imza taraması, kara liste ve anahtarlardan bağımsız denetimler (Allowed methods, Block All … Contents, mime tipleri, Raw anahtarları) çalışmaya devam eder.
- "Argument checks kapalıyken öğrenilen listeler silinir." Mevcut listeler kalır; yalnızca uygulanmaz ve yeni liste önerisi üretilmez.
Dokümantasyonda nasıl yapılır
