Praktische Sicherheitsimplementierungsleitfäden
Benutzer geben häufig sensible Daten auf Websites ein, wie z.B. 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 für persönliche Zwecke zu verwenden. Der Fokus von Web-Sicherheit liegt darauf, Ihnen zu helfen, Ihre Website gegen diese Exploits zu schützen und die sensiblen Daten Ihrer Benutzer zu sichern.
Diese Seite listet Leitfäden auf, die Best Practices für die Implementierung von Sicherheitsfunktionen auf Websites detailliert beschreiben. Auch wenn diese Leitfäden nicht alle möglichen Sicherheitsszenarien abdecken und keine vollständige Sicherheit Ihrer Website garantieren können, wird die Befolgung der Informationen und Best Practices in diesen Leitfäden Ihre Websites deutlich sicherer machen.
Grundlagen der Inhaltssicherheit
Die meisten dieser Leitfäden stehen in direktem Zusammenhang mit dem HTTP Observatory Tool. Observatory führt Sicherheitsprüfungen auf einer Website durch und bietet eine Bewertung und eine Punktzahl sowie Empfehlungen zur Behebung der gefundenen Sicherheitsprobleme. Diese Leitfäden erklären, wie man Probleme löst, die bei den HTTP Observatory Tests festgestellt werden: Das Tool verlinkt zu den relevanten Leitfäden für jedes Problem und hilft Ihnen, eine effektive Lösung zu finden. Interessanterweise verwenden Mozillas interne Entwicklerteams diese Anleitungen beim Implementieren von Websites, um sicherzustellen, dass die besten Sicherheitspraktiken angewandt werden.
Die Leitfäden in der folgenden Tabelle sind in der Reihenfolge aufgelistet, in der wir empfehlen, die beschriebenen Sicherheitsfunktionen zu implementieren. Diese Reihenfolge basiert auf einer Kombination aus der Sicherheitsauswirkung jeder Funktion und der Leichtigkeit ihrer Implementierung aus sowohl operativer als auch entwicklungsbezogener Perspektive. Die Tabelle bietet Informationen über die Auswirkungen jeder Funktion, den Schwierigkeitsgrad der Implementierung, ob sie erforderlich ist oder nicht, und eine kurze Beschreibung.
Leitfaden | Auswirkung | Schwierigkeitsgrad | Erforderlich | Beschreibung |
---|---|---|---|---|
TLS-Konfiguration | Mittel | Mittel | Ja | Verwenden Sie die sicherste verfügbare Transport Layer Security (TLS)-Konfiguration für Ihre Benutzer. |
TLS: Ressourcenladen | Maximal | Niedrig | Ja | Laden Sie sowohl passive als auch aktive Ressourcen über HTTPS. |
TLS: HTTP-Umleitung | Maximal | Niedrig | Ja | Websites müssen auf HTTPS umleiten; API-Endpunkte sollten HTTP vollständig deaktivieren. |
TLS: HSTS-Implementierung | Hoch | Niedrig | Ja | Benachrichtigen Sie Benutzeragenten, sich nur über HTTPS mit Websites zu verbinden, auch wenn das ursprünglich gewählte Schema HTTP war, indem Sie HTTP Strict Transport Security (HSTS) verwenden. |
Verhinderung von Clickjacking | Hoch | Niedrig | Ja | Kontrollieren Sie, wie Ihre Website innerhalb eines <iframe> gerahmt werden kann, um Clickjacking zu verhindern. |
Verhinderung von CSRF | Hoch | Unbekannt | Variiert | Schützen Sie sich vor Cross-site request forgery (CSRF) mit SameSite Cookies und Anti-CSRF Tokens. |
Sichere Cookie-Konfiguration | Hoch | Mittel | Ja | Setzen Sie alle Cookies so restriktiv wie möglich. |
CORP-Implementierung | Hoch | Mittel | Ja | Schützen Sie sich vor spekulativen Seitenkanalangriffen, indem Sie die Cross-Origin Resource Policy (CORP) verwenden. |
MIME-Typ-Verifizierung | Niedrig | Niedrig | Nein | Stellen Sie sicher, dass alle Ihre Websites die richtigen MIME-Typen für alle Ressourcen setzen. |
CSP-Implementierung | Hoch | Hoch | Ja | Bieten Sie eine feingranulare Kontrolle darüber, von wo aus Site-Ressourcen mit Content Security Policy (CSP) geladen werden können. |
CORS-Konfiguration | Hoch | Niedrig | Ja | Definieren Sie die nicht gleichen Ursprünge, die erlaubt sind, auf den Inhalt von Seiten zuzugreifen und Ressourcen von ihnen zu laden, indem Sie Cross-Origin Resource Sharing (CORS) verwenden. |
Referrer-Policy-Konfiguration | Niedrig | Niedrig | Ja | Verbessern Sie die Privatsphäre von Benutzern und verhindern Sie das Leaken interner URLs über den Referer Header. |
robots.txt-Konfiguration | Niedrig | Niedrig | Nein | Weisen Sie Roboter (z.B. Suchmaschinenindexer) an, wie sie sich verhalten sollen, indem Sie ihnen sagen, bestimmte Pfade auf der Website nicht zu crawlen. |
SRI-Implementierung | Niedrig | Niedrig | Nein | Überprüfen Sie, dass abgerufene Ressourcen (z.B. von einem CDN) ohne unerwartete Manipulation geliefert werden, indem Sie Subresource Integrity (SRI) verwenden. |
Sicherheit von Benutzerdaten
- Anleitung zur Deaktivierung der Formular-Autovervollständigung
-
Formularfelder unterstützen die Autovervollständigung; das heißt, ihre Werte können gespeichert und automatisch ausgefüllt werden, wenn ein Benutzer Ihre Seite erneut besucht. Für bestimmte Datentypen möchten Sie diese Funktion möglicherweise deaktivieren; dieser Artikel erklärt, wie.