Hızlı cevap: Web sunucu sertleştirme, Nginx ya da Apache gibi bir sunucunun varsayılan yapılandırmasını güvenli hale getirmektir. Temel adımlar: sürüm ve sunucu bilgisini gizlemek, güvenlik başlıklarını (HSTS, CSP, X-Content-Type-Options) eklemek, TLS'i güçlü yapılandırmak, gereksiz HTTP metotlarını ve dizin listelemeyi kapatmak, dosya ve istek boyutlarını sınırlamak ve bir güvenlik duvarı (WAF) ile bilinen saldırıları filtrelemektir. Amaç, uygulama güvenli olsa bile web sunucu katmanının saldırgana kolaylık sağlamamasıdır.

Web sunucu katmanı neden önemli?

Bir web uygulamasının güvenliği yalnızca kodla bitmez. Kodun önünde duran web sunucu (Nginx, Apache), istekleri karşılayan ilk katmandır ve yanlış yapılandırıldığında kendi başına bilgi sızdırır ya da saldırıya kapı aralar. Sürüm bilgisini açıkça yayınlayan, dizin listelemesi açık ya da güvenlik başlıkları eksik bir sunucu, uygulama kusursuz olsa bile saldırgana yardım eder.

Bu yüzden sertleştirme, uygulama güvenliğini tamamlayan ayrı bir katmandır. Web sunucu doğru yapılandırıldığında, saldırganın keşif ve istismar işi zorlaşır.

Sertleştirme kontrol listesi

Alan Önlem
Bilgi sızıntısı Sunucu sürüm ve banner bilgisini gizleme
Güvenlik başlıkları HSTS, CSP, X-Content-Type-Options, Referrer-Policy
TLS Güçlü protokol ve cipher, zayıf sürümleri kapatma
HTTP metotları TRACE ve gereksiz metotları kapatma
Dizin listeleme Otomatik dizin listelemeyi kapatma
İstek sınırları Gövde boyutu, zaman aşımı ve hız sınırı
WAF Bilinen saldırı desenlerini filtreleme
Yetki Sunucu sürecini en az yetkiyle çalıştırma

En sık yapılan hatalar

  • Sunucu sürümünün yanıt başlıklarında açıkça görünmesi, saldırgana keşif kolaylığı.
  • Güvenlik başlıklarının hiç eklenmemesi (HSTS, CSP yok).
  • Dizin listelemenin açık kalması, dosya yapısının sızması.
  • Zayıf TLS sürüm ve cipher'ların açık bırakılması.
  • Web sunucu sürecinin root ile çalıştırılması.

KAOS ve DSET yaklaşımı

DSET, web sunucu katmanının güvenlik denetimini uygulama sızma testiyle birlikte yürütür ve eksik güvenlik başlıklarını, bilgi sızıntısını ve zayıf TLS yapılandırmasını raporlar. Geliştirdiğimiz KAOS güvenlik motoru, web sunucu banner'larını, eksik başlıkları ve açık dizin listelemelerini tespit eder. Bu bulguları gerçek risk önceliğiyle değerlendiririz: her eksik başlık aynı ağırlıkta değildir, önemli olanı öne çıkarırız. Amacımız gürültü değil, saldırgana gerçekten yardım eden yapılandırma hatalarını göstermektir.

Bağlantılı okumalar: TLS SSL yapılandırma sertleştirme, güvenlik yanlış yapılandırması OWASP, Linux sunucu sıkılaştırma CIS, web uygulaması sızma testi OWASP Top 10, kurumsal WordPress güvenliği sertleştirme, clickjacking nedir korunma.

Sık sorulan sorular

Güvenlik başlıkları neden önemli? Güvenlik başlıkları (HSTS, CSP, X-Content-Type-Options gibi), tarayıcıya nasıl davranması gerektiğini söyleyerek birçok saldırıyı zorlaştırır. Örneğin HSTS, bağlantının her zaman şifreli olmasını zorlar; CSP, zararlı betik enjeksiyonunu sınırlar. Bu başlıklar eksik olduğunda, uygulama güvenli olsa bile tarayıcı tarafı saldırılara daha açık kalır.

Sunucu sürümünü gizlemek gerçekten işe yarar mı? Sürüm gizleme tek başına güvenlik sağlamaz, ama saldırganın keşif işini zorlaştırır. Bir saldırgan sunucu sürümünü açıkça gördüğünde, o sürüme özgü bilinen açıkları doğrudan hedefler. Sürümü gizlemek bu kolaylığı kaldırır. Asıl güvenlik yamadadır, ama sürüm gizleme değerli bir ek katmandır.

WAF web sunucu sertleştirmenin yerini alır mı? Hayır, WAF tamamlayıcı bir katmandır. WAF bilinen saldırı desenlerini filtreler ama yanlış yapılandırılmış bir sunucunun temel sorunlarını (bilgi sızıntısı, zayıf TLS, açık dizin listeleme) çözmez. Doğru yaklaşım, sunucuyu sertleştirmek ve WAF'ı ek bir savunma katmanı olarak kullanmaktır.

Kaynaklar

Web sunucu katmanınızın güvenlik denetimi için Ankara Hacettepe Teknokent'teki ekibimizle görüşebilirsiniz. DSET ile iletişime geçin.