Etki
Güvenlik başlıklarının bulunmaması, saldırganların tıklama hırsızlığı yapmasına, oturum çerezlerini çalmasına veya siteler arası komut dosyası çalıştırmasına olanak tanır (XSS) [S1]. Bu talimatlar olmadan tarayıcılar güvenlik sınırlarını uygulayamaz, bu da olası veri sızıntılarına ve yetkisiz kullanıcı eylemlerine yol açar [S2].
Temel Neden
Sorun, web sunucularının veya uygulama çerçevelerinin standart HTTP güvenlik başlıklarını içerecek şekilde yapılandırılmamasından kaynaklanmaktadır. Geliştirme genellikle işlevsel HTML ve CSS [S1]'ye öncelik verirken, güvenlik yapılandırmaları sıklıkla atlanır. MDN Gözlemevi gibi denetim araçları, bu eksik savunma katmanlarını tespit etmek ve tarayıcı ile sunucu arasındaki etkileşimin güvenli olmasını sağlamak için tasarlanmıştır [S2].
Teknik Detaylar
Güvenlik başlıkları, tarayıcıya yaygın güvenlik açıklarını azaltmak için belirli güvenlik yönergeleri sağlar:
- İçerik Güvenliği Politikası (CSP): Hangi kaynakların yüklenebileceğini kontrol ederek yetkisiz komut dosyası yürütülmesini ve [S1] veri enjeksiyonunu önler.
- Sıkı Aktarım Güvenliği (HSTS): Tarayıcının yalnızca [S2] güvenli HTTPS bağlantıları üzerinden iletişim kurmasını sağlar.
- X-Frame-Options: [S1] tıklama hırsızlığına karşı birincil savunma olan uygulamanın iframe'de oluşturulmasını engeller.
- X-Content-Type-Options: Tarayıcının, dosyaları belirtilenden farklı bir MIME türü olarak yorumlamasını önleyerek MIME koklama saldırılarını [S2] durdurur.
FixVibe bunu nasıl test ediyor?
FixVibe, bir web uygulamasının HTTP yanıt başlıklarını analiz ederek bunu tespit edebilir. FixVibe, sonuçları MDN Gözlemevi standartları [S2] ile karşılaştırarak, CSP, HSTS ve X-Frame-Options gibi eksik veya yanlış yapılandırılmış başlıkları işaretleyebilir.
Düzelt
Standart güvenlik duruşu [S1]'nin bir parçası olarak web sunucusunu (örn. Nginx, Apache) veya uygulama ara yazılımını tüm yanıtlara aşağıdaki başlıkları içerecek şekilde güncelleyin:
- İçerik-Güvenlik-Politikası: Kaynak kaynaklarını güvenilir alanlarla sınırlandırın.
- Katı Taşıma Güvenliği: HTTPS'yi uzun bir
max-ageile zorunlu kılın. - X-İçerik-Türü-Seçenekleri:
nosniff[S2] olarak ayarlayın. - X-Frame Seçenekleri: [S1] tıklama hırsızlığını önlemek için
DENYveyaSAMEORIGINolarak ayarlayın.
