ModSecurity ile HttpOnly ve Secure Flag Eksikliğini Giderme

ModSecurity ile web güvenlik açıklarının engellenmesi hakkındaki yazı dizimizin bu bölümünde ModSecurity kullanarak web uygulamalarında oturumlara ve kritik işlemlere ait çerezlerin güvenliğini sağlayan HttpOnly ve Secure Flag kullanımının unutulması ya da kullanılmaması sonucu oluşan güvenlik açığını gidermenin yolundan bahsedeceğiz.

 

HttpOnly ve Secure Flag Nedir?

HttpOnly flag, web uygulamasında bulunan XSS zafiyetinin sömürülmesiyle yoluyla JavaScript’in oturum çerezlerini okuyamamasını sağlayan oldukça etkili bir çerez koruma yöntemidir. Secure flag ise oturum çerezlerinin sadece güvenlik kanal olan HTTPS üzerinden gönderilmesini sağlayacak şekilde işaretleyen bir çerez koruma mekanizmasıdır. Secure flag, aynı anda hem HTTP hem de HTTPS ile çalışan sitelerde saldırganın kullanıcıyı HTTP bağlantıyı kullanmaya zorlayarak oturum çerezlerini elde etmesini engelleyerek bu kritik çerezlerin sadece HTTPS üzerinden gönderilmesini zorlar. Web uygulamalarında httponly ve secure flag yöntemlerinin kullanılmaması sonucunda web uygulama kullanıcılarının halka açık kablosuz internet ağlarını kullandığı sırada ve/veya uygulamanın XSS ve CSRF gibi zafiyetleri barındırmasından ötürü başta oturum çerezleri olmak üzere tüm kritik çerezlerini kaptırma tehlikesiyle karşı karşıya kalır.

Yazı dizimizin bu bölümünde ModSecurity ile httponly ve secure flag kullanımından bahsediyoruz. Bu yazıda High-Tech Bridge ve InfoSec Institute blog referans olarak alınmıştır.

 

— BÖLÜM 6: ModSecurity ile HttpOnly ve Secure Flag Eksikliğini Giderme —

ModSecurity CRS, “sessid”, “phpsessid” veya “sessionid” gibi bilinen ortak oturum çerezleri için httponly ve secure flag’i otomatik olarak ayarlayan “modsecurity_crs_55_application_defects.conf” adlı kural setine sahiptir. Fakat bu kural seti otomatik olarak kapalı yani pasif gelmektedir. Eğer web uygulamanızda bilinen ortak çerez isimlerinden farklı olarak isimler kullanıyorsanız, bu ModSecurity kural seti gerek korumayı yapmayacaktır. Bu yüzden uygulamanıza özel olan çerezler için özel ModSecurity kuralı yazmak gerekecektir. Bunun için alttaki kuraldan yararlanılabilir:

mod_headers_custom_rules.conf

Header edit Set-Cookie "^((?i:SizinCerezinAdi=(?i:(?!httponly).)+))$" "$1; HttpOnly"

Yukarıdaki örnekten de görüldüğü üzere ModSecurity çerez yönetimi de yapabilmektedir. Tabii her zaman için en iyi yol, bunun doğrudan web uygulamasının içinde yapılmasıdır.

Yazı dizimizin bir sonraki bölümünde görüşmek üzere…

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir