SAP Code Vulnerability Analyzer (CVA)

1

Der SAP Code Vulnerability Analyzer (CVA) ist der statische Code-Analysator von SAP. Dieses Tool hilft Unternehmen dabei, ihre Sicherheitslücken in der ABAP-Codierung zu identifizieren und zu beheben. Es ist ein Add-On auf dem SAP NetWeaver Application Server und in das ABAP Test Cockpit (ATC) integriert.

Software ist überall. Gerade deshalb ist es von großer Bedeutung, dass diese hochzugänglichen Anwendungen auch sicher sind. Die Geschäftsanwendungen sind dabei sehr komplex, über Jahre gewachsen und auf Leistung optimiert. Für die Sicherheit ergeben sich dabei große Herausforderungen.

Wenn eine Anwendung gesichert werden soll, müssen ihre Komponenten, Funktionen, Infrastruktur und die damit verbundenen Bedrohungen verstanden werden. Um einer Anwendung zu schaden, reicht nur ein einziger Fehler in den Komponenten, den Funktionen oder in der Infrastruktur aus. Durch jede neue Technologie wird das Risiko neuer Schwachstellen weiter erhöht. Um Anwendungen sicher zu machen, reichen Firewalls, Intrusion-Detection-Systeme, Signaturen und Verschlüsselungen nicht aus. Strafen, verlorene Einnahmen und rechtliche Konsequenzen können die Folge sein.

CVA und Fortify SSC

Von der SAP gibt es zwei Lösungen für Anwendungssicherheitstests. Es gibt zum einen die dynamische Prüfung der Anwendungssicherheit. Dabei werden die Schwachstellen in der laufenden Anwendung gefunden. Dies gelingt mithilfe von manuellen Anwendungspenetrationstests und automatisiertem Scannen von Schwachstellen in Anwendungen.

Zum anderen gibt es die statische Prüfung der Anwendungssicherheit. Hierbei werden die Schwachstellen bei der Analyse der Quellen durch manuelle Überprüfung und automatisierte Analyse der Quellen gefunden. In Nicht-ABAP-System funktioniert dies mithilfe von Micro Focus Fortify Software Security Center (SSC). In ABAP-Systemen geschieht dies durch das Add-On für CVA auf dem SAP NetWeaver Application Server. Fortify SSC Metric ist abhängig von der Anzahl der Anwendungen, bei denen der Kunde statische oder dynamische Sicherheitstests durchführen möchte. Jede Anwendung, die einen Teil der Funktionalität der Anwendung liefert und separat eingesetzt werden kann, muss als eine Installation gezählt werden.

Seit 2018 sind die CVA Prüfungen in Fortify sichtbar und es gibt einen zentralen Sicherheitsscan. Fehlermeldungen aus altem Coding können unterdrückt werden und Unternehmen erhalten die Möglichkeit, Modifikationen, Erweiterungen und Customer Exits sowie Smart Forms zu prüfen. Des Weiteren gibt es eine öffentliche API, sodass eigene Berichte erstellt werden können. Zudem wird erkannt, wenn es einen Direktzugriff auf sensible DB-Tabellen oder einen potenziellen Missbrauch der URL-Umleitung gibt. CVA wurde von dem gleichen Team entwickelt, das die ABAP-Sprache erstellt hat. Es gibt eine enge Integration in die Standard-ABAP-Entwicklungs- und Testinfrastruktur.

Funktionsumfang

Der CVA sucht nach potenziell anfälligen Aussagen, bei denen der Input aus nicht vertrauenswürdigen Quellen stammt. Wichtig ist dabei, dass ausschließlich solche Vorkommnisse gemeldet werden. Die einzelnen ATC-Ergebnisse werden dann in die Baseline übernommen. Danach können alle Befunde unterdrückt werden, die Ergebnisse als freigestellt gekennzeichnet oder Ergebnissen niedrige Priorität zugewiesen werden. Die Baseline ist wirksam, solange die zugehörigen Codeabschnitte unverändert bleiben. Zu den grundlegenden Aktivitäten gehören Hinzufügen und Entfernen von einzelnen Prüfergebnissen sowie das Löschen der Baseline.

Durch die Integration in das ABAP-Testcockpit können die Code-Prüfungen von den meisten Entwicklerwerkzeugen wie ADT, SE80 und SE38 einfach gestartet werden. Zusätzlich zum Scannen einzelner Objekte können auch Gruppen von Objekten gescannt werden. Die Priorität jedes Checks kann an die Anforderungen angepasst werden. Unternehmen wird durch SAP CVA ermöglicht, die Priorität jedes einzelnen Befundes zu kontrollieren. Dabei können sie auch die eigenen Risiko- und Sicherheitsanforderungen berücksichtigen. Ebenfalls erhalten Unternehmen die Möglichkeit eines abgestuften Ansatzes, so dass Sicherheitsprüfungen im Laufe der Zeit eine höhere Akzeptanz bei den Entwicklern haben.

Quelle: SAP SE

Durch CVA können zudem die Entwickler eines Unternehmens bei der Korrektur seines Codes unterstützt werden. So erhalten sie eine detaillierte Dokumentation der festgestellten Probleme und eine Erklärung über die Art der Schwäche. Weiterhin bekommen Entwickler Informationen zur Vermeidung und Behebung der Feststellungen. Außerdem können sie direkt zu der Stelle in den Quellen, der zugehörigen Dokumentation und dem Workflow zur Erstellung einer Ausnahme navigieren. Mithilfe von CVA wird Unternehmen eine Datenflussanalyse ermöglicht, was für eine reduzierte False-Positive-Rate sorgen kann. Durch Freistellungs-Workflows wird zudem die Handhabung von falsch-positiven Daten erleichtert.

Unternehmen können mit dem ABAP Test Cockpit eine Remote-Code-Analyse durchführen. Somit haben sie ein zentrales ATC-System für alle Sicherheitsprüfungen in ihrer Systemlandschaft. Dann geben Remote Stubs ein Modell aus einem benutzerdefiniertem Code zurück. Auf dem zentralen System wird eine Prüflogik ausgeführt und eine Prüfvariante gepflegt. Ebenso werden neue Prüfungen installiert und Ausnahmen gespeichert.  Zudem ist es in das Entwicklungssystem integriert. Diese Eigenschaften reduzieren insgesamt den Verwaltungsaufwand und legen einen Qualitätsstandard für die gesamte Systemlandschaft fest.

Konfiguration und Verwaltung

CVA ist in den folgenden SAP_BASIS-Releases verfügbar:

– SAP NetWeaver AS ABAP 7.0 EhP2 Support Package 14

– SAP NetWeaver AS ABAP 7.0 EhP3 Support Package 09

– SAP NetWeaver AS ABAP 7.3 EhP1 Support Package 09

– SAP NetWeaver AS ABAP 7.4 Support Package 05 und spätere Versionen

Die Konfiguration und Verwaltung von CVA (und ATC) kann in vielen Systemen kostspielig sein. Neue CVA-Prüfungen und Erweiterungen bestehender Prüfungen werden in Upgrades und/oder Support-Paketen geliefert. Das Upgrade eines Systems für Nutzung der Vorteile neuester Prüfungen kann andere Softwarekomponenten im System beeinträchtigen, die ein niedrigeres Release benötigen.

Damit Unternehmen das CVA-Tool nutzen können, muss mit dem Report RSLIN_SEC_LICENSE_SETUP die Ausführung von systemweiten Sicherheitskontrollen aktiviert werden. Im Anschluss sind die Sicherheitskontrollen in Standard-APAB-Code-Checking-Tools wie ABAP Test Cockpit (ATC) oder Code Inspector (SCI) verfügbar. Diese Option dieser Prüfungen nennt man üblicherweise „Sicherheitsanalyse im erweiterten Programmcheck“.

Fazit

Um Bedrohungen umgehen zu können oder zumindest erkennen zu können, woher sie stammen, reichen die Sicherheitsmaßnahmen, die vor Jahren galten, heutzutage nicht mehr aus. Wer das alles ohne Hilfe bewerkstelligen will, wird schnell an Grenzen stoßen. Mit dem Tool CVA können Unternehmen ihre Sicherheitslücken einfach in der ABAP-Codierung identifizieren und beheben.


Artikel war hilfreichArtikel empfehlen


Dieser Beitrag ist auch als Download verfügbar:

Kommentar verfassen


Unsere Top-Downloads

Angebot anfordern
Preisliste herunterladen
Expert Session
Support