ModSecurity (WAF) Nedir, Ne İşe Yarar?

ModSecurity (WAF) Nedir, Ne İşe Yarar?

Kısaca

ModSecurity, web sitenizin önünde duran ve gelen istekleri kural setlerine göre denetleyen açık kaynaklı bir uygulama güvenlik duvarıdır. Asıl koruma kuralları OWASP CRS ile gelir; motor ile kural setini ayrı düşünmek doğru kurulumun anahtarıdır. Doğru ayarlandığında SQL injection, XSS ve dosya dahil etme gibi saldırıların büyük bölümünü uygulamaya ulaşmadan durdurur.

  • ModSecurity bir motor, OWASP CRS ise içine yüklenen kural setidir; ikisi birlikte çalışır.
  • Kuruluma her zaman DetectionOnly moduyla başlayın, yanlış pozitifleri ayıklayın, sonra engellemeyi açın.
  • CRS v4 ile gelen anomali puanlama ve paranoya seviyeleri, koruma ile yanlış alarm dengesini elinizde tutar.

ModSecurity, web uygulamalarını saldırılara karşı koruyan açık kaynaklı bir Web Uygulama Güvenlik Duvarı (WAF) motorudur. Gelen HTTP isteklerini ve giden yanıtları belirli kurallara göre denetler; SQL injection, XSS, dosya dahil etme gibi yaygın saldırı kalıplarını tespit edip engeller. Apache, Nginx ve IIS ile birlikte çalışır. Bu yazıda ModSecurity’nin ne olduğunu, OWASP CRS ile ilişkisini, anomali puanlama mantığını ve pratikte nasıl kullanıldığını baştan sona açıklıyoruz.

ModSecurity’yi kurup yapılandırmak için web sunucunuza tam erişiminizin olduğu bir VPS/sunucu idealdir. Paylaşımlı barındırma kullanıyorsanız WAF genellikle sağlayıcı tarafından sunucu seviyesinde işletilir; kendi kurallarınızı yönetmek istiyorsanız kök erişimine ihtiyacınız olur.

WAF Nedir, ModSecurity Bunun Neresinde?

WAF (Web Application Firewall), klasik ağ güvenlik duvarından farklı olarak HTTP/HTTPS katmanında çalışır. Ağ güvenlik duvarı “hangi portlar açık” sorusuyla ilgilenirken, WAF “bu isteğin gövdesinde, başlığında veya URL’sinde tehlikeli bir kalıp var mı” sorusuna yanıt verir. ModSecurity, bu işi yapan en yaygın açık kaynaklı WAF motorudur. 2002’den bu yana geliştirilen proje, uzun yıllar Trustwave çatısı altında büyüdü ve 2025 yılında resmen OWASP Vakfı’na devredildi. Bugün ModSecurity, OWASP CRS ve modern Go tabanlı Coraza motoru aynı çatı altında geliştiriliyor.

ModSecurity Ne İşe Yarar?

Bir web sitesi, doğrudan kod hatalarından kaynaklanmasa bile sürekli otomatik saldırılara maruz kalır. Botlar internette gezerek bilinen açıkları tarar, form alanlarına zararlı yükler enjekte etmeye çalışır, yönetim panellerine kaba kuvvet dener. ModSecurity, bu saldırıları uygulamanıza ulaşmadan önce HTTP katmanında yakalar. Örneğin bir arama kutusuna SQL injection denemesi gönderildiğinde, ModSecurity bunu kural setine göre tespit edip isteği bloklar. Böylece uygulamanızın önünde ek bir savunma katmanı oluşur.

Mail hosting 1 ay ücretsiz

Tipik kullanım senaryoları:

  • Sanal yama (virtual patching): Uygulamanızda bilinen bir açıklık var ama hemen yama geçemiyorsunuz. ModSecurity ile o açıklık kalıbını geçici olarak WAF seviyesinde engelleyebilirsiniz.
  • OWASP Top 10 savunması: SQL injection, XSS, LFI/RFI, komut enjeksiyonu gibi en yaygın saldırılara karşı hazır kurallar.
  • Trafik görünürlüğü: Hangi isteğin neden engellendiğini ayrıntılı loglar üzerinden görür, saldırı trendlerini izlersiniz.
  • Uyumluluk: PCI DSS gibi bazı standartlar, uygulama önünde bir WAF bulunmasını önerir veya zorunlu kılar.

Motor ve Kural Ayrımı: OWASP CRS

Önemli bir nokta: ModSecurity tek başına yalnızca bir motordur; asıl koruma kuralları ayrıca eklenir. En yaygın kural seti OWASP Core Rule Set (CRS)‘tir. CRS, OWASP Top 10’daki SQL injection, XSS, LFI/RFI gibi saldırılara karşı genel tespit kuralları sunar. Yani “motor = ModSecurity, kurallar = CRS” şeklinde düşünmek gerekir. Motor olmadan kural seti çalışmaz; kural seti olmadan da motor neyi engelleyeceğini bilmez.

CRS bağımsız bir projedir ve hızla güncellenir; güncel sürüm serisi CRS v4‘tür. CRS v4 yalnızca ModSecurity v2 ve v3 ile değil, Go tabanlı Coraza motoruyla da çalışacak şekilde test edilir. Yeni saldırı kalıpları ortaya çıktıkça CRS güncellenir, bu nedenle kural setini güncel tutmak motoru güncel tutmak kadar önemlidir.

Anomali Puanlama Nasıl Çalışır?

Eski yaklaşımda bir kural eşleştiğinde istek doğrudan engellenirdi; bu da çok sayıda yanlış pozitife yol açabiliyordu. CRS v4’teki anomali puanlama (anomaly scoring) modunda her eşleşen kural bir isteğin “tehdit puanını” artırır. İstek işleme sonunda toplam puan eşik değeri (varsayılan 5) aşarsa istek engellenir. Böylece tek bir şüpheli kalıp değil, birikmiş sinyaller karar verir ve yanlış alarmlar belirgin şekilde azalır.

Kurallar ağırlıklarına göre puan üretir: uygulama saldırı kuralları kritik (5), dışarı sızıntı kuralları hata (4), zararlı istemci kuralları uyarı (3), protokol kuralları bildirim (2) puanı ekler.

Paranoya Seviyeleri (Paranoia Level)

CRS, ne kadar sıkı denetim yapacağınızı paranoya seviyeleriyle (PL1-PL4) ayarlamanıza izin verir. Seviye yükseldikçe daha çok şey yakalanır, ama meşru trafiği yanlışlıkla engelleme ihtimali de artar.

Paranoya Seviyesi Koruma Yanlış Pozitif Riski Önerilen Kullanım
PL1 Temel Çok düşük Çoğu standart site için başlangıç
PL2 Orta Düşük E-ticaret, üyelik sistemleri
PL3 Yüksek Orta Hassas veri tutan uygulamalar
PL4 En sıkı Yüksek Yüksek güvenlik gereken özel senaryolar

Pratik tavsiye: PL1 ile başlayın, trafiğinizi izleyin, yanlış pozitifleri ayıkladıkça seviyeyi kademeli yükseltin. Birden PL4’e geçmek neredeyse her zaman meşru trafiği bloklar.

Kurulum Mantığı (Apache)

# 1) ModSecurity motorunu kur (Debian/Ubuntu)
sudo apt install libapache2-mod-security2

# 2) OWASP CRS yi indir, ornek configi etkinlestir
mv crs-setup.conf.example crs-setup.conf

# 3) Apache configine include ekle:
#    Include /etc/crs4/crs-setup.conf
#    Include /etc/crs4/rules/*.conf

# 4) Once sadece izleme modu (asagiya bakin)
#    SecRuleEngine DetectionOnly

sudo systemctl restart apache2

Nginx tarafında ModSecurity bir dinamik modül (connector) olarak yüklenir ve aynı CRS kuralları include edilir. AlmaLinux gibi RHEL türevlerinde kurulum paketleri ve yol adları farklılık gösterse de mantık aynıdır: önce motor, sonra kural seti, sonra izleme, en son engelleme.

Önce DetectionOnly ile Başlayın

ModSecurity’yi ilk kurduğunuzda doğrudan engelleme moduna almayın. Önce SecRuleEngine DetectionOnly ile başlatın: bu modda kurallar yalnızca loglanır, trafik engellenmez. Birkaç gün gerçek trafikle çalıştırıp yanlış pozitifleri (meşru istekleri yanlışlıkla bloklama) ayıkladıktan sonra SecRuleEngine On yaparak gerçek korumayı devreye alın. Bu adımı atlamak, canlı sitede meşru kullanıcıların aniden “403 Forbidden” almasıyla sonuçlanan en yaygın hatadır.

SecRuleEngine Değeri Davranış Ne Zaman
Off Kurallar çalışmaz Geçici devre dışı bırakma
DetectionOnly Sadece loglar, engellemez İlk kurulum ve ayar dönemi
On Loglar ve engeller Yanlış pozitifler temizlendikten sonra

ModSecurity ve Coraza: Motor Seçenekleri

ModSecurity’nin güncel sürümü v3 (libmodsecurity), C/C++ ile yazılmıştır ve Apache, Nginx, IIS ile connector aracılığıyla çalışır. Yanına son yıllarda Coraza adlı, saf Go ile yazılmış modern bir alternatif eklendi. Coraza bulut yerel (cloud-native) dünyaya göre tasarlanmıştır; kütüphane olarak gömülebilir, Caddy, Traefik, HAProxy gibi araçlara eklenti olarak bağlanabilir. İkisi de aynı CRS kurallarını çalıştırır, dolayısıyla kurallarınızı taşımak kolaydır.

Özellik ModSecurity v3 Coraza
Dil C/C++ Go
Olgunluk Çok olgun, yaygın Yeni ama hızla büyüyor
Entegrasyon Apache, Nginx, IIS Caddy, Traefik, gömülü kütüphane
CRS uyumu Evet Evet
Yönetim OWASP OWASP

WAF’in Sınırları ve Doğru Beklenti

ModSecurity güçlü bir katmandır ama sihirli bir kalkan değildir. Doğru beklentiyi kurmak önemli:

  • WAF, güvenli kod yazmanın yerini tutmaz. Uygulama düzeyindeki doğrulama, parametre temizleme ve güncel kütüphaneler hala şarttır.
  • Yanlış pozitifler kaçınılmazdır. Özellikle zengin metin editörleri, dosya yükleme ve karmaşık formlar kuralları tetikleyebilir; istisna (exclusion) yönetimi gerekir.
  • Performansa küçük bir ek yük getirir. Doğru ayarlandığında çoğu sitede etkisi hissedilmez, ancak çok yüksek paranoya seviyelerinde maliyet artar.
  • DDoS koruma aracı değildir. WAF, uygulama katmanı saldırı kalıplarını yakalar; hacimsel saldırılar için ayrı bir anti-DDoS katmanı gerekir.

Alastyr Altyapısında Çoklu Güvenlik Katmanı

Alastyr olarak güvenliği tek bir araca yaslamıyoruz. Sunucularımızda Imunify360 + CageFS ikilisi ile uygulama ve hesap düzeyinde izolasyon ve çift WAF koruması sağlarken, hacimsel saldırılara karşı Voxility 1 Tbps+ L3-L4 anti-DDoS katmanı devrede olur. Kendi VPS veya sunucunuzda ModSecurity’yi dilediği gibi yapılandırmak isteyenler için CloudLinux + CageFS, LiteSpeed ve PHP sürüm seçici barındıran tam kontrollü ortamlar sunuyoruz. Böylece kendi WAF kurallarınız, altyapı seviyesindeki korumaların üzerine ek bir katman olarak eklenir.

Web sunucusuna tam hakim olmak isteyenler VPS/sunucu ve bulut sunucu seçenekleriyle ModSecurity’yi baştan kurabilir; yönetimi bize bırakmak isteyenler ise hazır güvenlik katmanlarının geldiği hosting paketleriyle başlayabilir.

Sıkça Sorulan Sorular

ModSecurity ücretsiz mi?

Evet, hem motor hem de OWASP CRS kural seti açık kaynaklı ve ücretsizdir. Yalnızca kurulum, yapılandırma ve bakım için bir sunucu ve teknik bilgi gerekir.

ModSecurity bir motor mu yoksa kural seti mi?

ModSecurity bir motordur; tek başına neyi engelleyeceğini bilmez. Asıl koruma kuralları OWASP CRS gibi bir kural setiyle gelir. Motor ile kural seti birlikte çalışır.

Apache mi Nginx mi destekliyor?

Her ikisini de destekler; ayrıca IIS ile de çalışır. Nginx ve IIS tarafında ModSecurity dinamik modül (connector) olarak yüklenir, aynı CRS kuralları çalıştırılır.

OWASP CRS nedir?

OWASP Core Rule Set, ModSecurity’nin çalıştırdığı hazır kural setidir. SQL injection, XSS, LFI/RFI gibi yaygın saldırılara karşı genel tespit kuralları sağlar. Güncel sürüm serisi CRS v4’tür.

Paranoya seviyesi (Paranoia Level) ne demek?

CRS’in ne kadar sıkı denetim yapacağını belirleyen ayardır. PL1 en gevşek ve en az yanlış pozitif üretendir; PL4 en sıkıdır ama meşru trafiği engelleme riski yüksektir. PL1 ile başlayıp kademeli yükseltmek önerilir.

Sitemi yavaşlatır mı?

Az miktarda ek yük getirir; doğru ayarla etkisi çoğu sitede önemsizdir. Ancak çok yüksek paranoya seviyeleri ve ağır kural setleri performans maliyetini artırabilir.

Meşru istekler bloklanırsa ne yapmalıyım?

Önce DetectionOnly moduyla başlayıp logları izleyin, yanlış pozitiflere yol açan kuralları istisna (exclusion) ile yönetin, ardından SecRuleEngine On yaparak engellemeyi açın.

ModSecurity DDoS saldırılarını engeller mi?

Hayır, ModSecurity bir uygulama güvenlik duvarıdır; saldırı kalıplarını yakalar. Hacimsel DDoS saldırıları için ayrı bir anti-DDoS katmanı gerekir. Alastyr sunucularında Voxility tabanlı L3-L4 anti-DDoS bu işi üstlenir.

Coraza ModSecurity’nin yerini mi alıyor?

Coraza, Go ile yazılmış modern bir alternatif WAF motorudur ve aynı CRS kurallarını çalıştırır. ModSecurity v3 hala aktif ve çok yaygın; Coraza ise özellikle bulut yerel ortamlar için ek bir seçenektir. İkisi de OWASP çatısı altındadır.

Güvenli Web Sunucusu

WAF gibi güvenlik katmanlarını baştan kurabileceğiniz tam kontrollü, hızlı VPS ve bulut sunucu çözümleri; üstelik Imunify360 ve anti-DDoS korumasıyla.

VPS/Sunucu Çözümleri →

Türkiye'nin En Çok Tavsiye Edilen Domain, Hosting ve Bulut Servis Sağlayıcısı
İnternet sitesi Alastyr İnternet Sitesi
Yazı oluşturuldu 509

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön