Programmierung

  • Die eigenen (Programmier-)Kenntnisse nicht überschätzen, jede Software hat Bugs

    • Auf vorhandene SDKs/Frameworks zurückgreifen

    • Implementierung durch Codereview von einer anderen Person prüfen lassen

  • Statische Codeanalyse verwenden

    • Für viele Programmiersprachen gibt es auch OpenSource-Codeanalyse Tools
  • Anwendung von unabhängigen Personen auf Sicherheitslücken prüfen lassen (siehe Kapitel Schachstellen-Scanning und Pentesting)

  • Benutzernamen/Passwörter nie in svn, git, etc. speichern

  • Individuelle, personenbezogene Inhalte nie über eine fortlaufende, leicht erratbare Ziffer veröffentlichen

    • Beispiel: https://domain.net/15487/Report.pdf

    • Durch Erraten anderer Ziffern kann auf datenschutzrelevante Inhalte anderer Benutzer zugegriffen werden (ist in letzter Zeit öfters auf den Homepages von Corona-Testzentren/Labors vorgekommen)

    • Stattdessen GUIDs (nicht erratbare, lange Buchstaben/Zahlenkombinationen) verwenden

  • Nie Sicherheitsfunktionen selbst implementieren da es immer Anwendungsfälle gibt die man nicht beachtet hat und somit Sicherheitslücken in der Anwendung hat

    • Stattdessen immer auf bewährte Bibliotheken wie OpenSSL zurückgreifen