F

Recycling von Open-Source-Code: Wie wirkt sich das auf die Sicherheit aus?

Beim Recycling von Open-Source-Komponenten ist die Prüfung des Codes und Patch-Management obligatorisch, da sonst Sicherheitslücken entstehen.

Eine Studie von Sonatype hat gezeigt, dass in vielen modernen Softwareprojekten Open-Source-Code recycelt wird. Dieser enthält nicht selten bekannte Sicherheitslücken. Mir ist bekannt, dass meine Firma recycelten Code verwendet. Mich beunruhigt daher die Sicherheit etwas. Haben Sie einen Tipp, wie man unsicheren Code erkennt und diesen ersetzt? Gibt es Drittanbieter, die eine solche Aufgabe übernehmen?

Die Verwendung von Komponenten und Code-Snippets Dritter in neuen Anwendungen ist zu einem der größten Security-Probleme geworden. Dies bestätigt die Top-Ten-Liste der Applikations-Sicherheitslücken des Open Web Application Security Projects (OWASP). In vorhergehenden Untersuchungen wurde dies noch im allgemeinen Bereich „Security Misconfiguration“ integriert. Allerdings hat sich das Problem massiv ausgeweitet, so dass man „Using Components with Known Vulnerabilities“ (Komponenten mit bekannten Sicherheitslücken) eine eigene Kategorie gegeben hat.

Die Ergebnisse von Sonatypes Open-Source-Software Development Survey zeigt deutlich, warum recycelter Code zu anfälliger Software führt. Der Bericht enthüllt, dass die meisten der 3500 befragten Entwickler und Software-Architekten mindestens 80 Prozent Open Source und rund 20 Prozent maßgeschneiderte Komponenten und Code verwenden. Doch das ist nicht wirklich das Problem. Vielmehr zeigt es sich darin, dass 76 Prozent der großen Unternehmen keine Kontrolle über die Komponenten haben, die in ihren Software-Entwicklungs-Projekten eingesetzt werden. Darüber hinaus inventarisieren 65 Prozent die in den produktiven Applikationen eingesetzten Komponenten in keiner Weise. Erschwerend kommt hinzu, dass sich rund die Hälfte ihrer Entwickler nicht auf Sicherheit fokussieren. Kombinieren Sie all diese Aspekte, beantwortet sich nachfolgende Frage von selbst: Warum hat OWASP wohl eine eigene Kategorie aus „Wiederverwendung von Code in der Applikationsentwicklung“ gemacht?

Um diese Entwicklung in den Griff zu bekommen, müssen die Teams eine aktuelle Liste mit sämtlich verwendeten Code-Schnippseln pflegen. Das gilt auch für Abhängigkeiten und Quellen. Zusätzlich sollte jeder Quelle eine Person zugewiesen sein, die sich über die Listen auf dem Laufenden hält. Diese Aufgaben lassen sich einfacher mit einem Repository-Management-Tool realisieren. Dann haben Sie bei der Softwareentwicklung eine zentrale Anlaufstelle für die Softwarekomponenten und deren Abhängigkeiten. Dies hilft auch bei der Bereitstellung. Ein Repository-Manager könnte sich außerdem um die Einhaltung von Policies bei der Wiederverwertung von Code kümmern.

Nur überprüfte Komponenten dürfen in das entsprechenden Repository. Zudem sollten Entwickler nur auf sichere Komponenten Zugriff haben und diese in eigenen Projekten verwenden. Geeignete Tools für das Repository-Management sind zum Beispiel Nexus von Sonatype oder Stash von Atlassian. Sie helfen bei der Integration eines Lifecycle-Managements der Applikationen. Weiterhin bieten Sie eine Inventar-Funktion. Mit dieser haben Sie genau im Blick, welche Komponenten sich in den Repositories und den produktiven Applikationen befinden. Ebenso ist ein Alarmsystem enthalten, falls neue Sicherheitslücken ans Tageslicht geraten. Somit ist das Monitoring der entsprechenden produktiven Applikationen einfacher.

Durch einen Repository-Manager wird die Verwaltung von Komponenten und Code einfacher. Dennoch brauchen Sie für das Code-Recycling klare Regeln. Ebenso sollten Sie einen Verantwortlichen für Open Source haben, um Verwirrung zu vermeiden. Ein Plan für den Notfall ist außerdem wichtig. Dann können Sie im Fall kritischer Patch-Releases für die verwendeten Komponenten schnell reagieren. Sicherheitslücken in Open-Source-Komponenten, -Frameworks und -Bibliotheken werden von Cyberkriminellen schnell ausgenutzt. Sie sind in der Lage, ihre Angriffe zu automatisieren. Außerdem wissen sie, dass Applikationen mit dem anfälligen Code ein dankbares Ziel sind. Das gilt so lange, bis ein entsprechender Patch bereit steht.

Die Vorteile von Open-Source-Code überwiegen meistens. Komplette Eigenentwicklungen mit ähnlichen Funktionalitäten kosten in der Regel mehr Zeit und Ressourcen. Der Nachteil ist natürlich, dass Sie die den Code von Drittanbietern sorgfältig überprüfen und auf dem aktuellen Stand halten müssen.

Artikel wurde zuletzt im Dezember 2013 aktualisiert

Erfahren Sie mehr über Open Source: Sicherheitstools und -Anwendungen

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchStorage.de

SearchNetworking.de

SearchEnterpriseSoftware.de

SearchDataCenter.de

Close