Was sind Security Headers?
Sicherheits-Header sind HTTP-Antwort-Header, die Browser anweisen, wie man sich beim Umgang mit den Inhalten einer Website verhalten und den Schutz gegen gemeinsame Web-Schwachstellen verbessern kann. Diese Header helfen, Angriffe wie Cross-Site-Skripting (XSS), Clickjacking, Content-Injektion und Protokoll Downgrade-Angriffe zu verhindern. Richtig konfigurierte Sicherheits-Header sind für Verteidigungs-in-Tief-Sicherheitsstrategien unerlässlich.Grundlegende Sicherheitsköpfe
Strict-Transport-Security (HSTS)
Zeigt HTTPS-Verbindungen an:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
- Verhindert Protokollabbau-Angriffe
- Blöcke gemischter Inhalt
- Schützt gegen SSL Stripping
Content-Security-Policy (CSP)
Steuerung der Ressourcenbeladung:
Content-Security-Policy: default-src 'self'; script-src 'self' trusted.com; style-src 'self' 'unsafe-inline'
- Verhindert XSS Angriffe
- Steuerung von Skriptquellen
- Blockiert unbefugte Ressourcen
X-Frame-Optionen
Verhindert Clickjacking:
X-Frame-Options: DENY
X-Frame-Options: SAMEORIGIN
- Blocks Website von gerahmt werden
- Schützt gegen UI Redressing
X-Content-Type-Optionen
Verhindert MIME Schniffing:
X-Content-Type-Options: nosniff
- Erzwingt Browser, erklärten Content-Type zu respektieren
- Verhindert die Skriptinjektion über falsch interpretierte Dateien
Zusätzliche Sicherheitsköpfe
| Kopf | Zweck | Beispielwert |
|---|---|---|
| X-XSS-Schutz | XSS-Filter (Rechtheit) | 1; mode=block |
| Referrer-Policy | Steuerreferat Informationen | Strenge-Ursprung-Ursprung |
| Genehmigungen-Policy | Einschränkungen des Angebots | Geolocation=(), Kamera=() |
| Cross-Origin-Opener-Policy | Prozessisolation | Gleicher Ursprung |
| Cross-Origin-Embedder-Policy | Ressourcenisolation | Vorsatzkorp |
Durchführungsbeispiele
Nginx Konfiguration
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Content-Security-Policy "default-src 'self'" always;
Apache Configuration
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Sicherheitsleiter und Domain Health
Warum Headers Materie für Domains
- Schützen Sie Benutzer, die Ihre Domain besuchen
- Domänenreputationsschaden verhindern
- Compliance-Anforderungen erfüllen
- Verteidigung gegen gemeinsame Angriffe
Testing Security Headers
Tools zur Überprüfung der Implementierung:
- securityheaders.com
- Mozilla Observatory
- SSL Labs
- Chrome DevTools Netzwerk Tab
Bewährte Praktiken
1. Start mit HSTS: Wesentlich für die HTTPS Durchsetzung
2. **Implementieren CSP nach und nach*: Beginnen Sie mit Report-only-Modus
3. Test gründlich: Headers können Funktionalität brechen
4. **Benutze Vorladelisten*: Zu den Browser-Vorladungslisten eintragen
5. Verstöße: CSP Reporting Endpunkte verwenden
6. **Regular Audits*: Sicherheitsanforderungen entwickeln
Gemeinsame Einstufungskriterien
| Grad | Typische Anforderungen |
|---|---|
| A+ | Alle kritischen Header, HSTS Vorladung |
| A | HSTS, CSP, X-Frame-Optionen, X-Content-Type |
| B. | Einige Header fehlen |
| C/D | Minimaler Sicherheitskopf |
| F | Kein Sicherheitskopf |
Sicherheits-Header stellen eine kritische Schicht der Web-Anwendungssicherheit dar und bieten Browser-verstärkten Schutz, der serverseitige Sicherheitsmaßnahmen ergänzt.