
Bu makalede, Security Policy Templates konseptine derinlemesine bir teknik giriş yapacak ve F5 WAF’in sunduğu şablonların özelliklerini, yapılandırma detaylarını ve hangi kullanım senaryoları için uygun olduklarını detaylı bir şekilde ele alacağız.
1. Security Policy Templates Nedir?
Security Policy Templates, F5 WAF’in sağladığı, farklı güvenlik ihtiyaçlarına göre önceden yapılandırılmış güvenlik politikası şablonlarıdır. Bu şablonlar, sistemin güvenlik seviyesi, yönetim yükü, öğrenme mekanizmaları ve saldırı tespit yöntemleri açısından farklılaşır. Doğru şablon seçimi, hem güvenlik seviyesini optimize eder hem de yönetim sürecini kolaylaştırır.
Şablonların Temel Yapı Taşları
- Enforcement Mode (Uygulama Modu):
- Transparent Mode:
Trafiğin ihlallerini sadece kaydeder; istekler engellenmez. Bu mod, özellikle yeni kurulan bir politika için sistem davranışını izlemek ve yanlış pozitifleri belirlemek amacıyla kullanılır. - Blocking Mode:
İhlaller tespit edildiğinde, ilgili istekler derhal engellenir. Bu mod, üretim ortamlarında aktif saldırı engelleme sağlamak için tercih edilir.
- Transparent Mode:
- Learning Mode (Öğrenme Modu):
- Manuel Öğrenme:
Güvenlik yöneticileri, sistemin sunduğu öğrenme önerilerini inceleyip onaylayarak, politikanın kademeli olarak geliştirilmesine katkıda bulunur. - Otomatik Öğrenme:
Sistem, trafik analizi yaparak otomatik olarak öğrenme önerilerini uygular. Bu yöntem, özellikle yüksek trafiğe sahip ve hızlı değişen uygulamalarda faydalıdır.
- Manuel Öğrenme:
- Saldırı Tespit ve Engelleme:
Şablonlar, imza tabanlı (Signature‑Based) tespit, anomali tespiti ve davranış analizine dayalı mekanizmalar içerir. Bu sayede bilinen saldırılar yanı sıra, olağandışı davranışlar da tespit edilip, gerektiğinde engellenir. - Yanlış Pozitif Yönetimi:
Öğrenme modları sayesinde, sistem gerçek saldırılar ile meşru trafiği ayırt etmeye çalışır. Öğrenme ve istisna tanımlama yöntemleriyle yanlış pozitiflerin sayısı minimize edilir. - Seçilebilir Öğrenme Seçenekleri:
Güvenlik politikasında, sistemin belirli öğeleri (örneğin; URL, parametre, çerez, vs.) nasıl öğreneceğini belirleyen seçenekler bulunmaktadır. Bu seçenekler, politikanın esnekliğini ve hassasiyetini ayarlamada önemli rol oynar:- Never:
- Açıklama: Sistem, ilgili öğeyi kesinlikle öğrenmez.
- Kullanım Amacı: Uygulama davranışında istenmeyen değişikliklerin önüne geçmek için kullanılır.
- Never (wildcard only):
- Açıklama: Sistem, explicit (tam belirtilmiş) değerleri öğrenmez; yalnızca genel kalıplarla (wildcard) eşleşen öğeleri öğrenir.
- Kullanım Amacı: Çok spesifik öğrenmelerin eklenmesini engelleyerek, daha genel bir yapı sağlanır.
- Selective:
- Açıklama: Sistem, yalnızca belirli koşullar altında ve genellikle yöneticinin onayına bağlı olarak explicit öğeleri öğrenir.
- Kullanım Amacı: Özellikle hassas veya kritik öğelerin yanlışlıkla eklenmesini önler.
- Compact:
- Açıklama: Öğrenme sürecinde benzer veya tekrarlayan öğeler gruplandırılarak derlenir.
- Kullanım Amacı: Öğrenme listesinin aşırı genişlemesini ve potansiyel yanlış pozitifleri azaltır.
- Always:
- Açıklama: İlgili öğe her durumda öğrenilir.
- Kullanım Amacı: Örneğin, Comprehensive şablonlarında dinamik yapıya sahip WebSocket URL’leri gibi öğelerin sürekli izlenmesi gereken durumlarda tercih edilir.
- Never:
F5 WAF’in Sağladığı Avantajlar
F5 WAF, Security Policy Templates sayesinde farklı güvenlik ihtiyaçlarına uygun politikaları hızla devreye almanıza olanak tanır. Şablon seçiminde:
Başlangıç veya Test Ortamları:
Transparent Mode ve manuel öğrenme (örneğin, Rapid şablonu) tercih edilerek, sistem davranışı izlenip, politikaya gerekli ayarlamalar yapılır.
Daha Yüksek Güvenlik Gerektiren Ortamlar:
Blocking Mode ve otomatik öğrenme seçenekleri (örneğin, Comprehensive şablonu) kullanılarak, saldırıların hızlıca tespit edilip engellenmesi sağlanır.
2. Policy Template’lerin Genel Özellikleri
F5 WAF’nin policy template’leri, temel olarak aşağıdaki parametrelerle yapılandırılır:
- Uygulama Dili ve İmza Yönetimi:
- Şablonların bazıları sabit “UTF-8” dil ayarına sahipken, bazıları gelen verinin dilini otomatik olarak tespit eder.
- Tüm şablonlar, “Generic Detection Signatures” veya “High Accuracy” gibi imza setleri kullanır; imza staging ise sistem tarafından desteklenir.
- Öğrenme Parametreleri:
Öğrenme ayarları, explicit URL’ler, WebSocket URL’ler, parametreler, host adları, çerezler ve dosya türleri gibi öğeler için farklı modlarda (Never, Selective, Compact, Always) yapılandırılabilir.
📌 Güvenlik Politikası Şablonları ve Kullanım Senaryoları
Şablon Adı | Enforcement Mode | Öğrenme Modu | Önerilen Kullanım Alanı |
---|---|---|---|
Rapid Deployment (RDP) | Transparent | Manual | Hızlı kurulum, düşük yanlış pozitif |
Fundamental | Blocking | Automatic | Orta seviyede güvenlik gereksinimi |
Comprehensive | Blocking | Automatic | Maksimum güvenlik gerektiren sistemler |
API Security | Blocking | Manual | API tabanlı hizmetler |
Rating-Based | Blocking | Disabled | Yanlış pozitifleri en aza indirme |
Minimal Security | Blocking | Automatic | Varsayılan güvenlik politikası |
GraphQL | Blocking | Manual | GraphQL API güvenliği |
PDP (Passive Deployment) | Transparent | Disabled | Pasif ihlal tespiti |
Vulnerability Assessment | Blocking | Disabled | Güvenlik açığı analizleri |
Blank Policy | None | None | Özel güvenlik politikası oluşturma |
🔍 Not: Blocking Mode etkin olan politikalar, saldırıları aktif olarak durdururken, Transparent Mode yalnızca ihlalleri raporlar.
3. Rapid Deployment (RDP) Template
3.1 Genel Bakış
Rapid Deployment (RDP) template, özellikle hızlı ve basit bir güvenlik politikası oluşturmak isteyen kuruluşlar için tasarlanmıştır. Bu şablonun temel amacı, başlangıç aşamasında false positive (yanlış alarm) oranını minimize ederek, sistemin daha kısa sürede blocking moduna geçebilmesini sağlamaktır. Böylece, uygulama güvenliği standartları – PCI DSS v1.2, FISMA, HIPAA gibi – gereksinimlerine uygun temel koruma hızlıca devreye alınabilir.
3.2 Teknik Özellikler ve Güvenlik Kontrolleri
RDP şablonunun varsayılan olarak içerdiği güvenlik kontrolleri şunlardır:
- HTTP Uyumluluk Kontrolleri:
- HTTP protokolüne uygunluk, mandatory header kontrolleri.
- Bilgi Sızması (Data Leakage) Engelleme:
- Data Guard aktif edilerek, hassas bilgilerin URL’ler veya yanıt içerikleri üzerinden sızması önlenir.
- HTTP Yöntemleri ve Yanıt Kodu Kontrolleri:
- Yasadışı HTTP metodlarının kullanımı engellenir, yanıt kodları incelenir.
- Çerez ve Karakter Dönüşüm Kuralları:
- Cookie RFC uyumunun sağlanması, karakter dönüşüm hatalarının raporlanması.
- Saldırı İmza Kontrolleri ve Evasion Teknikleri:
- İstek ve yanıt üzerindeki saldırı imzaları kontrol edilir, kaçınma (evasion) teknikleri tespit edilir.
- Jeo-Konum ve IP/Session Kısıtlamaları:
- İzin verilmeyen coğrafi bölgeler veya kullanıcı/IP gruplarından gelen erişimler kontrol altına alınır.
- İstek Boyutu ve Dosya Yükleme İçerikleri:
- Tanımlı tampon boyutunu aşan istekler ve yasaklı dosya içeriği tespit edilir.
3.3 Varsayılan Ayarlar
RDP şablonunda dikkat edilmesi gereken bazı varsayılan ayarlar şunlardır:
- Attack Signature’lar Staging Modunda:
Tüm saldırı imzaları staging (test) aşamasındadır. - Generic Detection Signatures:
Güvenlik politikası, generic imza setlerini kullanır. - Explicit Entities Öğrenme Ayarları:
File Types, URLs ve Parametreler için “Never (Wildcard Only)” olarak belirlenmiştir; bu sayede yönetimsel karmaşıklık azaltılır. - Staging Tüm Öğeler İçin Devre Dışı:
Öğrenme süreci sırasında staging kapalıdır. - Data Guard Aktif:
Hassas veri sızıntısını önlemeye yönelik kontroller sürekli olarak devrededir.
Bu yapılandırma, RDP’nin hızlıca devreye alınabilmesini, false positive oranını minimize ederek sistemin koruma moduna daha çabuk geçmesini sağlar.
4. Security Policy Templates Çeşitleri ve Teknik Detaylar
4.1 Fundamental Policy
Temel güvenlik ihtiyaçlarını karşılayıp otomatik öğrenme yeteneğiyle sistemin kendini sürekli geliştirmesini sağlayan ideal bir politikadır.
- Enforcement Mode: Blocking
- Learning Mode: Automatic
- Özellikler:
- İhlalleri aktif olarak engelleyen bir güvenlik politikasıdır.
- Otomatik öğrenme mekanizması sayesinde saldırı modellerini analiz eder ve kendisini geliştirir.
- Saldırı imzaları aktif olarak devrede olup, güvenlik kontrolleri detaylı bir şekilde yapılır.
- Yanlış pozitifleri analiz ederek öğrenme sürecine dahil eder.
Kullanım Senaryosu: Orta seviyede güvenlik gereksinimi olan, ancak manuel yönetim yükünü azaltmak isteyen sistemler için uygundur.
4.2 Comprehensive Policy
Kritik sistemlerde maksimum koruma sağlamak için geniş kapsamlı kontrolleri ve çift modlu öğrenme yöntemlerini bir araya getiren kapsamlı bir güvenlik çözümüdür.
- Enforcement Mode: Blocking
- Learning Mode: Automatic
- Özellikler:
- Maksimum güvenlik sağlamak için tüm ihlal kontrollerini ve öğrenme özelliklerini aktif eder.
- Manuel ve otomatik öğrenme yöntemlerini bir arada kullanır.
- Yanlış pozitiflerin en aza indirilmesi için geniş çaplı öğrenme mekanizmaları içerir.
- HTTP uygunluk denetimleri, saldırı imzaları, çerez kontrolleri ve anomali tespiti gibi ek güvenlik önlemlerine sahiptir.
Kullanım Senaryosu: Kritik sistemler, yüksek güvenlik gerektiren uygulamalar ve hassas verilerin işlendiği ortamlar için uygundur.
4.3API Security Policy
API trafiğine özel optimize edilmiş, veri doğrulama, anomali tespiti ve saldırı analizleriyle API tabanlı uygulamaların güvenliğini sağlayan modern bir politikadır.
- Enforcement Mode: Blocking
- Learning Mode: Manual
- Özellikler:
- API trafiğini korumak için optimize edilmiştir.
- JSON, XML ve OpenAPI kontrolleri içerir.
- API endpoint’lerine yönelik saldırıları analiz eder ve engeller.
Kullanım Senaryosu: API tabanlı hizmetleri ve mikro servis mimarilerini güvence altına almak isteyen sistemler için uygundur.
4.4 Rating-Based Policy
İhlal derecesine dayalı saldırı tespitiyle yanlış pozitif oranını minimize etmeyi hedefleyen, yönetim yükünü azaltan yenilikçi bir yaklaşımdır.
- Enforcement Mode: Blocking
- Learning Mode: Disabled
- Özellikler:
- Saldırı tespiti ihlal derecesine (violation rating) dayalı olarak gerçekleştirilir.
- Yanlış pozitif oranını minimize etmek için öğrenme modu devre dışı bırakılmıştır.
Kullanım Senaryosu: Yanlış pozitifleri en aza indirmek isteyen ve yönetim yükünü azaltmayı hedefleyen sistemler için uygundur.
4.5 Vulnerability Assessment Baseline
Zafiyet taraması sonuçlarına dayalı olarak sistemin güvenlik açıklarını belirleyen ve kritik riskleri ölçümleyen temel bir yapı sunar.
- Enforcement Mode: Blocking
- Learning Mode: Disabled
- Özellikler:
- Zafiyet taraması sonuçlarına göre yapılandırılır.
- Tarama sonuçlarıyla ilgisiz güvenlik özellikleri devre dışı bırakılır.
Kullanım Senaryosu: Zafiyet değerlendirme sonuçlarına dayalı olarak güvenlik politikası belirlemek isteyen kurumlar için uygundur.
4.6 Passive Deployment Policy (PDP)
Müdahale yeteneği bulunmayan, sadece ihlalleri pasif olarak raporlayarak ağ izleme ve denetim senaryolarında tercih edilen bir güvenlik şablonudur.
- Enforcement Mode: Transparent
- Learning Mode: Disabled
- Özellikler:
- Comprehensive Policy’e benzer, ancak müdahale yeteneği kapalıdır.
- Sadece ihlalleri pasif olarak raporlar.
Kullanım Senaryosu:Ağ izleme (SPAN portu) ve denetim senaryolarında tercih edilir.
4.7 Minimal Security Policy
Düşük riskli ortamlar ve yeni başlayan projeler için temel güvenlik önlemlerini hızlıca devreye sokan, minimal yapılandırmaya sahip pratik bir çözümdür.
- Enforcement Mode: Blocking
- Learning Mode: Automatic
- Özellikler:
- Temel korumayı sağlayan, minimal yapılandırma sunar.
- Yanlış pozitiflerin öğrenilmesiyle sistemi kademeli olarak adapte eder.
Kullanım Senaryosu: Yeni başlayanlar veya düşük riskli ortamlarda temel bir güvenlik seviyesi sağlamak için idealdir.
4.8 GraphQL Policy
GraphQL sorgularının dinamik yapısına uygun olarak optimize edilmiş, modern web uygulamalarında potansiyel saldırıları önlemeye yönelik özel bir politikadır.
- Enforcement Mode: Blocking
- Learning Mode: Manual
- Özellikler:
- GraphQL sorgularının yapısına özel olarak optimize edilmiştir.
- API Security Policy’ye benzer yapıdadır, ancak GraphQL’e özgü parametreler içerir.
Kullanım Senaryosu: GraphQL kullanan modern web uygulamalarında tercih edilir.
4.9 Rating-Based Policy
Öğrenme modu devre dışı bırakılarak yanlış pozitiflerin azaltıldığı, ihlal derecesine dayalı saldırı tespit stratejisiyle öne çıkan güvenlik yaklaşımıdır.
- Enforcement Mode: Blocking
- Learning Mode: Disabled
- Özellikler:
- Saldırı tespiti ihlal derecesine (violation rating) dayalı olarak gerçekleştirilir.
- Yanlış pozitif oranını minimize etmek için öğrenme modu devre dışı bırakılmıştır.
Kullanım Senaryosu: Yanlış pozitifleri en aza indirmek isteyen ve yönetim yükünü azaltmayı hedefleyen sistemler için uygundur.
4.10 Application-Ready ve Deprecated Templates
Belirli uygulama ve sektör ihtiyaçlarına yönelik optimize edilmiş, hızlı entegrasyon ve yüksek verimlilik sağlayan hazır şablonlar ile eski yapılandırmaların dikkatle yönetildiği çözümleri içerir.
- Enforcement Mode: Blocking
- Learning Mode: Manual
- Özellikler:
- Belirli uygulama veya sektör ihtiyaçlarına göre optimize edilmiş yapılandırmalar sunar.
- Sadece ilgili imza, kural ve güvenlik özelliklerini içerir.
Kullanım Senaryosu:Finansal uygulamalar veya e-ticaret sistemleri gibi belirli sektörlere özgü uygulamalarda verimliliği artırmak amacıyla tercih edilir.
4.11 Blank Policy
Tüm güvenlik özellikleri kapalı olup, kullanıcıların sıfırdan kendi politikalarını oluşturabilmeleri için esnek ve temel bir iskelet sunar.
- Enforcement Mode: None
- Learning Mode: None
- Özellikler:
- Tüm güvenlik özellikleri kapalıdır, yalnızca zorunlu varlıklar aktiftir.
- Sıfırdan politika oluşturmak isteyen kullanıcılar için temel iskelet sunar.
Kullanım Senaryosu:Kendi politikalarını detaylıca yapılandırmak isteyen ileri düzey kullanıcılar ve uzmanlar için idealdir.
Tablo 1: Genel Politika Şablonu Ayarları
Genel Ayar | Rating‑Based | Rapid | Fundamental | Comprehensive | API Security |
---|---|---|---|---|---|
Enforcement Mode | Blocking | Transparent | Blocking | Blocking | Blocking |
Application Language | UTF‑8 | UTF‑8 | Auto‑detect | Auto‑detect | UTF‑8 |
Bot Defense | Enabled | Enabled | Enabled | Enabled | Disabled |
Threat Campaigns | Enabled | Enabled | Enabled | Enabled | Enabled |
IP Intelligence | Enabled | Enabled | Enabled | Enabled | Disabled |
Log Events | Illegal | Illegal | Illegal | Illegal | Illegal |
Signature Sets | Yüksek doğrulukta saldırı imza seti | Generic Detection Signatures | Generic Detection Signatures | Generic Detection Signatures | Generic Detection Signatures (High Accuracy) |
Signature Staging | Enabled (True) | Enabled (True) | Enabled (True) | Enabled (True) | Enabled (True) |
Learn Explicit URLs | Never | Never (wildcard only) | Never (wildcard only) | Compact | Never |
Learn Explicit WebSocket URLs | Never | Never (wildcard only) | Never (wildcard only) | Always | Never |
Learn Explicit Parameters | Never | Never | Selective | Compact | Never |
Learn Host Names | False | False | True | True | False |
Learn Explicit Cookies | Never | Never | Selective | Selective | Never |
Learn Explicit File Types | Never | Never | Compact | Compact | Never |
Policy Building Learning Mode | N/A | Manual | Automatic | Automatic | Manual |
L7 DoS Protection | Disabled | Disabled | Disabled | Disabled | Disabled |
Ek Açıklamalar (Genel Ayarlar)
- Enforcement Mode:
- Blocking: İhlal tespit edildiğinde, sistem isteği derhal engeller.
- Transparent: İhlaller kaydedilir fakat trafik engellenmez; başlangıç aşamasında sistemin davranışını gözlemlemek için uygundur.
- Application Language:
- UTF‑8: Sabit dil kodlaması, özellikle API trafiğinde standarttır.
- Auto‑detect: Uygulamanın kullandığı karakter setine göre otomatik tespit yapılır.
- Signature Sets & Signature Staging:
- Yüksek doğrulukta saldırı imza seti: Saldırı tespitinde daha kesin sonuçlar elde edilir.
- Generic Detection Signatures: Genel imza setleri kullanılır; Comprehensive ve API Security seçeneklerinde imza doğruluğu biraz daha yükseltilir.
- Signature Staging: İmzalar uygulanmadan önce belirli bir öğrenme/düzeltme süreci sağlanır.
- Öğrenme Ayarları (Learning Settings):
Bu ayarlar, sistemin trafiğe bağlı olarak belirli öğeleri (URL’ler, WebSocket URL’leri, parametreler, çerezler, dosya tipleri) otomatik olarak öğrenip eklemesini kontrol eder.- Never: Sistem, ilgili öğeyi öğrenmez. Bu, hassas veya sabit yapılandırma gerektiren durumlarda tercih edilir.
- Never (wildcard only): Sadece genel (wildcard) eşleşmelerle çalışır, explicit (tam olarak belirtilmiş) değerler öğrenilmez.
- Selective: Sistem, yalnızca belirli şartlar altında ve genellikle yöneticinin onayıyla explicit değerleri ekler.
- Compact: Öğrenilen öğeler, benzer değerler gruplandırılarak veya sınırlandırılarak derlenir; böylece öğrenme sonuçları aşırı genişlemez.
- Always: İlgili öğe her durumda öğrenilir (örneğin, Comprehensive şablonunda WebSocket URL’leri için).
- Policy Building Learning Mode:
- Manual: Öğrenme önerileri manuel olarak gözden geçirilir ve kabul edilir.
- Automatic: Sistem, trafik analizi sonucu otomatik olarak öğrenme önerilerini uygular.
Tablo 2: Çerez Ayar Şablonu Varsayılanları
Çerez Ayarı | Rating‑Based | Rapid | Fundamental | Comprehensive | API Security |
---|---|---|---|---|---|
Cookie not RFC‑compliant | Alarm & Block | Alarm & Block | Alarm & Block | Alarm & Block | Alarm & Block |
Modified WAF Cookie | Alarm & Block | Alarm & Block | Alarm & Block | Alarm & Block | Alarm & Block |
Modified domain cookie(s) | Alarm | Disabled | Disabled | Disabled | Disabled |
Expired Timestamp | Disabled | Disabled | Disabled | Disabled | Disabled |
Illegal Cookie Length | Alarm | Disabled | Disabled | Disabled | Disabled |
Ek Açıklamalar (Çerez Ayarları)
- Cookie not RFC‑compliant:
- Anlamı: HTTP çerezlerinin standart RFC tanımlarına uygun olmaması durumunda tetiklenir.
- İşlev: Tüm şablonlarda “Alarm & Block” seçeneği, uygunsuz çerez algılandığında önce alarm verir, ardından isteği engeller. Böylece potansiyel saldırılar önlenir.
- Modified WAF Cookie:
- Anlamı: Güvenlik duvarı (WAF) tarafından oluşturulan çerezin istemci tarafından değiştirilmiş olması durumunu tespit eder.
- İşlev: Her durumda alarm verip isteği engelleyerek, çerez manipülasyonuna karşı koruma sağlar.
- Modified domain cookie(s):
- Anlamı: Çerez değerlerinin etki alanı bilgileri değiştirilmişse bu durum değerlendirilir.
- İşlev:
- Rating‑Based: Bu durum alarm oluşturur.
- Diğer şablonlarda ise bu kontrol devre dışı bırakılır (Disabled), çünkü bazı durumlarda domain değişiklikleri meşru olabilir.
- Expired Timestamp:
- Anlamı: Çerez içindeki zaman damgasının süresinin dolması.
- İşlev: Tüm şablonlarda bu kontrol devre dışı bırakılmıştır; yani, çerez süresi dolsa bile ek bir alarm veya bloklama yapılmaz.
- Illegal Cookie Length:
- Anlamı: Çerez uzunluğunun tanımlanan sınırları aşması.
- İşlev:
- Rating‑Based: Uygunsuz uzunluk tespit edildiğinde alarm verilir.
- Diğer şablonlarda bu kontrol kapalıdır (Disabled), çünkü uygulamanın trafiğine göre uzunluk sınırları farklılık gösterebilir.