Praktische Leitfäden zur Sicherheitsimplementierung
Nutzer geben auf Websites häufig sensible Daten ein, etwa Namen, Adressen, Passwörter und Bankdaten. Als Webentwickler ist es entscheidend, diese Informationen vor böswilligen Akteuren zu schützen, die eine Vielzahl von Exploits nutzen, um solche Informationen zu stehlen und sie zum persönlichen Vorteil zu verwenden. Der Schwerpunkt der Websicherheit liegt darauf, Sie dabei zu unterstützen, Ihre Website vor diesen Exploits zu schützen und die sensiblen Daten Ihrer Nutzer zu sichern.
Diese Seite listet Leitfäden auf, die einige Best Practices für die Implementierung von Sicherheitsfunktionen auf Websites zusammenfassen. Obwohl diese Leitfäden nicht alle möglichen Sicherheitsszenarien abdecken und keine vollständige Sicherheit Ihrer Website garantieren können, werden Ihre Websites durch das Befolgen der Informationen und Best Practices in diesen Leitfäden deutlich sicherer.
Grundlagen der HTTP-Sicherheit
Die Leitfäden in diesem Abschnitt fassen Best Practices für die korrekte Implementierung von HTTP-Headern zur Minderung von Sicherheitsproblemen zusammen und stehen in direktem Zusammenhang mit dem Tool HTTP Observatory.
Observatory führt Sicherheitsaudits auf einer Website durch und stellt zusammen mit Empfehlungen zur Behebung der gefundenen Sicherheitsprobleme eine Bewertung und Punktzahl bereit. Diese Leitfäden erklären, wie Probleme behoben werden, die durch die HTTP-Observatory-Tests erkannt werden: Das Tool verlinkt für jedes Problem auf den entsprechenden Leitfaden und hilft Ihnen so bei einer wirksamen Lösung. Interessanterweise verwenden die internen Entwicklerteams von Mozilla diese Hinweise bei der Implementierung von Websites, um sicherzustellen, dass Best Practices für die Sicherheit angewendet werden.
Die Leitfäden in der folgenden Tabelle sind in der Reihenfolge aufgeführt, in der wir empfehlen, die darin beschriebenen Sicherheitsfunktionen zu implementieren. Diese Reihenfolge basiert auf einer Kombination aus den Sicherheitsauswirkungen jeder Funktion und der Einfachheit ihrer Implementierung sowohl aus betrieblicher als auch aus Entwicklungsperspektive. Die Tabelle enthält Informationen über die Auswirkungen jeder Funktion, den Implementierungsaufwand, ob sie erforderlich ist, sowie eine kurze Beschreibung.
| Leitfaden | Auswirkungen | Schwierigkeit | Erforderlich | Beschreibung |
|---|---|---|---|---|
| TLS-Konfiguration | Mittel | Mittel | Ja | Verwenden Sie die sicherste verfügbare Konfiguration von Transport Layer Security (TLS) für Ihre Nutzerbasis. |
| TLS: Laden von Ressourcen | Maximal | Gering | Ja | Laden Sie sowohl passive als auch aktive Ressourcen über HTTPS. |
| TLS: HTTP-Weiterleitung | Maximal | Gering | Ja | Websites müssen zu HTTPS weiterleiten; API-Endpunkte sollten HTTP vollständig deaktivieren. |
| TLS: HSTS-Implementierung | Hoch | Gering | Ja | Informieren Sie User-Agents mittels HTTP Strict Transport Security (HSTS) darüber, dass sie Websites nur über HTTPS verbinden sollen, selbst wenn das ursprünglich gewählte Schema HTTP war. |
| Clickjacking-Prävention | Hoch | Gering | Ja | Steuern Sie, wie Ihre Website innerhalb eines <iframe> eingebettet werden darf, um Clickjacking zu verhindern. |
| CSRF-Prävention | Hoch | Unbekannt | Variiert | Schützen Sie sich vor Angriffen durch Cross-site request forgery (CSRF). |
| Sichere Cookie-Konfiguration | Hoch | Mittel | Ja | Setzen Sie alle Cookies so restriktiv wie möglich. |
| CORP-Implementierung | Hoch | Mittel | Ja | Schützen Sie sich durch die Verwendung von Cross-Origin Resource Policy (CORP) vor spekulativen Side-Channel-Angriffen. |
| Überprüfung von MIME-Typen | Gering | Gering | Nein | Überprüfen Sie, ob alle Ihre Websites für alle Ressourcen die richtigen MIME-Typen festlegen. |
| CSP-Implementierung | Hoch | Hoch | Ja | Ermöglichen Sie mit einer Content Security Policy (CSP) eine detaillierte Kontrolle über den Code, der auf einer Website geladen werden kann, und darüber, was dieser tun darf, und mindern Sie so Schwachstellen durch Cross-site scripting (XSS). |
| CORS-Konfiguration | Hoch | Gering | Ja | Definieren Sie mittels Cross-Origin Resource Sharing (CORS) die nicht gleichen Origins, die auf den Inhalt von Seiten zugreifen und von denen Ressourcen geladen werden dürfen. |
| Konfiguration der Referrer-Richtlinie | Gering | Gering | Ja | Verbessern Sie den Datenschutz für Nutzer und verhindern Sie das Offenlegen interner URLs über den Header Referer. |
| Konfiguration von robots.txt | Gering | Gering | Nein | Teilen Sie Robots, etwa Suchmaschinen-Indexern, mit, wie sie sich verhalten sollen, indem Sie sie anweisen, bestimmte Pfade auf der Website nicht zu crawlen. |
| SRI-Implementierung | Gering | Gering | Nein | Überprüfen Sie mithilfe von Subresource Integrity (SRI), dass abgerufene Ressourcen, beispielsweise von einem CDN, ohne unerwartete Manipulation bereitgestellt werden. |
Sicherheit von Nutzerinformationen
- Anleitung zum Deaktivieren der Formular-Autovervollständigung
-
Formularfelder unterstützen die Autovervollständigung; das heißt, ihre Werte können gespeichert und beim nächsten Besuch eines Nutzers auf Ihrer Website automatisch ausgefüllt werden. Für bestimmte Datentypen möchten Sie diese Funktion möglicherweise deaktivieren; dieser Artikel erklärt, wie das geht.