TR7 WAF bir isteği engelleyip engellememeye nasıl karar verir?
Kısa cevap
TR7 WAF tek bir kurala bakarak karar vermez: isteği baştan sona tarar, bulduğu her ihlali isteğin saldırı puanına ekler ve kararı tarama bittiğinde verir. İmza isabetleri risk düzeyine göre 2 ile 8 (yerleşik üç imza kuralında 9), yapısal ihlaller 24, kara liste isabeti 100 puan ekler; toplam, vService'in OWASP Protection Level değeriyle (24, 16, 8, 4 ya da 2) karşılaştırılır. Toplam bu eşiğe ulaşır ya da aşarsa ve isteğin düştüğü Virtual Host Group Blocking modundaysa istek engellenir; istemciye Blocking Page içeriği Blocking Status Code (varsayılan 418) ile döner. Monitor modunda istek geçer ve Event Logs'a yazılır, Learning modunda imza isabetleri puana eklenmez ve engelleme kararı verilmez, Teacher olarak tanınan istek puanı ne olursa olsun engellenmez. Do not WAF static contents ya da Whitelist Condition kapsamındaki istekler hiç denetlenmez; Blocking modunda tarama 2 saniyelik süre sınırı içinde tamamlanamazsa istek de engellenir (Fail-open açıksa taranmadan geçirilir).
Nasıl Çalışır?
WAF'ın açık olduğu bir HTTP vService'e gelen istek şu sırayla işlenir (nasıl çalışır):
- Muafiyet: Do not WAF static contents (varsayılan açık) kapsamındaki statik içerik istekleri ve Whitelist Condition'a uyan istekler WAF denetimine hiç girmez; puanlanmaz ve engellenmez.
- Kara liste: Blacklist Protection açıksa (varsayılan açık) kaynak adres seçili kara liste kategorilerinde ya da Frontend Blacklist'te bulunduğunda isteğe 100 puanlık bir ihlal yazılır; Frontend Blacklist Exclusions'taki adreslerde bu ihlal yazılmaz. İstek bu noktada kesilmez, tarama sürer.
- Grup ve mod: İstek
Hostbaşlığına göre bir Virtual Host Group'a eşlenir ve o grubun WAF Mode değeri uygulanır. Conditional Learning koşuluna uyan istek, grup hangi modda olursa olsun Learning modundaki gibi işlenir. - Denetim: İsteğin path'i grubun Page Types listesindeki kurallarla eşleştirilir; path, query, header ve gövde bölümleri imza taramasından ve kuralın Check Fields denetimlerinden geçer. Her ihlal puana eklenir. Yapısal denetimler yalnızca Monitor ve Blocking modlarında çalışır.
- Puan: Bütün ihlallerin puanları toplanır. OWASP Rules ekranında Monitor durumuna alınmış imzalar kaydedilir ama toplama katılmaz; Learning modunda imza isabetleri puana eklenmez ve engelleme kararı verilmez.
- Karar: Tarama bitince toplam, OWASP Protection Level değeriyle karşılaştırılır (engelleme eşiği); toplam eşiğe eşit ya da eşikten büyükse istek saldırı sayılır ve sonuç moda göre uygulanır.
| Durum | İstek | Kayıt |
|---|---|---|
| Toplam ≥ eşik, grup Blocking modunda | Engellenir; Blocking Page içeriği Blocking Status Code (varsayılan 418) ile döner; Conditional Blocking Pages tanımlıysa koşulu ilk eşleşen sayfa kullanılır | Event Logs: Attack blocked |
| Toplam ≥ eşik, grup Monitor modunda | Geçer | Event Logs: Not blocked — Monitor mode |
| Toplam < eşik, Monitor durumundaki bir imza tetiklendi | Geçer | Event Logs: Not blocked — Below the blocking threshold (grup Monitor modundaysa Not blocked — Monitor mode) |
| Toplam < eşik, yalnızca etkin imzalar tetiklendi | Geçer | Event Logs kaydı yok |
| Teacher olarak tanınan istek, grup Monitor ya da Blocking modunda; toplam ≥ eşik ya da Monitor durumundaki bir imza tetiklendi | Geçer | Event Logs: Not blocked — Teacher IP matched (kimliğe göre Teacher cookie ya da Teacher header) |
| Grup Learning modunda ya da istek Conditional learning ile tanındı | Geçer | Event Logs kaydı yok; istek öğrenme günlüğüne yazılır |
| Tarama 2 saniyelik süre sınırı içinde tamamlanamadı | Grup Blocking modundaysa engellenir (Fail-open açıksa geçer); Learning ve Monitor modunda, Teacher ya da Conditional Learning kimliğiyle gelen istekte geçer (tarama kurallar yüklenirken ve host grubu belirlenmeden kesildiyse ve vService'te Blocking modunda bir grup varsa Learning ve Monitor modunda da engellenir; WAF Mode · Blocking Mode) | Event Logs kaydı yok; vService Debug Mode'dayken engellenen istek Debug Mode Logs'ta Attack blocked — scan timed out |
Puanların ayrıntısı: Saldırı puanı (attack score) nedir, nasıl hesaplanır? Düzeyler ve eşikler: OWASP Protection Level nedir; kaç seviye var?
TR7'de Kararı Belirleyen Ayarlar
| Ayar | Kapsam | Nerede |
|---|---|---|
| OWASP Protection Level (eşik) | vService geneli | WAF Management → Inspection & Blocking |
| WAF Mode (Learning, Monitor, Blocking) | Virtual Host Group | WAF Management → mod kartı |
| İmza puanı ve durumu (Score, State) | vService geneli ya da bütün cihaz | OWASP Rules · Signature & Rule Library |
| Structure Checks ve Argument Checks | vService geneli | Inspection & Blocking → Checks |
| Muafiyet ve kara liste | vService geneli | Inspection & Blocking → Whitelist & Blacklist |
| Engelleme yanıtı | vService geneli | Inspection & Blocking → Blocking Page |
Kararların dağılımı vService Dashboard'undaki WAF Inspection Distribution panelinde Whitelisted, Clean, Blocked, Monitor, Teacher ve Learning serileriyle izlenir; tek tek kararlar Event Logs'taki Action kolonunda görülür.
Sık Karıştırılan Noktalar
- "WAF ilk eşleşen kuralda isteği keser." İstek bütünüyle taranır; karar tarama bitince verilir (Bir istekte birden fazla saldırı varsa WAF ilk eşleşmede mi durur, hepsini mi değerlendirir?).
- "WAF açılınca saldırılar hemen engellenir." Koruma açıldığında varsayılan Virtual Host Group Learning modunda başlar; engelleme yalnızca Blocking modunda olur (WAF'ı açtığım anda trafik engellenmeye başlar mı?).
- "Kara listedeki adres hemen engellenir." Kara liste isabeti 100 puan olarak eklenir ve karar tarama sonunda moda göre verilir; Learning modundaki grupta ya da Teacher isteğinde engellenmez.
- "Monitor modunda puan hesaplanmaz." Monitor modunda denetim ve puan Blocking ile aynıdır; yalnızca engelleme uygulanmaz.
Dokümantasyonda nasıl yapılır
İlgili sorular
