Sichere SAP®-Anwendungen / Sicherer ABAP-Code

Schutz von ABAP-Code in den Bereichen Sicherheit, Compliance, Performance, Wartbarkeit und Robustheit.

Funktionsweise

Das Werkzeug nutzt Daten- und Kontrollflussanalysen in Verbindung mit einem umfangreichen Bestand an Regeln, der viele Datenquellen und gefährliche ABAP-Statements umfasst.

Bei der Datenflussanalyse werden zunächst Datenquellen identifiziert, d.h. Stellen im Code, an denen (externe) Daten in Variablen eingelesen werden. Anschließend wird analysiert, ob es Verbindungen zwischen einer Datenquelle und einem potentiell gefährlichen Statement gibt. Jede identifizierte Verbindung (Datenfluss) zeigt an, dass das Statement mit großer Wahrscheinlichkeit eine Gefährdung darstellt und als Schwachstelle ausgenutzt werden kann.

Auf Basis der Datenflussanalyse finden weitere Prüfungen wie Typisierung, Berechtigungsprüfung, Nutzung regulärer Ausdrücke etc. statt. Dadurch wird eine Priorisierung und damit eine Effizienzsteigerung im Prozess erreicht.

Integration in die SAP® Technologie

Mit der Integration in das SAP® Transport Management System (TMS) erhalten Sie die Möglichkeit, die Transporte vor dem eigentlichen Release sowohl auf Aufgabenebene als auch auf Transportebene (oder auf beiden Ebenen) mit dem Werkzeug automatisch zu überprüfen, freizugeben oder bei Bedarf einem definierten Ausnahmeprozess zuzuführen.

Eine automatisierte Überprüfung vor einem Import in ein bestehendes System (Entwicklung, Konsolidierung, Produktion) kann dabei wie die Prüfung während der Releasephase erfolgen. Dabei ist es technologisch unerheblich, ob ein oder mehrere SAP®-Systeme angebunden werden.

Es werden die bekannten Transport- und Freigabemechanismen wie Transport Management System (TMS), Change Request Management (ChaRM) und Change und Transportsystem (CTS) sowie das CTS plus unterstützt.

Die Integration mit anderen evtl. bereits eingesetzten Zusatztools, wie beispielsweise theGuard, TransportManager von Realteach, Transport Express von Basis Technologies oder anderen ist möglich.

Ein vorkonfigurierter SAP® Workflow (Notification- und Approval-Workflow) für Freigabe-, QA- und Ausnahmeprozess ist in der Standardauslieferung enthalten.

Nutzen

Testautomatisierung

  • Vermeiden von Fehlern vor dem Go-Live
  • Überprüfung von Qualitätsstandards

Risikominimierung

  • Compliance: Gewährleistung von Applikationssicherheit
  • Audit: individuelle Dokumentation
  • Quality: Transparenz über Sicherheit, Compliance, Performance, etc.

Sicherheit & Kontrolle

  • Kontrolle: Qualität der Fremdentwicklungen messen
  • Transparenz: Detailliertes Reporting von kritischen Faktoren
  • Effektivität: Priorisierung der klassifizierten Ergebnisse
  • Know-How Transfer: Anleitung zur sicheren Codeprogrammierung

Verschiedene Testbereiche

Testbereich Sicherheit

Diese Domäne deckt Testfälle ab, die sich auf allgemeine Sicherheitsdefekte beziehen, beispielsweise Code mit versteckten Nebeneffekten, die von Angreifern ausgenutzt werden können. Unter www.bizec.org finden Sie Sicherheitsrisiken für betriebswirtschaftliche Anwendungen.

Testcases – Beispiele: ABAP Command Injection, Directory Traversal, Cross-Site Scripting, Missing AUTHORITY-CHECK, Pishing, SQL Injection, Testbereich Compliance

Testbereich Compliance

Diese Domäne umfasst Testfälle in Bezug auf Compliance-Verstöße, etwa Coding-Praktiken, die wichtige Sicherheitsmechanismen im SAP®-Standard umgehen.

Testcases – Beispiele: Hard-coded User Name (sy-uname), Cross-Client Access to Business Data, Hidden ABAP Code

Testbereich Performance

Diese Domäne enthält Testfälle zum Identifizieren von Coding-Praktiken mit negativen Auswirkungen auf die Performance ihres SAP®-Systems.

Testcases – Beispiele: Usage of WAIT Command, Database Modifications in a Loop, SELECT Statement in a Loop, Usage of LIKE Clause, Missing WHERE Restriction in SELECT Statement, Nested SELECT Statement

Testbereich Wartbarkeit

Die Testfälle in dieser Domäne analysieren den ABAP-Code auf Schwachstellen, die die Wartung des Systems erschweren. Hierzu zählen:

  • Coding, das für neue Entwickler schwer nachvollziehbar ist
  • Coding mit einer komplexen Struktur
  • Unzureichende Dokumentation

Testcases Beispiele: Empty Block, Empty Module, Overlong Module

Testbereich Robustheit

Diese Domäne bietet Testfälle für Coding-Praktiken, die die zuverlässige Ausführung von betriebswirtschaftlichen Anwendungen gefährden. Ein wichtiger Vorteil von robustem Code ist  die Gewährleistung reibungsloser Geschäftsabläufe (Business Continuity): Robuster Code reagiert auf Fehler in einer kontrollierten, zuverlässigen und vorhersehbaren Art und Weise.

Testcases – Beispiele: Insufficient Error Handling (TRY/CATCH), Incomplete CASE Statement, Recursion (Immediate)

Einführung

  • In Abhängigkeit der Anzahl und Ausprägung der vorhandenen SAP®-Systemen und des zugehörigen ABAP-Codings schwankt der Aufwand.
  • SAP® zertifizierte SAP® AddOn-Lösung

Download