X-Content-Type-Options

Der Header X-Content-Type-Option in HTTP-Antworten wird vom Server dazu benutzt, um anzuzeigen, dass MIME-Typen, so wie sie in den Content-Type-Headern angegeben sind, nicht geändert und somit befolgt werden sollen. Damit lässt sich MIME type sniffing ausschließen. Oder anders gesagt: es zeigt, dass die Web-Admins wissen, was sie tun.

Der Header wurde von Microsoft mit dem IE 8 eingeführt, damit Web-Admins die automatische Inhaltserkennung ausschalten können. Die automatische Erkennung konnte dazu führen, dass Inhalt fälschlich als ausführbarer MIME-Typ erkannt wird. Inzwischen haben andere Browser diese Option übernommen, auch wenn deren Erkennungsalgorithmen von vorneherein vorsichtiger waren.

Bei Sicherheits-Audits wird im Allgemeinen erwartet, dass dieser Header gesetzt ist.

Anmerkung: nosniff gilt nur für "script"- und "style"-Typen. Gleichzeitig wird auch Cross-Origin Read Blocking (CORB) für HTML-, TXT-, JSON- und XML- Dateien (ausgenommen SVG bzw. image/svg+xml) aktiviert. Das Anwenden von nosniff bei Bildern erwies sich als inkompatibel zu bestehenden Webseiten.

Art des Headers Antwort-Header
Unzulässiger Header-Name Nein

Syntax

X-Content-Type-Options: nosniff

Direktiven

nosniff
Verhindert eine Anfrage, wenn der angeforderte Typ
  • "style" und der MIME-Typ nicht  "text/css" ist, oder
  • "script" und der MIME-Typ kein JavaScript-MIME-Typ ist.

Aktiviert außerdem Cross-Origin Read Blocking für folgende MIME-Typen:

  • text/html
  • text/plain
  • text/json, application/json und alle anderen MIME-Typen mit JSON-Erweiterung: */*+json
  • text/xml, application/xml und alle anderen MIME-Typen mit XML-Erweiterung: */*+xml (ausgenommen image/svg+xml)

Spezifikationen

Spezifikation Status Anmerkung
Fetch
Die Definition von 'X-Content-Type-Options definition' in dieser Spezifikation.
Lebender Standard Erste Version

Browser-Kompatibilität

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid WebviewChrome für AndroidFirefox für AndroidOpera für AndroidSafari auf iOSSamsung Internet
X-Content-Type-Options
Nicht standardisiert
Chrome Vollständige Unterstützung 64
Vollständige Unterstützung 64
Teilweise Unterstützung 1
Hinweise
Hinweise Not supported for stylesheets.
Edge Vollständige Unterstützung JaFirefox Vollständige Unterstützung 50IE Vollständige Unterstützung 8Opera Vollständige Unterstützung JaSafari Keine Unterstützung NeinWebView Android Vollständige Unterstützung 64
Vollständige Unterstützung 64
Teilweise Unterstützung Teilweise
Hinweise
Hinweise Not supported for stylesheets.
Chrome Android Vollständige Unterstützung 64
Vollständige Unterstützung 64
Teilweise Unterstützung Teilweise
Hinweise
Hinweise Not supported for stylesheets.
Firefox Android Vollständige Unterstützung 50Opera Android Vollständige Unterstützung JaSafari iOS Keine Unterstützung NeinSamsung Internet Android Vollständige Unterstützung Ja

Legende

Vollständige Unterstützung  
Vollständige Unterstützung
Keine Unterstützung  
Keine Unterstützung
Nicht standardisiert. Erwarte schlechte browserübergreifende Unterstützung.
Nicht standardisiert. Erwarte schlechte browserübergreifende Unterstützung.
Siehe Implementierungshinweise.
Siehe Implementierungshinweise.

Siehe auch