X-Content-Type-Options Nedir Nasıl Uygulanır?
X-Content-Type-Options HTTP başlığı, web tarayıcılarına, sunucudan gelen içeriğin MIME türünü değiştirmemelerini ve bu türü varsayılan olarak kullanmalarını söyler. Bu başlık genellikle güvenlik amacıyla kullanılır ve içerik türü üzerinde beklenmeyen değişikliklerin yapılmasını engeller.
X-Content-Type-Options başlığının en yaygın olarak kullanılan değeri “nosniff”tir. Bu değeri ayarlamak, tarayıcının sunucudan aldığı MIME türünü anlaması ve bu türü değiştirmeden içeriği güvenli bir şekilde işlemesi gerektiğini belirtir. Özellikle, tarayıcıların içerik türüyle uyumsuz bir şekilde içeriği işlemeye çalışmasını engeller. Bu, Cross-Site Scripting (XSS) gibi güvenlik açıklarına karşı koruma sağlar.
X-Content-Type-Options Nasıl Kullanılır?
Bu başlığı bir HTTP yanıtında ayarlamak için sunucu yapılandırmanızı değiştirmeniz gerekir. İşte bazı popüler sunucularda nasıl yapılandırılacağına dair örnekler:
Apache: Apache web sunucusunda “X-Content-Type-Options” başlığını eklemek için, httpd.conf veya .htaccess dosyanıza şu satırı ekleyebilirsiniz:
Header set X-Content-Type-Options "nosniff"
Nginx: Nginx web sunucusunda, genellikle nginx.conf dosyasında veya ilgili sanal sunucu yapılandırma dosyanızda aşağıdaki satırı ekleyebilirsiniz:
add_header X-Content-Type-Options "nosniff";
IIS (Internet Information Services):IIS kullanıyorsanız, “X-Content-Type-Options” başlığını web.config dosyanıza şu şekilde ekleyebilirsiniz:
<system.webServer> <httpProtocol> <customHeaders> <add name="X-Content-Type-Options" value="nosniff" /> </customHeaders> </httpProtocol> </system.webServer>
Node.js (Express): Express.js kullanıyorsanız, helmet kütüphanesi aracılığıyla bu başlığı kolayca ekleyebilirsiniz:
const helmet = require('helmet'); const express = require('express'); const app = express(); app.use(helmet()); app.use(helmet.noSniff());
Kullanımın Faydaları
- Güvenlik: MIME türü sniffing (tarayıcıların içeriği analiz ederek türünü tahmin etmesi) saldırılarına karşı koruma sağlar.
- Öngörülebilirlik: İçeriğin belirtilen MIME türüyle uygun şekilde işlenmesini sağlar.
Başlık doğru şekilde ayarlandığında, web uygulamanızın güvenliğini artırır ve tarayıcıların içerik türünü değiştirme riskini azaltır.
X-Content-Type-Options Nasıl Kontrol Edilir?
Web sitenizde hosting sağlayıcınızın sunucu genelinde aktif ettiği bir X-Content-Type-Options güvenliği olabilir.Bunun aktif olup olmadığını https://securityheaders.com sitesinden kontrol edebilirsiniz. Bu site sadece X-Content-Type-Options olup olmadığını değil, diğer gerekli güvenlik HTTP Headers kontrollerini de yapar. Aktif olmadığını görürseniz yukarıda verilen kodları sitenize uygulayarak gerekli ayarı yapabilirsiniz.