Learning Methods
Learning Methods Nedir?
Learning Methods, WAF'ın korunan siteyi tanıma biçimini yönetir: öğrenmenin sayfa (path) bazında kural üretme politikası (Rule Creation Policy) ile canlı trafikten seçici öğrenme sağlayan üç yöntem (Conditional Learning, AI Learning, Teacher) bu ekrandan yapılandırılır.
Üç yöntem, WAF Mode ekranındaki Learning modundan bağımsızdır: Learning modu, host grubuna gelen tüm trafiği öğrenme modunda işlerken buradaki yöntemler, vService Blocking veya Monitor moddayken de yalnızca seçili kaynaklardan veya biriken kayıtlardan öğrenir.
Öğrenme nelere dokunur
Öğrenme, WAF Rules altındaki mevcut kuralların alanlarını genişletir veya temizler: sayfaya özel yeni kurallar Any Paths kuralından türetilir (izinli metotlar, yol derinliği ve OWASP istisnaları oradan devralınır, öğrenmeyi tetikleyen denetim alanı ise Any Paths'teki karşılığının kopyası olarak eklenir) ve düzenli ifade (regex) denetimlerinde yanlış pozitif üreten desen tümüyle temizlenir. Header denetimleri site geneli tutulur; header öğrenmesi politika ne olursa olsun her zaman Any Paths kuralına yazılır. Öğrenme hiçbir zaman yeni bir argüman kuralı oluşturmaz. Otomatik uygulanan her öğrenme, geri alınabilir bir öğrenme kaydı ve sistem kullanıcısıyla bir işlem kaydı bırakır.
Kapsam
Learning Methods ayarları vService genelinde geçerlidir ve tüm host gruplarında ortaktır.
WAF Management'ta Learning Methods Kartı
WAF Management ekranının Learning & Reporting bölümündeki Learning Methods kartı, açık yöntemleri ve kural politikasını satır satır özetler. Satırlar Teacher, AI Learning, Conditional Learning, kural politikası sırasıyla dizilir; kapalı yöntemler en altta tek cümlede birleştirilir:
- Teacher satırı: açıkken Teacher is on — teaching sources are identified by IP + cookie (processing period 30 minutes) kalıbıyla, dolu kimlik alanlarını (IP, cookie, header)
+ile birleştirerek özetler. Hiçbir kimlik alanı dolu değilse satır Teacher is on but no identity is set — nothing can teach uyarısına döner. - AI Learning satırı: AI learning is on — traffic is evaluated collectively every 1 hours kalıbıyla seçili dönemi gösterir; dönem seçilmemişse AI learning is on but no period is selected uyarısı görüntülenir.
- Conditional Learning satırı: Conditional learning is on — the analyst is recognised by IP kalıbıyla dolu kimlik alanlarını gösterir; kimliksizken Conditional learning is on but no identity is set uyarısına döner.
- Kural politikası satırı her durumda görüntülenir: Rule policy is Page independent — pages are not learned individually; access is governed by one general rule, Rule policy is Data based — unlearned accesses carrying data are blocked veya Rule policy is Comprehensive — any access outside the learned pages is blocked.
- Kapalı yöntemler tek cümlede birleştirilir: üçü de kapalıyken Teacher, AI learning and Conditional learning are off, ikisi kapalıyken Teacher and AI learning are off, yalnız biri kapalıyken Conditional learning is off biçiminde görüntülenir.
Üç yöntem de kapalıyken kart söner ve Disabled pili görüntülenir; kural politikası satırı sönük kartta da yer alır.
Kartın sağ üstündeki kalem ikonuna tıklandığında düzenleme ekranı açılır.
WAF Management - Learning Methods Kartı
Learning Methods Edit Ekranı
- WAF Management sekmesi açılır.
- Learning & Reporting bölümündeki Learning Methods kartının sağ üstündeki kalem ikonuna tıklanır; Learning Methods başlıklı düzenleme penceresi açılır.
- Aşağıdaki alanlar düzenlenir ve
Editbutonuyla onaylanır.
Form, karttaki satır sırasının tersine Rule Creation Policy ile açılır; Teacher bölümü en sondadır.
Learning Methods Edit Ekranı
INFO
Rule Creation Policy Varsayılan: Data Based
Öğrenmenin sayfa bazında kural üretme politikası seçilir; varsayılan değeri Data Based'dir:
| Seçenek | Anlamı |
|---|---|
| Page independent (Pages are not learned) | Sayfalar tek tek öğrenilmez; tüm istekler tek ortak kuralla (Any Paths) yönetilir ve öğrenme, sayfaya özel kural üretmez. |
| Data Based (Pages with dynamic data are learned) | Veri taşıyan denetim alanları (Query, JSON, XML, Form, RAW) sayfa bazında öğrenilir; öğrenilmemiş sayfalara veri taşıyan istekler ortak kurala düşerek engellenir, verisiz erişim serbest kalır. |
| Comprehensive (Each page is learned) | Her sayfa, erişim metotlarıyla birlikte öğrenilir; öğrenilen sayfalar dışındaki her erişim engellenir. |
Politika seçimi tek başına mevcut kuralları değiştirmez: seçim, sonraki otomatik öğrenme koşularının (Teacher, AI Learning) kural üretim biçimini belirler. Elle başlatılan Analysis & Learning koşusunda ise kural üretim modu, koşunun başlatma ekranındaki Rule Creating Mode alanından ayrıca seçilir. Data Based ve Comprehensive politikalarının "öğrenilmemiş erişimi engelleme" etkisi, eski kuralları yok sayan bir analiz koşusunda Any Paths kuralının bu politikaya göre kısıtlayıcı biçimde yeniden kurulmasıyla ortaya çıkar: Comprehensive'de ortak kuralın izinli metotları tümüyle kapatılır, Data Based'de yalnızca GET, HEAD ve OPTIONS bırakılıp JSON, XML ve Form gövdeleri ile sorgu verisi engellenir. Mevcut kurallarla birleştiren bir analiz koşusunda ortak kural bu biçimde kısıtlanmaz.
INFO
Conditional Learning Varsayılan: Kapalı
Koşullu öğrenmeyi açar; varsayılan olarak kapalıdır. Açıldığında formda aşağıdaki üç kimlik alanı belirir ve kimliği eşleşen her istek, host grubunun modundan bağımsız olarak o istek özelinde öğrenme modunda işlenir: istek engellenmez, kurallar uygulanmaz ve tam öğrenme kaydı yazılır. Böylece bir analist, canlı Blocking modu bozulmadan siteyi gezerek öğrenme verisi toplar. Conditional Learning kendi başına kural üretmez; topladığı kayıtlar Analysis & Learning koşularının girdisidir.
Conditional Learning IP
Anahtar açıldığında formda beliren bu alana, öğrenme verisi toplanacak analistin IP adresleri boşlukla ayrılarak girilir. Tekil adreslerin yanı sıra ağ blokları da (192.168.10.0/24 gibi) tanımlanabilir; yalnızca IPv4 adresleri ve IPv4 blokları geçerlidir, IPv6 adresleri yok sayılır.
Conditional Learning Cookie
Anahtar açıldığında formda beliren bu alana, analistin isteklerinde taşıyacağı TR7-ANALYZE adlı çerezin değeri girilir.
Conditional Learning Header
Anahtar açıldığında formda beliren bu alana, analistin isteklerinde taşıyacağı TR7-ANALYZE adlı HTTP başlığının değeri girilir.
Kimlik alanları formda denetlenmez
Kimlik alanlarına girilen değerler biçim açısından denetlenmez: geçersiz bir adres veya blok kaydedilebilir, kart yine kimliğin tanımlı olduğunu bildirir ancak çalışma anında hiçbir istek bu kimlikle eşleşmez. Aynı durum Teacher kimlikleri için de geçerlidir.
Conditional Learning kapatılırken kimlikler temizlenmelidir
Bu sürümde anahtar kapatıldığında kayıtlı kimlik değerleri silinmez ve bu kimliği taşıyan istekler öğrenme modunda (engellenmeden) işlenmeye devam eder. Yöntem kapatılırken kimlik alanlarının da boşaltılması gerekir.
INFO
AI Learning Varsayılan: Kapalı
Toplu (yapay zekâ destekli) öğrenmeyi açar; varsayılan olarak kapalıdır. Açıkken, seçilen dönemde biriken saldırı kayıtları topluca değerlendirilir: aşağıdaki filtrelerden geçen ve tüm yaygınlık eşiklerini karşılayan yanlış pozitifler, kurallara otomatik uygulanır. Uygulanan her öğrenme geri alınabilir bir kayıt bırakır ve AI Learning & Teacher Tracking sekmesinin AI learning history görünümünde listelenir; eşiği henüz doldurmamış adaylar AI learning tracking görünümünden izlenir ve istenirse beklemeden elle uygulanır. Cluster'da otomatik öğrenme koşuları (AI Learning ve Teacher) tek cihazda çalışır ancak tüm cihazların kayıtları birlikte değerlendirilir. Anahtar kapatıldığında aşağıdaki alanlar gizlenir ancak değerleri korunur; yeniden açıldığında aynı ayarlar geçerli olur.
AI Learning Frequency
Anahtar açıldığında formda beliren bu alanla değerlendirme dönemi seçilir; None seçiliyken toplu değerlendirme çalışmaz ve kartta uyarı görüntülenir. Seçenekler, dönem ve parantez içinde değerlendirilen kayıt penceresiyle listelenir (süre metinleri arayüzde çoğul birim kalıbıyla görüntülenir, örneğin 1 hours):
| Seçenek | Anlamı |
|---|---|
| 30 minutes (1 days) | Her 30 dakikada bir, son 1 günün kayıtları değerlendirilir. |
| 1 hours (2 days) | Her saat başı, son 2 günün kayıtları değerlendirilir. |
| 2 hours (4 days) | Her 2 saatte bir, son 4 günün kayıtları değerlendirilir. |
| 6 hours (1 weeks) | Her 6 saatte bir, son 1 haftanın kayıtları değerlendirilir. |
| 12 hours (2 weeks) | Her 12 saatte bir, son 2 haftanın kayıtları değerlendirilir. |
| 1 days (1 months) | Her gün, son 1 ayın kayıtları değerlendirilir. |
| 1 days (3 months) | Her gün, son 3 ayın kayıtları değerlendirilir. |
Country Filter
Anahtar açıldığında formda beliren bu alanla değerlendirme, seçilen ülkelerden gelen kayıtlarla sınırlanır; boş bırakıldığında No restriction görüntülenir ve tüm ülkeler değerlendirilir.
Only Browsers
Anahtar açıldığında formda beliren bu anahtar açıkken yalnızca tarayıcı olduğu değerlendirilen istemcilerin kayıtları dikkate alınır.
Only Valid Domain Names
Anahtar açıldığında formda beliren bu anahtar açıkken yalnızca geçerli bir alan adına gelen isteklerin kayıtları dikkate alınır.
Skip Blacklist IPs
Anahtar açıldığında formda beliren bu anahtar açıkken kara listedeki IP adreslerinden gelen kayıtlar değerlendirme dışı bırakılır.
Required Requests Varsayılan: 10
Anahtar açıldığında formda beliren bu alana, bir önerinin uygulanması için gereken en az istek sayısı girilir (zorunlu alan; en az 1). Varsayılan değeri 10'dur.
Required Clients Varsayılan: 5
Anahtar açıldığında formda beliren bu alana, gereken en az farklı istemci sayısı girilir (zorunlu alan; en az 1). Varsayılan değeri 5'tir.
Required Countries Varsayılan: 1
Anahtar açıldığında formda beliren bu alana, gereken en az farklı ülke sayısı girilir (en az 1; boş bırakılabilir). Varsayılan değeri 1'dir.
Required ASN Networks
Anahtar açıldığında formda beliren bu alana, gereken en az farklı ASN ağı sayısı girilir (en az 1; boş bırakılabilir).
Bir yanlış pozitif önerisi ancak tanımlı eşiklerin tümünü karşılayan yaygınlıkta görüldüğünde uygulanır; eşikler, önerinin farklı istemci, ülke ve ağlardan gelen meşru trafiği temsil ettiğinden emin olunmasını sağlar.
INFO
Teacher Varsayılan: Kapalı
Öğretici modunu açar; varsayılan olarak kapalıdır. Açıkken, aşağıdaki kimlik alanlarından biriyle eşleşen istekler normal biçimde denetlenir ancak hiçbir zaman engellenmez; tetikledikleri saldırı kayıtları öğretici işaretiyle yazılır ve seçilen dönemin sonunda yanlış pozitif olarak kurallardan otomatik temizlenir. AI Learning'den farklı olarak yaygınlık eşikleri uygulanmaz; tek bir öğretici kaydı öğrenme için yeterlidir. Uygulanan temizlikler geri alınabilir kayıt bırakır ve AI Learning & Teacher Tracking sekmesinin Teacher history görünümünde listelenir; sıradaki dönemde uygulanacakların provası Teacher tracking görünümünden izlenir.
Teacher IP
Anahtar açıldığında formda beliren bu alana, öğreticinin IP adresleri boşlukla ayrılarak girilir. Tekil adreslerin yanı sıra ağ blokları da (192.168.10.0/24 gibi) tanımlanabilir; yalnızca IPv4 adresleri ve IPv4 blokları geçerlidir, IPv6 adresleri yok sayılır.
Teacher Cookie
Anahtar açıldığında formda beliren bu alana, öğreticinin isteklerinde taşıyacağı TR7-LEARN adlı çerezin değeri girilir.
Teacher Header
Anahtar açıldığında formda beliren bu alana, öğreticinin isteklerinde taşıyacağı TR7-LEARN adlı HTTP başlığının değeri girilir.
Teaching Frequency
Anahtar açıldığında formda beliren bu alanla, öğretici kayıtlarının işlenme dönemi seçilir:
| Seçenek | Anlamı |
|---|---|
| None | Kayıtlar işlenmez. Öğretici istekleri yine engellenmez ve kayıtları yazılır ancak kurala dönüştürülmez; kart bu durumda da bir işleme dönemi (1 minutes) görüntüler. |
| 1 minutes | Öğretici kayıtları her dakika işlenir. |
| 2 minutes | Öğretici kayıtları iki dakikada bir işlenir. |
| 5 minutes | Öğretici kayıtları beş dakikada bir işlenir. |
| 30 minutes | Öğretici kayıtları yarım saatte bir işlenir. |
| 1 hours | Öğretici kayıtları saatte bir işlenir. |
Teacher kimliği gizli tutulmalıdır
Öğretici kimliğini taşıyan her istek hem engellenmez hem de kuralları gevşetir. TR7-LEARN çerez veya başlık değerini ele geçiren bir istemci, WAF'ı kendi trafiğine öğretebilir; kimlik değerleri gizli tutulmalı ve öğretme tamamlandığında Teacher kapatılmalıdır.
INFO
Edit
Edit butonuna tıklanarak formdaki değişiklikler kaydedilir; buton, formda hata kalmadığında etkinleşir. Ek bir onay penceresi veya dağıtım (deploy) adımı yoktur; WAF yapılandırması otomatik olarak yeniden üretilip uygulanır. Kimlik alanlarındaki değişiklikler anında geçerli olur; politika değişikliğinin etkisi sonraki öğrenme koşusunda görülür.
İzleme ve kayıt
Yöntemlerin öğrettiği her şey kayıt altındadır. AI Learning veya Teacher açıkken vService'in WAF ekranına, adı açık yöntemlere göre değişen bir izleme sekmesi eklenir: ikisi açıkken AI Learning & Teacher Tracking, yalnızca biri açıkken Teacher Tracking veya AI Learning Tracking. Conditional Learning tek başına bu sekmeyi açmaz; topladığı kayıtlar Analysis & Learning ekranından okunur. Sekmedeki kaynak seçicide açık yöntemlerin görünümleri listelenir; ikisi birden açıkken dört görünümün tamamı bulunur:
- AI Learning Tracking: henüz uygulanmamış öneri adaylarını, eşik doluluklarını gösteren ilerleme çubuklarıyla listeler; seçilen adaylar Learn Selected butonuyla beklemeden elle uygulanır.
- AI Learning History: uygulanmış AI öğrenmelerini listeler; otomatik uygulananlar da elle uygulananlar da buradadır.
- Teacher Tracking: öğretici kayıtlarının bir sonraki işleme döneminde uygulanacak halinin provasını gösterir.
- Teacher History: öğreticiden uygulanan temizlikleri listeler.
Görünümlerin ayrıntısı AI Learning & Teacher Tracking sayfasında anlatılır.
Uygulanan her öğrenme ayrıca vService'in işlem kaydına yazılır: kayıtta hangi sayfanın hangi denetiminin, kaç saldırıdan ve hangi kaynaklardan (öğretici kimlikleri, en yoğun istemciler) öğrenildiği yer alır ve öğrenme, kaydın altındaki Revert Learning butonuyla geri alınabilir; kayıt, WAF - WAAP Data Flow Panel'in Log sekmesinde bulunur (Öğrenmeyi Geri Alma). Öğretici isteklerinin tetiklediği saldırı kayıtları Dashboard'da Teacher dilimi olarak görünür.
Mod davranışı
Yöntemler, host grubunun modundan bağımsız tanımlanır. Learning modunda tüm trafik zaten öğrenme modunda işlendiğinden Conditional Learning'in ek bir etkisi yoktur. Blocking modunda Conditional Learning ve Teacher kimliği taşıyan istekler engellenmeden işlenir; diğer istekler için mod davranışı değişmez.
