Sunucu kimliği maskeleme
Saldırganların yavaşlamasına ve karıştırılmasına yardımcı olan bir teknik, web sunucusu kimlik değişikliğidir. Web sunucuları kimliklerini genellikle Sunucu üstbilgisindeki her HTTP yanıtıyla gönderir. Apache, özellikle varsayılan olarak adını ve tam sürümünü göndermekle kalmaz, aynı zamanda sunucu modüllerinin sürümlerini de eklemesine izin verir.
Apache web sunucusunun kimliğini değiştirmek için kaynak koduna gitmeli, "Apache" isminin sabit kodlandığı yeri bulmalı, değiştirmeli ve sunucuyu yeniden derlemelisiniz. Aynı etki,
SecServerSignature yönergesi:
SecServerSignature "Microsoft-IIS/5.0"
Her ne kadar bu oldukça iyi çalışsa da, yetenekli saldırganların (ve araçların) web sunucusunu "parmak izi" için başka teknikler kullanabileceği unutulmamalıdır. Örneğin, varsayılan dosyalar, hata mesajı, giden üstbilgilerin sırası, sunucunun belirli isteklere yanıt verme şekli ve benzerleri - hepsi gerçek kimliği verebilir. Mod_security'in gelecekteki sürümlerinde kimlik maskeleme desteğini daha da artıracağım.
Apache imzasını değiştirirseniz ancak hata günlüğündeki garip mesajdan rahatsız olursanız (bazı modüller hala görülebilir - bu sadece hata günlüğünü etkiler, dışarıdan beklendiği gibi çalışır):
[Fri Jun 11 04:02:28 2004] [notice]
Microsoft-IIS/5.0 mod_ssl/2.8.12
OpenSSL/0.9.6b \ configured --
resuming normal operations
Daha sonra mod_security'nin en son çalışmasına izin vermek için modülleri yükleme sırasını yeniden ayarlamanız gerekir.
Not
Bu direktifin çalışması için ServerTokens'i Tam olarak bırakmanız / ayarlamanız gerekir.
SecServerSignature yönergesi ortak sunucu imzasını değiştirmek için kullanıldığında, ModSecurity gerçek imzayı hata günlüğüne yazmaya başlayarak web sunucusunu ve kullanılan modülleri tanımlamanızı sağlar.