Sichere Entwicklungsprozesse in agilen Umgebungen

10 Tipps für die DevSecOps-Strategie

| Redakteur: Stephan Augsten

Da DevOps die Abläufe in der Software-Entwicklung rasant beschleunigt, können automatisierte Security-Tests helfen, gefährliche Fehler im Code zu erkennen.
Da DevOps die Abläufe in der Software-Entwicklung rasant beschleunigt, können automatisierte Security-Tests helfen, gefährliche Fehler im Code zu erkennen. (Bild: Checkmarx)

Agile Entwicklung und DevOps haben zwar die Software-Entwicklung und -Bereitstellung beschleunigt, doch darunter leidet mitunter die Sicherheit. Wenn die Qualitätssicherung nicht Schritt halten kann, entsteht fehlerhafter und anfälliger Code. Checkmarx gibt 10 Tipps für die DevOps-Strategie.

Softwareentwickler liefern im Zuge von Agile- und DevOps-Strategien oft mehrmals am Tag neue Builds ihrer Produkte aus, berichtet Dr. Jürgen Eitle, Professional Security Architect bei Checkmarx. „Agile Entwicklung und DevOps-Umgebungen sind deshalb mittlerweile Standard. Sie bringen aber auch Herausforderungen für die Software-Security mit sich.“

Besonders problematisch ist dies mit Blick auf die Digitalisierung von Diensten und Anwendungen innerhalb kritischer Infrastrukturen. Als Anbieter einer Software-Exposure-Plattform hat Checkmarx sich Gedanken über DevSecOps gemacht und 10 Tipps für sichere Entwicklungsprozesse zusammengestellt.

1. Identifizieren Sie Sicherheitslücken so früh wie möglich

Analysieren Sie Ihre Anwendungen bereits im Anfangsstadium der Entwicklung mit statischen Sicherheitstests (SAST), um Fehler möglichst schon im Quellcode zu identifizieren. So lassen sich viele Sicherheitslücken mit minimalem Aufwand schließen, ehe die Software in die Testphase oder live geht.

2. Integrieren Sie Open-Source-Sicherheitstests

Die Einbindung von Open Source Code ist in agilen Entwicklungsumgebungen unerlässlich. Die Entwickler dürfen sich aber nicht darauf verlassen, dass der quelloffene Code auch wirklich sicher ist. Open-Source-Analyse-Lösungen (OSA) weisen die Entwickler während des Programmierprozesses auf Fehler in quelloffenem Code hin und ermöglichen es ihnen, unsichere Elemente zu entfernen oder zu ersetzen.

3. Analysieren Sie auch den kompilierten Code

Um sicherzustellen, dass der kompilierte Code einwandfrei ist, sollten Sie auch interaktive Security-Analysen (IAST) vorsehen. Diese Tests lassen sich automatisiert und effizient in kürzester Zeit im laufenden Betrieb durchführen und helfen Ihnen, Sicherheitslücken in der Schlussphase der Entwicklung zuverlässig zu erkennen.

4. Schulen Sie Ihre Entwickler – während sie entwickeln

Nutzen Sie die Möglichkeiten moderner interaktiver Schulungsplattformen. Heute sind auf dem Markt zahlreiche innovative Analyselösungen verfügbar, die Ihre Entwickler schon während der laufenden Programmierung auf mögliche Fehler hinweisen. So lernt Ihr Team On-the-fly dazu.

5. Decken Sie den gesamten SDLC ab

Führen Sie Ihre Analyse-Werkzeuge in einem durchgängigen Prozess zusammen, der von den ersten Design- und Entwicklungsstufen bis hin zum Go-live reicht – und definieren Sie auch verbindliche Feedback-Zyklen für weiterführende Modifikationen im laufenden Betrieb. So minimieren Sie das Risiko für Ihr Business und stellen Ihren Kunden ein hochwertiges, sicheres Produkt zur Verfügung – ohne die Geschwindigkeit von DevOps zu beeinträchtigen.

6. Stellen Sie Ihre Entwickler in den Mittelpunkt

Binden Sie Ihre Entwickler vom ersten Tag an eng in das Projekt „Software-Security“ ein, um sicherzustellen, dass die Lösung akzeptiert und aktiv genutzt wird. Dazu gehört, dass sie sich am Entscheidungsprozess für eine geeignete Plattform beteiligen können, Oberflächen an den Entwicklungsprozess angepasst werden und auch die Optimierung der Security-Plattform in enger Absprache mit den Entwicklern stattfindet.

7. Priorisieren Sie Code-Schwachstellen

Achten Sie bei der Auswahl Ihrer Software-Security-Plattform darauf, dass Schwachstellen nicht nur identifiziert, sondern auch priorisiert werden. So machen Sie es den Entwicklern leicht, die unvermeidlichen False Positives von kritischen Fehlern zu unterscheiden. Korrelieren Sie die Rohergebnisse aus SAST, IAST und OSA mithilfe von Machine-Learning-Algorithmen, um den Entwicklern handlungsrelevante Empfehlungen für die Fehlerbehebung an die Hand zu geben.

8. Binden Sie alle Programmiersprachen und Frameworks ein

Achten Sie darauf, dass Ihre Security-Plattform alle gängigen Programmier- und Skriptsprachen (z. B. Java, C#, JavaScript, TypeScript, PHP, Python) und alle gängigen Entwicklungsumgebungen (z. B. Eclipse, IntelliJ, Visual Studio) unterstützt. So garantieren Sie, dass die Entwickler durchgehend von den Analyselösungen profitieren.

9. Achten Sie auf einfache Administrierbarkeit

Stellen Sie Ihren Verantwortlichen geeignete Orchestrierungswerkzeuge zur Verfügung, die sie jederzeit über die aktuelle Sicherheitslage im Bilde halten, Code-Fehler projektweise darstellen und vollständige, chronologische Reports zu allen KPIs liefern. Integrieren Sie auch intelligente Richtlinienkonzepte für proprietäre Code- und Open-Source-Softwarekomponenten sowie Zugriffsberechtigungen.

10. Automatisieren Sie Ihre Security-Tests

Soll die Software-Security mit der Geschwindigkeit von DevOps Schritt halten, ist die Automatisierung der Analyseprozesse unerlässlich. Nur wenn es Ihnen die Software-Security-Plattform ermöglicht, Test- und Optimierungsprozesse weitgehend automatisch abzuwickeln, können Sie Ihre Entwickler nachhaltig entlasten und Freiräume für innovativere Aufgaben schaffen.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45848204 / Testing)