Skip to main content

Neuer Gartner Market Guide unterstreicht die Bedeutung von Software Composition Analysis (SCA)

Artikel von

1. September 2020

0 Min. Lesezeit

Der 2020 Gartner Market Guide für Software Composition Analysis (SCA) ist erschienen. Er unterstreicht die wachsende Bedeutung von Open Source Software-Sicherheit und gibt Empfehlungen für ein effektives Risikomanagement und die Risikominderung.

Laut dem Guide setzen mehr als 90 % der Unternehmen auf Open-Source-Software. Dafür gibt es viele Gründe, doch vor allem ermöglicht Open Source Entwicklerinnen und Entwicklern, produktiver zu arbeiten und Code schneller bereitzustellen.

Diese Abhängigkeit birgt erhebliche Sicherheitsrisiken. Gartner stellte fest, dass Sicherheitslücken die größte Herausforderung für Unternehmen bei der Nutzung von Open Source darstellen. Sie gelangen entweder über direkte oder transitive Open-Source-Abhängigkeiten in die Software.

Um diese Herausforderung zu bewältigen, hebt Gartner die wachsende Rolle hervor, die Software Composition Analysis (SCA) dabei spielt, Entwicklungs- und Sicherheitsteams dabei zu unterstützen, Probleme erfolgreich zu erkennen und zu beheben. Wie es im Guide heißt: „Ohne Software Composition Analysis können die Vorteile von OSS in der Anwendungsentwicklung leicht von den Risiken überwogen werden“.

Werfen wir einen genaueren Blick auf die Analyse und die im Guide enthaltenen Empfehlungen von Gartner.

Empfehlungen zur Sicherheit von Open-Source-Software

Gartner empfiehlt Unternehmen die folgenden vier Schritte, um die Risiken von Open-Source-Software zu verwalten und zu mindern:

  • SCA-Tools in das Toolkit für Anwendungssicherheitstests aufnehmen – SCA-Tools helfen Unternehmen dabei, Sicherheitslücken und Lizenzprobleme in den verwendeten Open-Source-Komponenten zu erkennen. Sie sollten ein zentraler Bestandteil der gesamten AppSec-Strategie eines Unternehmens sein.

  • Die Software-Supply-Chain absichern – Moderne Anwendungen bestehen aus verschiedenen Bausteinen, die aus internen und externen Repositories stammen. Diese Supply Chain muss wiederholt und automatisiert auf Sicherheitsprobleme geprüft werden.

  • Richtlinien für die automatisierte Durchsetzung festlegen – Unternehmen müssen entscheiden, welches Risikoniveau sie akzeptieren können, und dieses über die verschiedenen Phasen des Softwareentwicklungszyklus hinweg durchsetzen.

  • SCA stärker in den Fokus rücken – SCA muss ein integraler Bestandteil bestehender Entwicklungs-Workflows werden. SCA-Tools sollten „der Standard sein, nicht die Ausnahme“.

Die Rolle von SCA-Tools verstehen

Wie die obigen Empfehlungen zeigen, spielen SCA-Tools eine zentrale Rolle. Der Gartner Guide beschreibt die grundlegenden Funktionen dieser Tools und erklärt, warum sie für die erfolgreiche Verwaltung und Minderung von Risiken in Open-Source-Software so wichtig sind.

Open-Source-Komponenten identifizieren

SCA-Tools analysieren Anwendungen und identifizieren ihre Abhängigkeiten von Open-Source-Paketen – sowohl direkte als auch transitive Abhängigkeiten. Wie Snyk bereits gezeigt hat, werden 80 % der Sicherheitslücken über transitive Abhängigkeiten eingeführt. Diese Funktion ist daher entscheidend für eine wirksame Risikominderung.

Lizenzkonformität verwalten

SCA-Tools ermitteln auch, welche Open-Source-Lizenzen verwendet werden, und helfen Unternehmen so, die mit Open-Source-Software verbundenen rechtlichen Risiken zu mindern. Unternehmen können mit SCA-Tools Lizenzrichtlinien festlegen, um sicherzustellen, dass in frühen Entwicklungsphasen keine rechtlichen Risiken entstehen.

Sicherheitslücken

Nachdem SCA-Tools die verwendeten Open-Source-Abhängigkeiten identifiziert haben, gleichen sie diese mit Schwachstellendatenbanken ab und weisen auf Sicherheitslücken in den Abhängigkeiten hin. Manche SCA-Tools stellen nach der Identifizierung auch Informationen bereit, die bei der Behebung helfen. Snyk bietet beispielsweise kontextbezogene Empfehlungen zur Behebung sowie präzise Sicherheitspatches, damit Teams Sicherheitslücken zeitnah schließen können.

Governance und Kontrolle

Mit SCA-Tools lassen sich Sicherheits- und Lizenzrichtlinien über die verschiedenen Phasen des Softwareentwicklungszyklus hinweg automatisch durchsetzen. Am häufigsten unterstützen SCA-Tools dies, indem sie Sicherheitstests für Open Source in CI/CD-Prozesse integrieren. So wird verhindert, dass Sicherheitslücken weiter durch die Delivery-Pipeline gelangen.

Berichte und Analysen

SCA-Tools helfen Unternehmen dabei, BoMs (Bill of Materials, Software-Stücklisten) zu erstellen. Diese enthalten detaillierte Listen der verschiedenen im Code verwendeten Abhängigkeiten und zeigen, an welchen Stellen sie zum Einsatz kommen. Die Berichte können anschließend dazu dienen, die Gefährdung durch künftige Sicherheitsrisiken einzuschätzen, sie mit anderen Stakeholdern zu teilen und die Standardisierung zu unterstützen.

Wichtige Kriterien für die Bewertung von SCA-Tools

Wie der Guide erläutert, sind SCA-Tools nicht alle gleich und unterscheiden sich in ihrer Ausgestaltung. Um Unternehmen bei der Bewertung der verschiedenen SCA-Tools auf dem Markt zu unterstützen, gibt Gartner konkrete Empfehlungen als Orientierung für die Entscheidungsfindung.

Ökosystem- und Sprachunterstützung

SCA-Tools müssen die zentralen Programmiersprachen und Frameworks unterstützen, die ein Unternehmen verwendet. Die Anforderungen unterscheiden sich je nach Unternehmen. In der Regel ist jedoch die Unterstützung für Java, JavaScript, Python, Go, .NET, PHP und Ruby erforderlich.

Umfassende und fundierte Sicherheitsdaten

Damit Sicherheitslücken zeitnah erkannt und behoben werden, müssen SCA-Tools hochwertige Sicherheitsdaten bereitstellen. SCA-Tools beziehen diese Daten aus Schwachstellendatenbanken. Wie Gartner jedoch anmerkt, werden Ergebnisse verlässlicher und präziser, wenn man sich nicht allein auf die NVD stützt. Die Schwachstellendatenbank von Snyk bezieht Daten aus verschiedenen öffentlichen Quellen sowie aus Wissenschaft und Community und aus der Arbeit unseres Forschungsteams. So erhalten Nutzerinnen und Nutzer genaue, aktuelle und umfassende Daten.

Priorisierung

Entwicklungs- und Sicherheitsteams sehen sich mit einer überwältigenden Zahl von Sicherheitslücken konfrontiert, während ihnen nur begrenzt Zeit und Ressourcen zur Verfügung stehen. Daher müssen sie Prioritäten setzen. SCA-Tools müssen diesen Teams die nötigen Informationen für fundierte Priorisierungsentscheidungen liefern. Gartner nennt die Möglichkeit, erreichbare Sicherheitslücken im Ausführungspfad einer Anwendung zu priorisieren, als erforderliche Funktion eines SCA-Tools.

Entwicklerfreundlichkeit

SCA-Tools, die von den Endnutzerinnen und Endnutzern nicht angenommen werden, sind kaum effektiv. Im Zuge von „Shift Left“ und DevSecOps, die am Markt zunehmend an Bedeutung gewinnen, sind Entwicklerinnen und Entwickler zu den Hauptnutzenden von SCA-Tools geworden. Um diese Ansätze zu unterstützen, reicht es nicht, Entwicklerinnen und Entwicklern einfach eine Liste mit Problemen zur Bearbeitung zu übergeben oder ihnen Zugriff auf ein für das Sicherheitsteam entwickeltes Tool zu geben. SCA-Tools müssen „Developer-First“ sein: Sie müssen sich nahtlos in bestehende Entwicklungs-Workflows integrieren und dabei möglichst wenig Reibung verursachen.

Behebung

Probleme zu finden ist das eine. Sie schnell beheben zu können, das andere. Gartner betont, dass SCA-Tools Unternehmen auch bei den Schritten zur Behebung unterstützen müssen. Snyk bietet beispielsweise umsetzbare Priorisierungen und Behebungsempfehlungen, etwa einen Prioritätswert, den vollständigen Abhängigkeitsbaum, die empfohlene Korrektur und präzise Patches. Darüber hinaus erstellt Snyk automatisierte Pull Requests, um die Behebung weiter zu vereinfachen.

Integrationen

Der Softwareentwicklungszyklus ist komplex. Entwicklerinnen und Entwickler nutzen unterschiedliche Systeme und Plattformen, um ihren Code von der Entwicklung bis in die Produktion zu bringen. Idealerweise sollten Unternehmen Sicherheit für Open Source in jede dieser Phasen integrieren können. SCA-Tools müssen diese Integrationen daher als Teil ihres Angebots bereitstellen.

Berichte und BoMs

SCA-Tools sollten Unternehmen dabei helfen, die verwendeten Open-Source-Komponenten im Zeitverlauf nachzuverfolgen und auf dieser Grundlage Berichte (auch BoMs genannt) zu erstellen. Wie oben erwähnt, dienen diese Berichte dazu, die Gefährdung einzuschätzen und intern nachzuverfolgen. Sie können aber auch Voraussetzung für eine bestimmte Lizenz oder einen Beschaffungsauftrag sein.

Richtlinien

Gartner empfiehlt, mit Richtlinien festzulegen, welche Sicherheits- und Rechtsanforderungen für ein Unternehmen akzeptabel sind und welche nicht, und diese Richtlinien anschließend automatisch in den verschiedenen Projekten durchzusetzen. SCA-Tools sollten diese Funktion unterstützen.

Schlussbemerkungen

Wie geht es mit SCA weiter?

Gartner schätzt, dass derzeit nur 40 % der Unternehmen SCA-Tools tatsächlich als Teil ihres Toolsets für Anwendungssicherheitstests einsetzen. Das Interesse an SCA-Tools scheint jedoch seinen Höhepunkt zu erreichen: Die Zahl der Anfragen von Endnutzenden zu diesem Thema ist um fast 40 % gestiegen.

Angesichts der zunehmenden Nutzung von Open Source ist das nicht überraschend. Open Source spielt eine entscheidende Rolle bei der digitalen Transformation und dem rasanten Innovationstempo, das wir heute erleben – insbesondere während COVID-19. Es gibt keinen Grund anzunehmen, dass sich diese Trends so bald ändern werden.

Unternehmen nutzen Open Source, um sich in ihren jeweiligen Märkten zu behaupten. Gleichzeitig ist ihnen bewusst, dass sie die damit verbundenen Risiken verwalten und mindern müssen. Dieses Ziel erreichen Unternehmen nur mit SCA-Tools, die die oben genannten zentralen Kriterien erfüllen.

Über Snyk Open Source

Snyk Open Source hilft Unternehmen wie Salesforce, Google und Facebook, die Anwendungssicherheit zu verbessern. Entwicklungsteams können damit Sicherheitslücken und Lizenzprobleme in ihren Open-Source-Abhängigkeiten und Containern frühzeitig und während des gesamten SDLC automatisch finden, priorisieren und beheben. Anders als andere Sicherheitslösungen auf dem Markt ist Snyk Open Source ein entwicklerfreundliches Tool, das sich nahtlos in Entwicklungs-Workflows integriert. Es bietet automatisierte Behebungen und umsetzbare Sicherheitserkenntnisse, damit Unternehmen Risiken effizient erkennen und mindern können.

Starten Sie mit Capture-the-Flag

Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Challenges lösen.