Aktuelle Hinweise zur Gestaltung „sicherer“ Software

Leitfaden zur Vermeidung von Sicherheitslücken: Sicherheitsvorfälle sind oft das Resultat komplexer Wechselwirkungen zwischen Technologie, Prozessen und menschlichen Entscheidungen.

Um dem entgegenzuwirken, ist es entscheidend, dass Softwarehersteller Sicherheit von Beginn an in ihre Entwicklungsprozesse integrieren. In diesem Beitrag werden die Best Practices und die Schritte beleuchtet, die zur sicheren Softwareentwicklung und -bereitstellung beitragen, wobei Grundlage zwei CISA-Dokumente sind.

1. Planung und Risikoanalyse

Eine sichere Software beginnt mit sorgfältiger Planung. Dies beinhaltet die Identifikation möglicher Bedrohungen und Schwachstellen, die Festlegung von Sicherheitszielen und die Erstellung einer klaren Struktur zur Entwicklung und Implementierung der Sicherheitsmaßnahmen.

  • Operative Risikoanalyse: Eine fundierte Analyse der potenziellen Risiken reduziert mögliche Schwachstellen. Der Fokus liegt auf der Identifizierung von Systembeziehungen und Abhängigkeiten sowie der Implementierung von Sicherheitsstandards für einen robusten Softwarebetrieb.
  • Fehlerantizipations-Review: Durch präventive Überlegungen (oft als „Prä-Mortem“ bezeichnet) können Entwickler mögliche Fehlerquellen erkennen, bevor sie tatsächlich eintreten.

2. Entwicklung und Testverfahren

Die Programmierphase sollte strenge Sicherheitsstandards erfüllen, wie die Vermeidung unsicherer Speicherzugriffe und die Absicherung von Benutzereingaben.

  • Memory Safety: Die Entwicklung in speichersicheren Programmiersprachen wie Rust kann viele Sicherheitsprobleme verhindern. Für Projekte in speicherunsicheren Sprachen sollten Unternehmen bis 2026 eine Roadmap zur schrittweisen Umstellung auf eine speichersichere Lösung erstellen.
  • Vermeidung von SQL-Injection und Command Injection: Eingaben von Benutzern sollten nie direkt in SQL-Befehle oder Betriebssystem-Kommandos übernommen werden. Die Verwendung von parametrierte Queries und klar abgegrenzte Kommandoeingaben schützt vor Injektionen und damit vor potentiell katastrophalen Sicherheitsvorfällen.
  • Sichere Passwörter: Standardpasswörter sind ein häufiges Einfallstor für Angreifer. Softwareprodukte sollten entweder benutzerspezifische, einmalige Passwörter generieren oder den Benutzer zwingen, bei der Installation ein starkes Passwort festzulegen.

3. Interne Tests und frühe Implementierung („Dogfooding“)

Vor der Bereitstellung für Endnutzer sollten neue Softwareversionen intern getestet werden. Dieses „Dogfooding“ gibt den Entwicklern die Möglichkeit, Schwachstellen in einer kontrollierten Umgebung zu erkennen und zu beheben, bevor die Software an Kunden geht.

4. Kontrollierte und gestaffelte Bereitstellung

Eine sichere Softwarebereitstellung umfasst eine gestaffelte Rollout-Strategie. Dabei wird die Software in kleinen, überwachten Schritten verteilt, um Fehler frühzeitig zu identifizieren und Auswirkungen zu minimieren.

  • Canary Testing und Blue/Green Deployment: Das Rollout an eine kleine Benutzergruppe (Canary Testing) gibt Teams die Möglichkeit, die Performance zu überwachen und gegebenenfalls Anpassungen vorzunehmen. Alternativ kann ein Blue/Green-Deployment-Modell genutzt werden, bei dem neue Softwareversionen parallel zu alten Versionen laufen, bis die neue Version als stabil gilt.

5. Feedback-Mechanismen und kontinuierliche Verbesserung

Eine kontinuierliche Feedback-Schleife ermöglicht es, gewonnene Erkenntnisse aus Fehlern oder „Beinahe-Vorfällen“ in zukünftige Versionen einfließen zu lassen. Ein solcher iterativer Ansatz fördert nicht nur die Softwarequalität, sondern stärkt die Sicherheitsstandards.

6. Erstellung und Pflege von Playbooks

Playbooks sorgen für klare und dokumentierte Leitlinien für die Reaktion auf Vorfälle. Sie geben Teams genaue Anweisungen zur Fehlerbehebung und bieten Notfallprotokolle, um Ausfallzeiten zu minimieren und Risiken zu verringern.

  • Vorfallserkennung und Meldewege: Klare Definitionen für die Identifikation und Eskalation von Sicherheitsvorfällen unterstützen eine schnelle Reaktion und sorgen für die effiziente Bearbeitung solcher Ereignisse.

7. Sicherheitsfunktionen und -anforderungen

  • Multi-Faktor-Authentifizierung (MFA): Besonders für kritische Infrastrukturprodukte sollte MFA Standard sein, insbesondere für Administrator-Konten, um unberechtigte Zugriffe zu verhindern.
  • Fähigkeit zur Protokollierung von Einbruchsversuchen: Ein Produkt sollte die Möglichkeit bieten, relevante Protokolle über Zugriffsversuche und Konfigurationsänderungen zu erfassen, damit im Falle eines Vorfalls eine gründliche Untersuchung möglich ist.

8. Einhaltung bewährter Sicherheitsrichtlinien

Softwarehersteller sollten sicherstellen, dass alle sicherheitskritischen Updates und Patches zeitnah veröffentlicht werden. Verzögerungen oder fehlende Sicherheitsupdates können kritische Sicherheitslücken öffnen und sind besonders gefährlich, wenn bekannte Exploits vorliegen.


Fazit: Sicher durch systematische Planung und kontinuierliche Verbesserung

Sichere Softwareentwicklung und -bereitstellung erfordern ein strukturiertes Vorgehen, das Sicherheitslücken von Beginn an berücksichtigt. Durch die Umsetzung der hier beschriebenen Maßnahmen können Softwarehersteller das Vertrauen ihrer Kunden stärken und die Sicherheit ihrer Produkte langfristig erhöhen. Indem Softwarehersteller sich an Sicherheitsstandards orientieren und Prozesse wie Prä-Mortem-Analysen, kontrollierte Rollouts und Feedback-Mechanismen nutzen, schaffen sie eine robuste Grundlage für sichere Software – im Sinne der Sicherheit und des Vertrauens ihrer Kunden.

Rechtsanwalt Jens Ferner (Fachanwalt für IT- & Strafrecht)
Letzte Artikel von Rechtsanwalt Jens Ferner (Fachanwalt für IT- & Strafrecht) (Alle anzeigen)
Benutzerbild von Rechtsanwalt Jens Ferner (Fachanwalt für IT- & Strafrecht)

Von Rechtsanwalt Jens Ferner (Fachanwalt für IT- & Strafrecht)

Ich bin Fachanwalt für Strafrecht + Fachanwalt für IT-Recht und widme mich beruflich ganz der Tätigkeit als Strafverteidiger und dem IT-Recht. Vor meinem Leben als Anwalt war ich Softwareentwickler. Ich bin Autor sowohl in einem renommierten StPO-Kommentar als auch in Fachzeitschriften. Dabei bin ich fortgebildet in Krisenkommunikation und Compliance.

Erreichbarkeit: Per Mail, Rückruf, Threema oder Whatsapp.

Unsere Kanzlei ist spezialisiert auf Starke Strafverteidigung, seriöses Wirtschaftsstrafrecht und anspruchsvolles IT-Recht + Kunst & Medien - ergänzt um Arbeitsrecht.