Http Headers
X-Frame-Options
X-Frame-Options başlığı, web güvenliği açısından önemli bir HTTP yanıt başlığıdır ve sunucu tarafından ayarlanır. Web sunucusunun yapılandırma dosyalarına veya uygulamanın kaynak koduna eklenerek kullanılabilir. Tarayıcı, bu başlığı HTTP yanıtında alır ve başlığın belirttiği kurallara göre davranır. Bu başlık tarayıcıda depolanmaz, her sayfa yüklemesinde sunucu tarafından tarayıcıya tekrar gönderilir.
X-Frame-Options Başlığı Değerleri:
- DENY: Sayfanın başka bir sayfa içine gömülmesine izin vermez. Başka siteler veya aynı site bile bu sayfayı iframe içinde gösteremez.
- SAMEORIGIN: Sayfa, sadece kendi domaini altında başka bir sayfaya gömülebilir.
- ALLOW-FROM: Sayfanın belirli bir domain tarafından iframe içinde gömülmesine izin verir. Ancak, bazı tarayıcılar tarafından tam olarak desteklenmemektedir.
X-XSS-Protection
Tarayıcıların Cross-Site Scripting (XSS) saldırılarına karşı bir güvenlik mekanizmasıdır.
Örnek X-XSS-Protection Başlık Değerleri:
- X-XSS-Protection: 1; mode=block — Tarayıcıda XSS korumasını etkinleştirir ve bir XSS saldırısı tespit edilirse saldırıyı engeller.
- X-XSS-Protection: 0 — XSS korumasını devre dışı bırakır. Tarayıcı koruma sağlamaz.
Content Security Policy
CSP, web uygulamalarını XSS gibi saldırılara karşı korumak için kullanılan bir güvenlik mekanizmasıdır. Web sayfasının hangi kaynaklardan içerik yükleyebileceğini belirleyen bir HTTP başlığıdır.
Önemli CSP Direktifleri:
- script-src: JavaScript dosyalarının hangi kaynaklardan yüklenebileceğini belirler.
- style-src: CSS dosyalarının hangi kaynaklardan yüklenebileceğini tanımlar.
- img-src: Görsellerin hangi kaynaklardan yüklenebileceğini belirtir.
- font-src: Font dosyalarının hangi kaynaklardan yüklenebileceğini ayarlar.
- frame-src: Hangi kaynakların iframe içinde yüklenebileceğini belirler.
CSP, clickjacking gibi diğer saldırılara karşı da koruma sağlar. Yanlış yapılandırılmış CSP, güvenlik açıklarına yol açabileceğinden dikkatli ayarlanmalıdır.
X-Content-Type-Options
X-Content-Type-Options, tarayıcılara içeriğin sunucu tarafından belirtilen MIME türü dışında yorumlanmaması gerektiğini bildirir.
Ana Kullanımı:
- nosniff: Tarayıcılara içeriği sadece belirtilen MIME türü ile işlemelerini söyler. Örnek: X-Content-Type-Options: nosniff. Bu başlık özellikle XSS gibi saldırılara karşı koruma sağlar.
Referrer-Policy
Referrer-Policy, web sayfalarının yönlendirme bilgilerini nasıl yöneteceğini belirler.
Değerler:
- no-referrer: Hiçbir referrer bilgisi gönderilmez.
- no-referrer-when-downgrade: HTTPS’den HTTP’ye geçerken referrer bilgisi gönderilmez.
- same-origin: Sadece aynı domain içindeki bağlantılara referrer bilgisi gönderilir.
- origin: Sadece domain bilgisi gönderilir, tam URL değil.
- strict-origin-when-cross-origin: Aynı domain için tam referrer bilgisi, farklı domain için sadece HTTPS’den HTTPS’ye geçişte tam referrer bilgisi gönderilir.
Content-Type
Content-Type, bir isteğin veya yanıtın içeriğinin türünü belirten bir HTTP başlığıdır. Tarayıcılara gönderilen verinin formatını belirtir.
Strict-Transport-Security
HSTS başlığı, bir web sitesinin yalnızca HTTPS kullanılarak erişilmesi gerektiğini tarayıcılara bildirir.
Access-Control-Allow-Origin
CORS mekanizması içinde kullanılan bir HTTP başlığıdır. Bir web sayfasının farklı bir alan adından gelen kaynaklara erişip erişemeyeceğini belirler.
Değerler:
- *: Tüm alan adlarına izin verir.
- Belirli bir alan adı: Örneğin, https://example.com.
Cross-Origin-Opener-Policy
COOP, bir web sayfasının tarayıcı sekmelerindeki diğer sitelerle izinsiz etkileşim kurmasını önler.
Cross-Origin-Resource-Policy
CORP, başka bir kaynaktan içerik yüklemeden önce bu kaynağın güvenli olup olmadığını belirleyen bir güvenlik başlığıdır.
Örnek:
- Cross-Origin-Resource-Policy: same-origin: Sadece aynı domain’den gelen kaynaklar yüklenebilir.
X-Powered-By
X-Powered-By, bir web sunucusunun veya uygulamanın hangi teknolojilerle çalıştığını belirten bir HTTP başlığıdır.
Sec-Fetch Başlıkları
Tarayıcıların kaynakları nasıl talep ettiğini ve güvenli olup olmadığını belirtir.
Önemli Sec-Fetch Başlıkları:
- Sec-Fetch-Site: Kaynağın hangi site üzerinden alındığını belirtir.
- Sec-Fetch-Mode: Kaynağın nasıl talep edildiğini belirtir.
- Sec-Fetch-User: Kaynağın kullanıcı etkileşimiyle talep edilip edilmediğini belirtir.
- Sec-Fetch-Dest: Kaynağın tipi veya hedefi hakkında bilgi verir.