ModSecurity Yapılandırmasını Test Etme
Test, herhangi bir kurulumu yapılandırmanın önemli bir parçasıdır. ModSecurity kurulumunu test etmek için ModSecurity’e aşağıdaki kuralı eklemeniz ve belirtilen URL’ye erişerek test etmeniz gerekmektedir. Aşağıdaki kuralı “/etc/modsecurity/rules/000-default.conf” içine veya diğer kuralların bulunduğu ilgili konuma ekleyin.
SecRule ARGS:args “@contains test” “id:123456,deny,status:403,msg:’Test Ruleset'”
Apache hizmetini yeniden başlatın ve aşağıdaki bağlantıyı kullanarak aynısını test edin. Ya sunucu IP’sini ya da sunucudaki herhangi bir etki alanını son parametreler aynı tutularak kullanın. ModSecurity kurulumu başarılı olursa kural tetiklenecek ve aşağıdaki ekran görüntüsündeki gibi 403 yasak hatası alacaksınız. Ayrıca, engelleme ile ilgili günlüğü almak için “Test Kural Kümesi” dizesiyle günlükleri kontrol edebilirsiniz.
http://www.xxxx-cxxxes.com/?args=test
tarayıcı hatası
Kural için kayıtgirişi.
ModSecurity’yi Devre Dışı Bırakma veya Beyaz Listeye Alma
Belirli bir etki alanı için ModSecurity kurallarının devre dışı bırakılması, güvenlik önlemlerinin o etki alanının benzersiz gereksinimleriyle uyumlu hale getirilmesine olanak sağladığından, web barındırma kullanıcıları için büyük önem taşır. Etki alanları, URL’ler veya IP adresleri gibi belirli varlıkların beyaz listeye alınması, web barındırma kullanıcılarının belirli bileşenleri ModSecurity’nin kural uygulamasından muaf tutmasına olanak tanır. Bu özelleştirme, uygun bir koruma düzeyini korurken optimum işlevselliği sağlar. Yanlış pozitifleri tetikleyebilecek güvenilir kaynaklar, dahili sistemler veya özel işlevlerle uğraşırken özellikle yararlıdır.
Örneğin, bir ödeme ağ geçidi entegrasyonu, gereksiz güvenlik uyarılarını tetiklemeden kesintisiz işlemleri sağlamak için beyaz listeye alınabilen bir üçüncü taraf hizmetiyle iletişim gerektirebilir.
Bir etki alanı için ModSecurity kurallarının devre dışı bırakılmasının gerekli hale geldiği çok sayıda gerçek hayat örneği vardır. Bir alışveriş sepetine aynı anda birden fazla ürün eklemek gibi karmaşık etkileşimlere dayanan e-ticaret platformlarını düşünün. Bu tür yasal davranışlar yanlışlıkla ModSecurity kurallarını tetikleyebilir ve bu da hatalı pozitif sonuçlara yol açabilir ve kullanıcı deneyimini engelleyebilir.
Ek olarak, içerik yönetim sistemleri genellikle belirli ModSecurity kurallarıyla çatışabilen dosya yükleme yetenekleri gerektirir. Bu etki alanları için kuralları seçerek devre dışı bırakarak, web barındırma kullanıcıları, genel güvenlikten ödün vermeden sorunsuz operasyonlar sağlayabilir.
Öte yandan, belirli ModSecurity kurallarının devre dışı bırakılması uyumluluk sorunlarının ele alınması veya yanlış pozitiflerin önlenmesi için esneklik sağlar. Bazen bazı kurallar, zararsız davranışları yanlış bir şekilde potansiyel tehditler olarak tanımlayabilir ve bu da gereksiz engelleme veya meşru taleplere müdahale ile sonuçlanır. Örneğin, AJAX kullanan bir web uygulaması, pürüzsüz ve kesintisiz bir istemci-sunucu iletişimi sağlamak için seçici kuralın devre dışı bırakılmasını gerektiren ModSecurity’nin katı kuralları nedeniyle yanlış pozitiflerle karşılaşabilir.
Ancak, potansiyel güvenlik açıklarını önlemek için bir denge kurmak ve kural davranışını düzenli olarak gözden geçirmek çok önemlidir. Dikkatli bir yönetimle, belirli etki alanları için ModSecurity kurallarının devre dışı bırakılması, web barındırma kullanıcılarına web sitesi işlevselliğini optimize etme ve ziyaretçileri için güvenli bir tarama deneyimi sağlama yetkisi verir.
Örneğin, belirli bir etki alanı için ModSecurity’yi beyaz listeye eklemek için kullanıcılar, o etki alanını ModSecurity tarafından taranmaktan muaf tutan kuralları yapılandırabilir. Bu, söz konusu etki alanından gelen meşru isteklerin gereksiz yere engellenmemesini veya şüpheli olarak işaretlenmemesini sağlar.
Disable ModSecurity for a specific domain/virtual host. Add the following inside the <VirtualHost> section:
SecRuleEngine Off
</IfModule>
Belirli bir dizin veya URL için ModSecurity’yi beyaz listeye eklemek, web barındırma kullanıcıları için önemlidir. Bu, söz konusu konumu ModSecurity kuralları tarafından kontrol edilmekten hariç tutmalarına olanak tanır. Kullanıcılar, özel kuralları tanımlayarak, o dizine veya URL’ye yapılan meşru isteklerin engellenmemesini veya şüpheli olarak işaretlenmemesini sağlayabilir. Bu, ModSecurity tarafından sağlanan genel güvenlikten yararlanmaya devam ederken web sitelerinin veya API uç noktalarının belirli bölümlerinin işlevselliğini korumaya yardımcı olur.
Belirli bir URL/dizin için ModSecurity’yi devre dışı bırakmak üzere aşağıdaki girişi kullanın:
<IfModule security2_module>
SecRuleEngine Off
</IfModule>
</Directory>
Belirli bir ModSecurity kural kimliğini devre dışı bırakmak, yanlış pozitifler veya uyumluluk sorunlarıyla karşılaştıklarında web barındırma kullanıcıları için yaygın bir uygulamadır. Kullanıcılar, soruna neden olan kural kimliğini belirleyerek ModSecurity yapılandırma dosyasında bunu devre dışı bırakabilir. Örneğin, kural kimliği 123456 yanlış pozitifleri tetikliyorsa, kullanıcılar yapılandırmada söz konusu kuralı yorumlayabilir veya devre dışı bırakabilir. Bu, kuralın meşru taleplere müdahale etmesini önleyen kuralın uygulanmamasını sağlar. Ancak, web sitesini gerçek güvenlik tehditlerine karşı savunmasız bırakabileceğinden, bir kuralı devre dışı bırakmanın etkisini dikkatlice değerlendirmek önemlidir. Herhangi bir değişiklik yapmadan önce ihtiyatlı değerlendirme ve test yapılması önerilir.
Bir URL için belirli bir ModSecurity kural kimliğini devre dışı bırakmak için aşağıdaki kodu kullanabilirsiniz:
<IfModule security2_module>
SecRuleRemoveById 123456
</IfModule>
</LocationMatch>
Belirtilen üç girişin birleşimi, belirli bir URL veya sanal ana bilgisayar için kuralları devre dışı bırakmak için kullanılabilir. Kullanıcılar, özel gereksinimlerine bağlı olarak kuralları kısmen veya tamamen devre dışı bırakma esnekliğine sahiptir. Bu, belirli kuralların belirli URL’lere veya sanal ana bilgisayarlara uygulanmamasını sağlayan kural uygulaması üzerinde ayrıntılı kontrol sağlar.
cPanel’de, ModSecurity kurallarını beyaz listeye almak ve ModSecurity’yi etki alanı/kullanıcı/tüm sunucu vb. için devre dışı bırakmak için ücretsiz bir eklenti (“ConfigServer ModSecurity Control”) bulunmaktadır.
Yazının orijinalini buradan okuyabilirsiniz.

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.