Auswirkungen
Das Fehlen von Sicherheitsheadern ermöglicht es Angreifern, Clickjacking durchzuführen, Sitzungscookies zu stehlen oder Cross-Site-Scripting auszuführen (XSS) [S1]. Ohne diese Anweisungen können Browser keine Sicherheitsgrenzen durchsetzen, was zu potenzieller Datenexfiltration und unbefugten Benutzeraktionen [S2] führt.
Grundursache
Das Problem ist darauf zurückzuführen, dass Webserver oder Anwendungsframeworks nicht so konfiguriert wurden, dass sie Standard-HTTP-Sicherheitsheader enthalten. Während bei der Entwicklung häufig funktionales HTML und CSS [S1] im Vordergrund stehen, werden Sicherheitskonfigurationen häufig weggelassen. Auditing-Tools wie das MDN Observatory sind darauf ausgelegt, diese fehlenden Verteidigungsschichten zu erkennen und sicherzustellen, dass die Interaktion zwischen Browser und Server sicher ist [S2].
Technische Details
Sicherheitsheader stellen dem Browser spezifische Sicherheitsanweisungen zur Verfügung, um häufige Schwachstellen zu mindern:
- Inhaltssicherheitsrichtlinie (CSP): Steuert, welche Ressourcen geladen werden können, und verhindert so die unbefugte Skriptausführung und Dateninjektion [S1].
- Strict-Transport-Security (HSTS): Stellt sicher, dass der Browser nur über sichere HTTPS-Verbindungen kommuniziert [S2].
- X-Frame-Optionen: Verhindert, dass die Anwendung in einem Iframe gerendert wird, was eine primäre Verteidigung gegen Clickjacking darstellt [S1].
- X-Content-Type-Options: Verhindert, dass der Browser Dateien als einen anderen MIME-Typ als den angegebenen interpretiert, und stoppt MIME-Sniffing-Angriffe [S2].
Wie FixVibe darauf testet
FixVibe konnte dies erkennen, indem es die HTTP-Antwortheader einer Webanwendung analysierte. Durch den Vergleich der Ergebnisse mit den MDN Observatory-Standards [S2] und FixVibe können fehlende oder falsch konfigurierte Header wie CSP, HSTS und X-Frame-Options gekennzeichnet werden.
Fix
Aktualisieren Sie den Webserver (z. B. Nginx, Apache) oder die Anwendungs-Middleware, um im Rahmen einer standardmäßigen Sicherheitslage die folgenden Header in alle Antworten aufzunehmen [S1]:
- Content-Security-Policy: Ressourcenquellen auf vertrauenswürdige Domänen beschränken.
- Strict-Transport-Security: Erzwingen Sie HTTPS mit einem langen
max-age. - X-Content-Type-Options: Auf
nosniff[S2] setzen. - X-Frame-Optionen: Auf
DENYoderSAMEORIGINeinstellen, um Clickjacking zu verhindern. [S1].
