HTTP-Header sind ein Teil des HTTP-Protokolls, in dem Parameter und Argumente wie bespielsweise die gewünschte Sprache oder der gewünschte Zeichensatz, Möglichkeiten zum Zwischenspeichern von Inhalten (Caching), Informationen über Client und Server sowie sicherheitsrelevante Einstellungen übermittelt werden.
Der Begriff HTTP-Header bezeichnet umgangssprachlich sowohl die einzelnen Headerfelder, als auch den Headerblock, der diese Felder enthält.
Aufbau und Verwendung
Die einzelnen Felder im Header werden immer nach der Request-Zeile (z. B. GET /index.html HTTP/1.1
) bzw. der Response-Zeile (bei Erfolg HTTP/1.1 200 OK
) übermittelt. Die Zeilen des Headers selbst sind Schlüssel-Wert-Paare, getrennt durch Doppelpunkte (z. B. Content-type: text/html
).
Standardisierte und erweiterte Benennung
Die Namen der HTTP-Header sind durch verschiedene Standards fest spezifiziert, zusätzlich können Hersteller oder Projekte zusätzliche Erweiterungen in ihre Software einbauen. Diese erweiterten HTTP-Header werden durch ein vorangestelltes "X-" gekennzeichnet. Zu diesen Headern zählen auch sicherheitsrelevante HTTP-Header wie beispielsweise X-XSS-Protection
oder X-Content-Type-Options
.
HTTP Header mit wao.io
Mit wao.io lassen sich sinnvolle HTTP-Header setzen bzw. gefährliche Header entfernen, ohne an der Konfiguration des eigenen Webservers Änderungen vornehmen zu müssen. So lassen sich zusätzliche Sicherheitsmaßnahmen, wie das Erzwingen des verschlüsselten HTTPS-Protokolls mithilfe des HTTP-Headers Strict-Transport-Security oder der Schutz vor Cross-Site-Scripting-Angriffen mithilfe des HTTP-Headers X-XSS-Protection
.
Header, die Informationen zur verwendeten Server-Software und deren Versionen liefern, beispielsweise der Server
-Header, können ein Sicherheitsrisiko darstellen, da sie indirekt Hinweise auf bekannte Sicherheitslücken der verwendeten Software geben. Daher bietet wao.io die Möglichkeit, ausgehende Informationen über den eigenen Server zu entfernen.