X-Content-Type-Options
L'entête X-Content-Type-Options
est un marqueur utilisé par le serveur pour indiquer que les types MIME annoncés dans les en-têtes Content-Type
ne doivent pas être modifiés ou et suivis. Cela permet de se détacher du sniffing de type MIME, ou, en d'autres termes, c'est une façon de dire que les webmasters savaient ce qu'ils faisaient.
Cet en-tête a été introduit par Microsoft dans IE 8 comme un moyen pour les webmasters de bloquer le reniflement de contenu qui se passait et pouvait transformer les types MIME non exécutables en types MIME exécutables. Depuis, d'autres navigateurs l'ont introduit, même si leurs algorithmes de reniflage MIME étaient moins agressifs.
À partir de Firefox 72, la désactivation du reniflement MIME est également appliqué aux documents de premier niveau si un Content-type
est fourni. Les pages web HTML qui sont servies avec un type MIME différent de text/html
, peuvent alors être juste téléchargées au lieu d'êtres rendues (interprétées et affichées par le navigateur). Assurez vous de valoriser correctement ces 2 en-têtes.
Les testeurs de sécurité du site s'attendent généralement à ce que cet en-tête soit défini.
Note : X-Content-Type-Options
ne s'appliquent qu'au blocage des demandes par nosniff
pour les destinations de demandes de "script
" et "style
". Il permet également le blocage en lecture croisé (CORB) pour les fichiers HTML, TXT, JSON, et XML (à l'exception des images SVG image/svg+xml
).
Header type | Response header |
---|---|
Forbidden header name | Non |
Syntaxe
X-Content-Type-Options: nosniff
Directives
nosniff
-
Bloque une requête si la destination de la requête est de type
- "
style
" et le MIME n'est pas de typetext/css
, ou - "
script
" et le MIME n'est pas de type JavaScript MIME type
Permet le blocage de la lecture croisée pour les types MIME
text/html
text/plain
text/json
,application/json
ou tout autre type avec une extension JSON:*/*+json
text/xml
,application/xml
ou tout autre type avec une extension XML:*/*+xml
(horsimage/svg+xml
)
- "
Spécifications
Specification |
---|
Fetch Standard # x-content-type-options-header |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
Content-Type
- La définition originale de X-Content-Type-Options par Microsoft.
- L'Outil Observatoire Mozilla teste la configuration (y compris en-tête) des sites Web pour la sécurité et la sûreté.
- Atténuer les attaques MIME Confusion dans Firefox.
- Blocage de la lecture croisée (CORB)
- Google Docs CORB explicatif