Bundesamt für Sicherheit in der Informationstechnik

G 4.99 Fehlende oder unzureichende Sicherheitsmechanismen in Anwendungen

Hinweis: Ähnliches wird behandelt in G 4.22 Software-Schwachstellen oder -Fehler sowie in G 4.39 Software-Konzeptionsfehler .

Bei vielen Anwendungen stand bei der Entwicklung nicht die Informationssicherheit im Fokus, sodass häufig die erforderlichen Sicherheitsmechanismen fehlen oder unzureichend sind. Darüber hinaus kann es vorkommen, dass die vorhandenen Sicherheitsmechanismen schlecht konzipiert, implementiert oder unzuverlässig sind und somit keinen ausreichenden Schutz bieten. Nach der Erst-Installation sind außerdem häufig die Anwendungen so vorkonfiguriert, dass keine oder nur einige Sicherheitsmechanismen aktiviert sind.

Je nach Art der Anwendung, deren Einsatzumgebung und dem Schutzbedarf der damit verarbeiteten Daten können verschiedene Sicherheitsfunktionalitäten erforderlich sein und nur unzureichend vorhanden sein. Im Folgenden werden einige leider sehr typische Schwachstellen exemplarisch genannt:

  • Keine Benutzertrennung:
    Dadurch kann jeder, der Zugriff auf eine Anwendung hat, auf alle gespeicherten Daten zugreifen.
  • Unzureichende Zugriffschutz- und Authentisierungsmechanismen:
    Leider finden sich immer wieder Anwendungen, die überhaupt keine Zugriffsschutz-Mechanismen bieten. Darüber hinaus finden sich bei vorhandenen Authentisierungsmechanismen Schwachstellen, die die Sicherheit negativ beeinflussen (siehe auch G 4.33 Schlechte oder fehlende Authentikationsverfahren und -mechanismen ). So kann die Mechanismenstärke bei einer Authentisierung unzureichend sein. Beispielsweise kann die Passwort-Auswahl auf vier Stellen eingeschränkt sein.
  • Keine oder unzureichende Möglichkeiten zur Verschlüsselung von Daten
  • Verwendung unsicherer Kryptoalgorithmen (siehe auch G 4.35 Unsichere kryptographische Algorithmen )
  • Keine oder unzureichende Protokollierungsmöglichkeiten
  • Unsichere Voreinstellungen:
    In Anwendungen häufig vorhandene Sicherheitsfunktionen wie Authentisierung und Verschlüsselung sind abgeschaltet und Passwörter bzw. PINs auf Standardwerte ("0000", "1234" usw.) eingestellt.
  • Gegen bekannte und für den geplanten Einsatzzweck einschlägige Angriffe wurde in der Anwendung keine Vorkehrungen getroffen. Beispiele dafür sind Web-Anwendungen mit Datenbankanbindung, die nicht oder nur unzureichend gegen Injection-Angriffe (siehe auch G 5.131 SQL-Injection ) oder Cross-Site-Request-Forgery / Cross-Site-Scritping abgesichert sind.

Stand: 14. EL Stand 2014