Check

Aus d.hack
 Beschreibung
O.Arch 1„Security“ MUSS ein fester Bestandteil des Softwareentwicklungs- und Lebenszyklus‘ für die gesamte Web-Anwendung und das Hintergrundsystem sein.
O.Arch 2Bereits in der Designphase von Web-Anwendung und Hintergrundsystem MUSS berücksichtigt werden, dass die Anwendung in der Produktivphase sensible Daten verarbeiten wird. Die Architektur der Anwendung MUSS dafür die sichere Erhebung, Verarbeitung, Speicherung und Löschung der sensiblen Daten in einem Datenlebenszyklus abbilden.
O.Arch 3Der Lebenszyklus von kryptographischem Schlüsselmaterial MUSS einer ausgearbeiteten Richtlinie folgen, die Eigenschaften wie die Zufallszahlenquelle, detaillierte Angaben zur Aufgabentrennung von Schlüsseln, Ablauf von Schlüsselzertifikaten, Integritätssicherung durch Hash-Algorithmen etc., umfasst. Die Richtlinie SOLL auf anerkannten Standards wie TR02102-2 und NIST80057 basieren.
O.Arch 7Der Hersteller MUSS dem Nutzer eine barrierearme Möglichkeit bereitstellen, um Sicherheitsprobleme zu melden. Die Kommunikation SOLL über einen verschlüsselten Kanal stattfinden.
O.Arch 8Das Hintergrundsystem MUSS beim Start auf die Aktualität des genutzten Web-Browsers prüfen. Wenn die Installation eines sicherheitsrelevanten Updates noch nicht erfolgt ist, DARF das Hintergrundsystem KEINEN Zugriff auf sensible Daten ermöglichen.
O.Arch 9Die Web-Anwendung SOLL HTTP-Server-Header nutzen, die dem aktuellen Stand der Technik entsprechen und die Sicherheit der Anwendung erhöhen. Dazu gehören unter anderem HTTP Strict Transport Security (HSTS), Content Security Policy (CSP) und X-Frame-Options.
O.Auth 1Der Hersteller MUSS ein Konzept zur Authentifizierung (Zwei-Faktor-basiert), Autorisierung (Rollenkonzept) und zum Beenden einer Anwendungssitzung dokumentieren.
O.Auth 10Der Nutzer MUSS in den Nutzungsbedingungen der Web-Anwendung auf das Restrisiko hingewiesen werden, welches mit der Speicherung der Login-Credentials im Web- Browser oder auch einem anderen externen Programm für einen komfortableren Anmeldevorgang verbunden ist.
O.Auth 11Für die Nutzer-Authentifizierung in der Anwendungssitzung KANN der zweite Faktor vom Hintergrundsystem-System erzeugt werden.
O.Auth 5Dem Nutzer SOLL eine Möglichkeit gegeben werden, sich über ungewöhnliche Anmeldevorgänge informieren zu lassen.
O.Auth 6Die Anwendung MUSS nach einer angemessenen Zeit in der sie nicht aktiv verwendet wurde (idle time) eine erneute Authentisierung fordern.
O.Auth 7Die Anwendung MUSS nach einer angemessenen Zeit in der sie aktiv verwendet wurde (active time) eine erneute Authentisierung fordern.
O.Auth 9Bei Änderung der Zugangsparameter SOLL der Nutzer über die zuletzt hinterlegten, gültigen Kontaktdaten über die Änderung informiert werden. Dem Nutzer SOLL über diesem Weg eine Möglichkeit geboten werden, die gemeldete Änderung zu sperren und nach entsprechender Authentifizierung neue Zugangsparameter zu setzen.
O.Data 1Die Voreinstellung der Web-Anwendung MUSS die maximale Sicherheit bieten.
O.Data 11Durch die Web-Anwendung kann der Zugriff für Dritte und die Speicherung des Bildschirms (z. B. Screenshots und Anzeigen für das App-Switching) nicht unterbunden werden. Über die Nutzungsbedingungen MUSS der Nutzer darüber informiert werden, dass sensible Daten über Screenshots oder Anzeigen für das App-Switching kompromittiert werden können.
O.Data 12Über die Nutzungsbedingungen der Web-Anwendung MUSS der Nutzer über das Risiko informiert werden, welches damit verbunden ist, dass im gesperrten Zustand des Endgeräts die Verbindung zum Hintergrundsystem weiter geöffnet bleibt, wenn der Nutzer sich nicht explizit ausgeloggt hat.
O.Data 13Die Web-Anwendung SOLL sicherstellen, dass bei ihrer Beendigung alle sensiblen Daten und anwendungsspezifischen Anmeldeinformationen im Web-Browser nicht mehr zugreifbar sind. Dies schließt insbesondere Cookies und Webstorage mit ein.
O.Data 14Die Web-Anwendung MUSS dem Nutzer die Möglichkeit geben, dass bei endgültiger Beendigung der Nutzung alle sensiblen Daten und anwendungsspezifischen Anmeldeinformationen auch im Hintergrundsystem vollständig gelöscht werden. Entscheidet sich der Nutzer, die Daten im Hintergrundsystem nicht zu löschen, MUSS eine für den primären Zweck angemessene maximale Verweildauer definiert sein. Der Nutzer MUSS über die Verweildauer informiert werden. Nach Ablauf der maximalen Verweildauer MÜSSEN alle sensiblen Daten und anwendungsspezifischen Anmeldeinformationen vollständig gelöscht werden. Dem Nutzer MUSS die Möglichkeit gegeben werden alle Daten auch vor Ablauf der Verweildauer vollständig zu löschen.
O.Data 15Für alle Cookies, auf die nicht mittels JavaScript zugegriffen wird, MUSS das HTTP-Only-Flag verwendet werden.
O.Data 16Für alle Cookies, die sensible Daten enthalten, MUSS das Secure-Flag gesetzt sein.
O.Data 17Für alle Formularfelder mit sensiblen Eingabedaten MUSS die Autocomplete-Funktion abgeschaltet sein.
O.Data 18Im Browser persistierte Daten SOLLEN für weitere Hosts einer Domain unlesbar sein (d.h. Vermeidung von Domain-Cookies).
O.Data 2Exportiert der Nutzer sensible Daten unverschlüsselt MUSS der Nutzer durch die Web-Anwendung darauf aufmerksam gemacht werden, dass der Nutzer selbst die Verantwortung für die Datensicherheit dieser exportierten Daten übernimmt.
O.Data 4Alle erhobenen sensiblen Daten DÜRFEN NICHT über die Dauer ihrer jeweiligen Verwendung hinaus in der Web-Anwendung gehalten werden.
O.Data 5Die Web-Anwendung MUSS die Grundsätze der Datensparsamkeit und Zweckbindung berücksichtigen.
O.Data 7Bei der Verwendung von Aufnahmegeräten (z. B. Kamera) MÜSSEN sämtliche Metadaten mit Datenschutz-Relevanz, wie etwa Rückschlüsse auf die GPS-Koordinaten des Aufnahmeorts, eingesetzte Hardware etc., entfernt werden.
O.Paid 1Die Web-Anwendung MUSS für den Nutzer kenntlich machen, welche kostenpflichtigen Leistungen (z.B. Zusatzfunktionalitäten oder Premiumzugriffe) und welche kostenpflichtigen Ressourcen (z.B. SMS, Telefonate, mobile Daten) von der Anwendung angeboten oder verwendet werden.
O.Paid 10Zahlverfahren von Drittanbietern MÜSSEN die Anforderungen an Drittanbieter-Software erfüllen (vgl. Kapitel 3.1.4).
O.Paid 2Die Web-Anwendung MUSS vor dem Ausführen kostenpflichtiger Leistungen das Einverständnis des Nutzers einholen.
O.Paid 3Die Web-Anwendung MUSS vor einer Zugriffsanforderung auf kostenpflichtige Ressourcen, das Einverständnis des Nutzers einholen.
O.Paid 4Die Web-Anwendung KANN für den Zugriff auf häufig verwendete, kostenpflichtige Ressourcen oder kostenpflichtige Leistungen ein dauerhaftes Einverständnis des Nutzers einholen, soweit dies dem primären Zweck der Anwendung angemessen ist.
O.Paid 5Die Web-Anwendung MUSS den Nutzer in die Lage versetzen, zuvor erteilte Einverständnisse zurückzuziehen.
O.Paid 7Falls die Web-Anwendung kostenpflichtige Funktionen anbietet, MUSS der Hersteller ein Konzept vorlegen, welches vorbeugt, dass Dritte die Zahlungsströme zur Nutzung von Anwendungsfunktionen zurückverfolgen können.
O.Paid 8Die Web-Anwendung MUSS dem Nutzer eine Übersicht der entstandenen Kosten anbieten. Falls die Kosten aufgrund einzelner Zugriffe erfolgt sind, MUSS die Anwendung einen Überblick der Zugriffe aufführen.
O.Pass 1Bei einer Authentifizierung mittels Benutzername und Passwort MÜSSEN starke Passwortrichtlinien existieren. Diese SOLLEN sich am aktuellen Stand gängiger Best-Practices orientieren.
O.Pass 3Der Nutzer MUSS die Möglichkeit haben, sein Passwort zu ändern.
O.Pass 4Das Ändern und Zurücksetzen von Passwörtern MUSS protokolliert werden
O.Plat 1Für die Nutzung der Web-Anwendung SOLL das Endgerät über einen aktivierten Geräteschutz (Passwort, Mustersperre, o. ä.) verfügen. Im Fall eines nicht aktivierten Geräteschutzes MUSS der Hersteller den Nutzer über die damit verbundenen Risiken aufklären.
O.Plat 2Die Web-Anwendung DARF Berechtigungen, die für die Erfüllung ihres primären Zwecks nicht notwendig sind, NICHT einfordern.
O.Plat 3Die Web-Anwendung MUSS den Nutzer auf den rechtmäßigen Zweck der anzufragenden Berechtigungen und auf die Auswirkungen hinweisen, die eintreten, falls der Nutzer diese nicht gewährt.
O.Plat 5Die Web-Anwendung KANN dem Nutzer die Optionen bieten, erweiterte Meldungen und Benachrichtigungen zum Logging bzw. zur Fehleranalyse, ggf. auch mit sensiblen Inhalten, anzuzeigen. Bei Werkseinstellung MUSS diese deaktiviert sein.
O.Plat 7Die Web-Anwendung MUSS den Nutzer über das Risiko informieren, dass ggf. nach Beendigung der Web-Anwendung nutzerspezifischen Daten im Arbeitsspeicher verbleiben können.
O.Plat 8Der Nutzer MUSS über Sicherheitsmaßnahmen informiert werden, sofern diese durch den Nutzer umsetzbar sind.
O.Purp 1Der Hersteller MUSS die rechtmäßigen Zwecke der Web-Anwendung und die Verwendung von personenbezogenen Daten offenlegen (etwa in der Beschreibung der Nutzungsbedingungen der Web-Anwendung) und den Nutzer spätestens bei der erstmaligen Nutzung der Anwendung darüber informieren.
O.Purp 2Die Web-Anwendung DARF KEINE Daten erheben und verarbeiten, die nicht dem rechtmäßigen Zweck der Anwendung dienen.
O.Purp 3Die Web-Anwendung MUSS vor jeglicher Erfassung oder Verarbeitung personenbezogener aktive und eindeutige Einwilligungserklärung des Nutzers einholen.
O.Purp 4Daten, deren Verwendung der Nutzer nicht ausdrücklich zugestimmt hat, DÜRFEN NICHT von der Web-Anwendung oder dem Hintergrundsystem erfasst oder genutzt werden.
O.Purp 5Die Web-Anwendung MUSS ermöglichen, dass der Nutzer eine bereits erteilte Einwilligung wieder entziehen kann. Der Nutzer MUSS vor der Einwilligung über die Möglichkeit des Widerrufs und die sich daraus ergebenden Veränderungen im Verhalten der Anwendung informiert werden.
O.Purp 6Der Hersteller MUSS ein Verzeichnis führen, welches erkennen lässt, welche Nutzereinwilligungen vorliegen. Der nutzerspezifische Teil des Verzeichnisses MUSS für den Nutzer automatisiert einsehbar sein.
O.Purp 8Sofern es nicht für den vorgesehenen primären Zweck einer Web-Anwendung erforderlich ist, DÜRFEN sensible Daten NICHT mit Dritten geteilt werden. Die Anwendung MUSS den Nutzer über die Konsequenzen einer eventuellen Weitergabe von Anwendungsdaten vollumfänglich informieren und sein Einverständnis einholen (OPT-IN).
O.Purp 9Die Web-Anwendung DARF sensible Daten NICHT auf dem Bildschirm darstellen, außer dies ist für den primären Zweck der Anwendung erforderlich.
O.Resi 1Die Web-Anwendung MUSS dem Nutzer barrierearme Best-Practice-Empfehlungen zum sicheren Umgang mit der Anwendung und ihrer Konfiguration bereitstellen.
O.Resi 2Die Web-Anwendung MUSS über die Nutzungsbedingungen dem Nutzer darstellen, welche Risiken für die Daten des Nutzers bei einer Benutzung von Geräten mit Jailbreak oder Root-Zugriff bestehen (z. B. dass diese offengelegt werden könnten).
O.Sess 1Das Session-Handling SOLL mittels sicherer Frameworks realisiert werden.
O.Sess 3Die Anwendung MUSS es dem Nutzer ermöglichen einen oder alle zuvor ausgestellten Session-Identifier ungültig zu machen.
O.Source 1Die Anwendung MUSS Eingaben aus nicht vertrauenswürdigen Quellen vor deren Verwendung prüfen, um potenziell bösartige Werte vor der Verarbeitung herauszufiltern.
O.Source 2Die Anwendung MUSS eingehende und ausgehende Daten maskieren beziehungsweise von potenziell schadhaften Zeichen bereinigen oder deren Verarbeitung ablehnen.
O.Tokn 2Es DÜRFEN KEINE sensiblen Daten in ein Authentifizierungstoken eingebettet werden.
O.Tokn 3Ein Authentifizierungstoken MUSS ausschließlich die von der Web-Anwendung erwarteten Felder enthalten.
O.Tokn 4Die Web-Anwendung MUSS es dem Nutzer ermöglichen ein oder alle zuvor ausgestellten Authentifizierungstoken ungültig zu machen.
O.Tokn 5Wird eine Anwendungssitzung beendet, MUSS die Anwendung den Authentifizierungstoken sicher löschen und das Hintergrundsystem informieren. Dies gilt sowohl für das aktive Beenden durch den Benutzer (log-out), als auch für das automatische Beenden durch die Anwendung.
O.TrdP 1Der Hersteller MUSS eine zentrale und vollständige Liste von Abhängigkeiten durch externe Software, Bibliotheken und Frameworks führen.
O.TrdP 2Externe Software, Bibliotheken und Frameworks MÜSSEN in der neusten oder der ihr vorhergehenden, verfügbaren „Stable“ -Version verwendet werden.
O.TrdP 3Externe Bibliotheken und Frameworks MÜSSEN durch den Hersteller regelmäßig auf Schwachstellen überprüft werden. Der Hersteller MUSS ein Sicherheitskonzept vorlegen, das bei Bekanntwerden von Schwachstellen anhand der Kritikalität eine geduldete Weiternutzung für die Anwendung festlegt. Nachdem die Übergangsfrist (Grace Period) abgelaufen ist, DÜRFEN die betroffenen Funktionen aus Bibliotheken und Frameworks bei bekannten Schwachstellen NICHT eingesetzt werden.
O.TrdP 4Sicherheitsupdates für externe Bibliotheken und Frameworks MÜSSEN zeitnah zur Verfügung gestellt werden. Der Hersteller MUSS ein Sicherheitskonzept vorlegen, das anhand der Kritikalität ausnutzbarer Schwachstellen die geduldete Weiternutzung für die Web-Anwendung, bzw. das Hintergrundsystem festlegt. Nachdem die Übergangsfrist (Grace Period) abgelaufen ist, DARF die Web-Anwendung NICHT mehr zur Benutzung angeboten werden.
O.TrdP 5Vor der Verwendung von externen Bibliotheken und Frameworks MUSS deren Quelle auf Vertrauenswürdigkeit geprüft werden. Die Web-Anwendung DARF externe Libraries aus nicht-vertrauenswürdigen Quellen NICHT nachladen.
O.TrdP 6Über Drittanbieter-Software eingehende Daten SOLLEN validiert werden.