Güvenlik başlıkları kontrolü
Herkese açık bir web sitesinin HTTP güvenlik başlıklarını online kontrol et. Bir alan adı gir; sekiz temel güvenlik başlığının son yanıtta nasıl değerlendirildiğini ve gösterilebildiği yerde gözlenen değeri gör.
Genel hedef doğrulanıyor…
—
HTTP güvenlik başlıkları kontrolü en üstte ve açık. Aynı çalıştırmadaki diğer yedi pasif kontrol altında kapalı olarak listelenir.
Değerler kısaltılır ve temizlenir: IP adresleri, cookie değerleri, token’lar ve e-posta adreslerinin kullanıcı adı kısmı çıkarılır, URL’ler şema ve alan adına indirgenir.
Kodlama ajanın düzeltsin, sonra yeniden tara.
Bu hedefi Sitelemetry’ye taşı, Codex veya Claude’u bağla, sınırlandırılmış bir düzeltme promptu üret ve aynı kontrolleri yeniden çalıştır.
Her başlık ne yapar ve nasıl değerlendirilir
Bu kontrol, bu başlıkları tek bir yanıtta okur. Satırların çoğu varlık kontrolüdür: gönderilen başlık sayılır ve değeri mümkün olduğunda gösterilir; böylece sitene uyup uymadığına sen karar verebilirsin.
| Başlık | Ne yapar | İyi bir ayar | Bu kontrol nasıl değerlendirir |
|---|---|---|---|
Strict-Transport-Security | Geri dönen tarayıcıların, düz HTTP ile herhangi bir istek göndermeden önce kendiliğinden HTTPS’e geçmesini sağlar. | Geçiş aşamaları bittikten sonra uzun bir max-age (180 gün veya daha fazla); aşamalar rehberde anlatılır. | HTTPS hedefte yoksa: orta. http:// adresi girdiğinde değerlendirilmez. |
Content-Security-Policy | Tarayıcıya, sayfanın kodu ve içeriği için izin verilen kaynakların listesini verir. | Sayfalarının gerçekten kullandığı kaynaklardan oluşturulmuş, geniş script istisnaları içermeyen bir politika. | Yoksa: orta. Değer gösterilir ama incelenmez. |
X-Frame-Options · frame-ancestors | Başka sitelerin sayfanı kendi çerçevelerinin içinde göstermesini engeller. | CSP içinde frame-ancestors; eski tarayıcılar için yedek olarak X-Frame-Options. | İkisi de yoksa: orta. |
X-Content-Type-Options | Tarayıcının her yanıtın bildirilen içerik türüne güvenmesini sağlar. | Tek değer olarak nosniff. | Yoksa veya başka bir değer varsa: düşük. |
Referrer-Policy | Ziyaretçiler bağlantılarını izlediğinde diğer sitelerin sayfa adresinin hangi kısmını göreceğini sınırlar. | En az güncel tarayıcı varsayılanı kadar sıkı bir politika. | Yoksa: düşük. |
Access-Control-Allow-Origin | Hangi diğer sitelerin script’lerinin yanıtlarını okuyabileceğine karar verir. | Sıradan sayfalarda gönderilmez ya da tek bir güvenilir origin’i belirtir. | Wildcard (*): orta. |
Server · X-Powered-By | Yanıtın arkasındaki yazılımı duyurur. | Kaldırılmış veya genel bir değere indirilmiş. | Herhangi bir Server veya X-Powered-By başlığı: sürüm numarası olmasa bile düşük. Yalnızca tanınan teknoloji adları gösterilir. |
Set-Cookie | Cookie ayarlar; nitelikleri hangi script’lerin onları okuyabileceğini ve ne zaman gönderileceklerini belirler. | Oturum cookie’leri script’lerden gizli ve yalnızca HTTPS üzerinden gönderilir. | Bu yanıtta HttpOnly içermeyen veya HTTPS’te Secure içermeyen bir cookie: orta. SameSite kontrol edilmez ve cookie değerleri hiçbir zaman gösterilmez. |
Permissions-Policy ve Cross-Origin-Opener-Policy bu sayfada değerlendirilmez. Yayına hazırlık snapshot’ı onları yalnızca ayrı sertleştirme notunda sayar.
Her durum nasıl okunur.
- 01GeçtiBaşlık bulundu ve varlık kontrolünü karşılıyor.
- 02Düşük · Orta · YüksekBir şey eksik ya da bu kontrolün işaretlediği bir şekilde ayarlanmış. Seviye, tam snapshot’ın kullandığıyla aynıdır.
- 03GözlendiBir değer kaydedildi, ancak kontrol ne geçti ne de bulgu üretti.
- 04GözlenmediKontrol çalıştı ama kaydedilecek bir şey yoktu; örneğin yanıtta cookie yoktu.
- 05UygulanmazKontrol uygulanmaz; örneğin http:// adresi girdiğinde HSTS.
- 06ÖlçülmediKullanılabilir bir yanıt alınamadı, bu yüzden kontrol geçti sayılmaz.
Bu kontrolün yapmadıkları.
- 01Yalnızca girdiğin origin’in ana sayfasını ister. Path ve query bilgisi atılır, başka sayfa istenmez.
- 02Çoğunlukla bir başlığın var olup olmadığını kontrol eder, değerinin sitene uyup uymadığını değil.
- 03HTTP’den HTTPS’e yönlendirmeyi yalnızca http:// adresini girdiğinde test eder; bu çalıştırma TLS’i atlar ve eksik HSTS başlığını raporlamaz.
- 04Bir zafiyet taraması veya pentest değildir ve saldırı trafiği göndermez.
- 05Sonuç, tek bir yanıtın anlık görüntüsüdür; bir CDN kuralı veya başka bir sayfa farklı başlıklar gönderebilir.
Başlık kontrolü hakkında sorular.
Server: nginx neden sürüm olmadan işaretleniyor?
Herhangi bir Server veya X-Powered-By başlığı düşük olarak değerlendirilir, çünkü ad tek başına ziyaretçilere sitede hangi yazılımın çalıştığını söyler. Platformun izin veriyorsa başlığı kaldır veya genel bir değere indir.
Sonuç neden sunucu yapılandırmamdan farklı?
Kontrol, en fazla beş yönlendirmeden sonra aldığı yanıtı okur. Bir CDN, proxy veya barındırma platformunun eklediği ya da kaldırdığı başlıklar geçerli olanlardır; CDN, proxy veya bot koruması kuralları tarayıcılara bu kontrolden farklı yanıt verebilir.
Sahibi olmadığım bir siteyi kontrol edebilir miyim?
Evet. Başlık kontrolü, sitenin zaten her ziyaretçiye gönderdiği sıradan bir yanıtı okur; tam çalıştırma diğer kontroller için birkaç sıradan istek daha gönderir. Korumalı modüller ve tam denetimler doğrulanmış hedef veya açık yetki gerektirir.
Bu bir zafiyet taraması mı?
Hayır. Yanıt başlıklarının pasif bir kontrolüdür; zafiyet taraması veya pentest değildir ve bir sitenin güvenli olduğunu kanıtlamaz.