Max. Body Size to Process(kB) sınırını aşan veya zamanında tamamlanmayan istek gövdeleri ne olur?
Kısa cevap
Gövde işlenebilir boyutu aşıyorsa ya da WAF çalıştığı anda tamamı gelmemişse gövde çözümlenmez; JSON, XML, form ve ham gövde denetimleri ve gövdedeki imza taraması yapılmaz, karar sayfa tipinin Raw sekmesindeki Block Unparsed Contents ayarına kalır. Block unparsed body seçiliyse 24 puanlık Block unparsed contents ihlali oluşur ve istek Blocking modunda engellenir, Monitor modunda kaydedilir; Allow Unparsed Body seçiliyse gövde denetlenmeden Kurum Servisine iletilir. Any paths kuralında Allow Unparsed Body seçili gelir. İşlenebilir boyut, Request Body Limits kartındaki Max. Body Size to Process(kB) değeri (WAF açıldığında 4096) ile vService limit profilindeki Buffer Size(kB) değerinin büyüğüdür; gövdenin bir kısmı taranmaz, gövde ya tümüyle çözümlenir ya hiç. Çözümlenmeyen gövdenin içeriği Event Logs kaydına ve öğrenme verisine eklenmez.
Akış
| Adım | Ne olur |
|---|---|
| 1. Gövde beklenir | Wait for body for a time kapalıyken (varsayılan) gövdenin tamamı beklenir; açıkken en fazla Time to Wait Body süresi kadar beklenir ("Wait for body for a time" ne işe yarar?) |
| 2. Raw Body Size | Gövde boyutu, Structure Checks açıksa Raw sekmesindeki Raw body size sınırıyla karşılaştırılır; aşan istek ihlal alır |
| 3. Çözümlenebilirlik | Gövde işlenebilir boyutu aşıyorsa ya da beklenen sürede tamamlanmadıysa çözümlenmez |
| 4. Karar | Raw → Block Unparsed Contents: Block unparsed body ise Block unparsed contents ihlali (24 puan), Allow unparsed body ise denetimsiz geçiş (Block Unparsed Contents ile Block Unexpected Parser Errors arasındaki fark nedir?) |
| 5. Kayıt | Event Logs kaydı ve öğrenme kaydı gövde içeriği olmadan yazılır |
- Engellenen kullanıcı: Blocking modunda engelleme sayfasını görür; Event Logs'ta Attack area: Raw · Attack name: Block unparsed contents görünür.
- Learning modu: İstek engellenmez.
- Etkilenmeyenler: Path, query ve header denetimleri ile bunlardaki imza taraması gövde çözümlenmese de yapılır.
- Kart cümlesi: Request Body Limits kartı sınırı The first 4 MB of the body is processed for inspection biçiminde gösterir; sınırı aşan gövdenin ilk kısmı taranmaz, gövde hiç çözümlenmez.
- Dosya yükleme sayfaları: Sınırı bütün vService için büyütmek yerine büyük yükleme alan sayfa tipinin Raw sekmesinde Block Unparsed Contents ve Raw Body Size o sayfaya göre ayarlanır; sınırı aşan gövdede Allowed Upload Mime Types denetimi de yapılmaz. Sorun giderme: Büyük POST istekleri engelleniyor veya yarıda kesiliyor; neden?
TR7'de Sınırı Değiştirme
Left Monitor Panel → WAF-Protected vServices → vService → WAF Management sekmesinde Inspection & Blocking bölümündeki Request body limits kartının sağ üstündeki kalem ikonuna tıklanır.
Max. Body Size to Process(kB) alanına 1 ile 262144 arasında bir tam sayı yazılır (ör. 8192); alanın yanında karşılığı (ör. 8 MB) görünür. Max. Body Size to Log(kB) bu değerden büyük olamaz (Max. body size to process en fazla kaç olabilir; log sınırı ile ilişkisi nedir?).
Edit tıklanır; değişiklik ayrı bir dağıtım adımı olmadan uygulanır, ancak Max. Body Size to Process(kB) değişikliği tampon boyutunu değiştiriyorsa (yeni ya da eski değer Buffer Size(kB) değerinden büyükse) vService kayıt sırasında yeniden başlatılır ve kısa bir kesinti oluşur. Cluster kurulumunda varsayılan auto-sync ile eş cihaza da gönderilir; Manual Sync Mode açıksa eş cihaza elle gönderilir.
- WEB-CLI:
waf options update poolId <vService> --syncWithDefaultFwRules false --bodyParseLimit 8192(gövde işleme).
Sık Karıştırılan Noktalar
- "Sığmayan gövdenin ilk kısmı taranır." Kısmi tarama yoktur; gövde ya tümüyle çözümlenir ya hiç.
- "Sınırı aşan istek her zaman engellenir." Karar sayfa tipinin Raw sekmesindeki ayara bağlıdır; Any paths kuralında Allow unparsed body seçili geldiği için sınırı aşan gövde varsayılan olarak denetlenmeden geçer.
- "Gövde denetlenmezse istek hiç denetlenmez." Path, query ve header denetimleri çalışmaya devam eder.
- "Aynı penceredeki Fail-open sınırı aşan gövdeyi geçirir." Sınırı aşan ya da tamamlanmayan gövdenin akıbetini yalnızca Raw sekmesindeki Block Unparsed Contents belirler; Fail-open yalnızca Blocking modunda taraması süre sınırı içinde tamamlanamayan isteğe uygulanır (Max. body size to process en fazla kaç olabilir; log sınırı ile ilişkisi nedir?).
Dokümantasyonda nasıl yapılır
