Leitfäden zur praktischen Sicherheitsimplementierung
Nutzerinnen geben häufig sensible Daten auf Websites ein, wie Namen, Adressen, Passwörter und Bankinformationen. Als Webentwicklerin 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 für persönliche Vorteile zu verwenden. Der Schwerpunkt der Websicherheit liegt darauf, Ihnen zu helfen, Ihre Website gegen diese Exploits zu schützen und die sensiblen Daten Ihrer Nutzer*innen zu sichern.
Diese Seite listet Leitfäden auf, die einige Best Practices zur Implementierung von Sicherheitsfunktionen auf Websites zusammenfassen. Auch wenn diese Leitfäden nicht alle möglichen Sicherheitsvorkehrungen abdecken und keine vollständige Sicherheit Ihrer Website garantieren können, wird die Befolgung der Informationen und bewährten Verfahren in diesen Leitfäden Ihre Websites erheblich sicherer machen.
Grundlegende HTTP-Sicherheit
Die Leitfäden in diesem Abschnitt fassen Best Practices zur korrekten Implementierung von HTTP-Headern zusammen, um Sicherheitsprobleme zu mindern, und sind direkt mit dem HTTP Observatory Tool verbunden.
Observatory führt Sicherheitsüberprüfungen auf einer Website durch und liefert eine Bewertung und Punktzahl sowie Empfehlungen zur Behebung der festgestellten Sicherheitsprobleme. Diese Leitfäden erklären, wie man Probleme löst, die durch die Tests des HTTP Observatory gefunden werden: Das Tool verlinkt für jedes Problem auf den entsprechenden Leitfaden und hilft Ihnen so, eine effektive Lösung zu finden. Interessanterweise verwenden auch die internen Entwicklerteams von Mozilla diese Leitlinien bei der Implementierung von Websites, um sicherzustellen, dass bewährte Sicherheitsmaßnahmen angewendet werden.
Die Leitfäden in der folgenden Tabelle sind in der Reihenfolge aufgelistet, in der wir empfehlen, die darin beschriebenen Sicherheitsfunktionen zu implementieren. Diese Reihenfolge basiert auf einer Kombination aus der Sicherheitsauswirkung jeder Funktion und der Leichtigkeit ihrer Implementierung sowohl aus operativer als auch aus entwicklungsbezogener Sicht. Die Tabelle bietet Informationen über die Auswirkungen jeder Funktion, die Schwierigkeit der Implementierung, ob sie erforderlich ist, und eine kurze Beschreibung.
Leitfaden | Auswirkung | Schwierigkeit | Erforderlich | Beschreibung |
---|---|---|---|---|
TLS-Konfiguration | Mittel | Mittel | Ja | Verwenden Sie die sicherste verfügbare Transport Layer Security (TLS) Konfiguration für Ihre Benutzerbasis. |
TLS: Ressourcennutzung | 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 | Weisen Sie Benutzeragenten an, nur über HTTPS mit Websites zu verbinden, auch wenn das ursprüngliche Schema HTTP war, indem Sie HTTP Strict Transport Security (HSTS) verwenden. |
Clickjacking-Verhinderung | Hoch | Niedrig | Ja | Kontrollieren Sie, wie Ihre Website innerhalb eines <iframe> eingebettet werden darf, um Clickjacking zu verhindern. |
CSRF-Verhinderung | Hoch | Unbekannt | Variiert | Schützen Sie sich vor Cross-site request forgery (CSRF) Angriffen. |
Sichere Cookie-Konfiguration | Hoch | Mittel | Ja | Setzen Sie alle Cookies so restriktiv wie möglich. |
CORP-Implementierung | Hoch | Mittel | Ja | Schützen Sie vor spekulativen Seitenkanalangriffen durch die Verwendung der Cross-Origin Resource Policy (CORP). |
MIME-Typ-Verifikation | Niedrig | Niedrig | Nein | Stellen Sie sicher, dass alle Ihre Websites die richtigen MIME-Typen für alle Ressourcen einstellen. |
CSP-Implementierung | Hoch | Hoch | Ja | Bieten Sie eine feingranulierte Kontrolle über den Code, der auf einer Website geladen werden kann, und was er mit einer Content Security Policy (CSP) tun darf, um Cross-Site-Scripting (XSS) Schwachstellen zu mindern. |
CORS-Konfiguration | Hoch | Niedrig | Ja | Definieren Sie die nicht-gleichen Ursprünge (non-same origins), die Zugriff auf die Inhalte von Seiten haben und von denen Ressourcen geladen werden dürfen, durch die Verwendung von Cross-Origin Resource Sharing (CORS). |
Referrer-Policy-Konfiguration | Niedrig | Niedrig | Ja | Verbessern Sie die Privatsphäre der Benutzer*innen und verhindern Sie das Lecken interner URLs über den Referer Header. |
robots.txt-Konfiguration | Niedrig | Niedrig | Nein | Geben Sie Robotern (z.B. Suchmaschinen-Indizierungsrobotern) Anweisung, wie sie sich verhalten sollen, indem Sie ihnen mitteilen, bestimmte Pfade auf der Website nicht zu durchsuchen. |
SRI-Implementierung | Niedrig | Niedrig | Nein | Überprüfen Sie, ob abgerufene Ressourcen (zum Beispiel von einem CDN) ohne unerwartete Manipulation geliefert werden, indem Sie Subresource Integrity (SRI) verwenden. |
Sicherheit von Benutzerinformationen
- Anleitung zum Deaktivieren der Autovervollständigung von Formularen
-
Formularfelder unterstützen die Autovervollständigung; das heißt, ihre Werte können gespeichert und automatisch ausgefüllt werden, wenn ein Benutzer Ihre Website erneut besucht. Für bestimmte Arten von Daten möchten Sie möglicherweise diese Funktion deaktivieren; dieser Artikel erklärt, wie.