WHITEPAPER Virtual Forge CodeProfiler for SAP® HANA Version 1.0 - Gültig ab 30.07.2015 © 2015, Virtual Forge GmbH Inhaltsangabe Inhaltsangabe ...................................................................................................................... 2 Management Summary ....................................................................................................... 3 Herausforderungen ............................................................................................................ 3 Unsere Lösung im Überblick .............................................................................................. 5 Umfassende und anpassbare Prüfinhalte ........................................................................... 6 Technologie ....................................................................................................................... 6 Ausblick ............................................................................................................................... 7 Über Virtual Forge ............................................................................................................... 8 Disclaimer .......................................................................................................................... 8 Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH Management Summary CodeProfiler for SAP HANA ermöglicht Unternehmen ihre Eigenentwicklungen auf der neuen SAP HANA Plattform von Anfang an automatisiert auf Sicherheits- und Qualitätsdefekte zu untersuchen. Die interaktive Analyse- und Korrekturlogik unterstützt dabei mit SQL Script, UI5 und XSJS die komplette Palette der Programmiermodelle und gibt den Entwicklern bereits während der Eingabe unmittelbares und detailliertes Feedback zur Codequalität. Die SAP HANA Plattform wird von der SAP als größte technologische Innovation seit der Einführung von R/3 in den 1990er Jahren gesehen. Tatsächlich unterscheidet sich HANA grundlegend von anderen Technologien im SAP Portfolio – nicht zuletzt aufgrund der neuen Programmierumgebung, die auf verschiedenen Programmiersprachen basiert. Für Entwickler bedeutet dies allerdings, dass sie bei der Programmierung auf HANA in weiten Teilen Neuland betreten. Das erschwert es, die eigenentwickelten Programme sicher, performant, robust und auf einem allgemein hohen Qualitätsniveau zu halten. Aus diesem Grund wurde der CodeProfiler for SAP HANA entwickelt. CodeProfiler for SAP HANA lokalisiert und beseitigt kritische Sicherheits-, Compliance- und Performanceschwachstellen in HANA-Programmen bereits bei der Entwicklung. Dadurch werden Ausfälle und lange Laufzeiten vermieden, die teure Korrekturen verursachen und Sicherheitslücken geschlossen bevor sie von Angreifern gefunden und ausgenutzt werden können. Die Code-Prüfung erfolgt dabei direkt in der Entwicklungsumgebung. CodeProfiler for SAP HANA unterstützt dabei sowohl die SAP HANA Studio/Eclipse-Plattform als auch SAPs hauseigene WebIDE. CodeProfiler for SAP HANA wird mit umfangreichen Prüfungen ausgeliefert, die aus den langjährigen Erfahrungen der Virtual Forge und aus zahlreichen HANA Kundenprojekten resultieren. Zusätzlich wird es möglich sein, dass Kunden eigene Prüfungen definieren und hinzufügen. Herausforderungen Kundenspezifische Anpassungen und Entwicklungen erfolgen bei allen Unternehmen, die SAPSoftware nutzen – SAP HANA ist da keine Ausnahme. In einem SAP ABAP-basierten ERP System beispielsweise befinden sich im Durchschnitt zwei Millionen Zeilen kundeneigene Programme. Dies öffnet Angreifern neben den bekannten Angriffspunkten des SAP Standards eine weitere sehr große Angriffsfläche und die Option, Informationen aus SAP Systemen zu entwenden. Bei HANA kommen jedoch noch weitere Herausforderungen dazu. Vor allem: Alle bereits vorhandenen kundeneigenen Programme müssen angepasst werden, um auch auf HANA lauffähig zu sein – das gilt insbesondere dann, wenn HANA als Ersatz für eine reguläre relationale Datenbank verwendet wird. Wird HANA als vollständige Applikationsplattform eingesetzt, ist es mit wenigen Anpassungen nicht getan. Die kundeneigenen Programme müssen komplett neu geschrieben werden. Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH Eines der Probleme dabei ist, dass selbst gestandene ABAP-Entwickler zu einem großen Teil die Entwicklung auf HANA neu erlernen müssen – was wiederum das Risiko für Fehlern und Sicherheitslücken erhöht. Es ist daher unumgänglich, die nativ auf HANA programmierten Anwendungen auf Sicherheitsrisiken und Qualitätskriterien hin zu überprüfen. Eine manuelle Prüfung aufgrund der Komplexität und des Umfang der Thematik ist dazu wenig geeignet. Um diese Prüfung zu automatisieren und schon im Entwicklungsprozess zu vermeiden, haben wir den CodeProfiler for SAP HANA entwickelt. Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH Unsere Lösung im Überblick CodeProfiler for SAP HANA setzt auf die Entwicklungsumgebungen, die für HANA verwendet werden, auf: Eclipse und SAPs hauseigene WebIDE. In beiden Umgebungen überprüft CodeProfiler for SAP HANA den Programmcode während der Programmierung. So steht dem Entwickler Feedback zur Qualität und Sicherheit seiner Programme direkt zur Verfügung. Ganz wie bei einer Rechtschreibprüfung. CodeProfiler for SAP HANA unterstützt dabei alle in SAP HANA verwendeten Programmiersprachen: SQLScript XSJS (Geplant) SAPUI5 (Geplant) R Abbildung 1 – CodeProfiler for SAP HANA Integration in die Eclipse-Entwicklungsumgebung Neben dem direkten Feedback während der Eingabe steht dem Entwickler eine ausführliche Dokumentation zum jeweiligen Testfall zur Verfügung. Diese enthält: Kurzbeschreibung Risiko Detaillierte Erläuterung Detaillierter Lösungsansatz Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH In kommenden Versionen von CodeProfiler for SAP HANA wird es darüber hinaus möglich sein, eine vordefinierte Problemlösung ("Quick Fix") direkt in den Code einzubinden. Das spart dem Entwickler Zeit, die stattdessen für die Entwicklung der Applikation zur Verfügung steht. Umfassende und anpassbare Prüfinhalte CodeProfiler for SAP HANA wird mit Testfällen in den Bereichen Sicherheit und Qualität ausgeliefert. Innerhalb dieser beiden Bereiche (Domains) gibt es folgende Kategorien: Sicherheit Security Compliance Data Loss Prevention Qualität Maintainability Robustness Performance Folgende Testfälle sind in der ersten Vorversion von CodeProfiler for SAP HANA enthalten: TC1: SQL Injection (Security) TC2: Value Coercion (Robustness) TC3: Cross Site Scripting (Security) TC4: Invalid Data Type (Robustness) TC5: Invalid SQL prepared Statement Index (Robustness/Security) TC6: Data Leak (Data Loss Prevention) TC7: SELECT * (Performance) TC8: Missing WHERE Clause in SQL Statements (Performance) TC9: Flawed WHERE Clause in SQL Statements (Robustness) TC10: Missing Parameters for prepared Statement Execution (Security/Robustness) TC11: Invalid Function Invocation (Robustness) TC12: Too few Parameters (Robustness) Die Liste wird kontinuierlich um weitere Testfälle erweitert. Technologie Der Virtual Forge CodeProfiler for SAP HANA ist vollständig in die Entwicklungsumgebungen SAP HANA Studio/Eclipse und WebIDE integriert. Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH Ausblick Für zukünftige Versionen des CodeProfiler for SAP HANA sind folgende Erweiterungen in Planung: Zusätzliche Unterstützung von SAP UI5 (Clientseitiges JavaScript) Unterstützung von Maßnahmen zur Behebung von gefundenen Schwachstellen (Virtual Forge "Quick Fix") Finding Management Integration CodeProfiler for SAP HANA Cockpit (zur Planung von Scans, zentrales Management der Findings) Scannen kompletter SAP HANA Projekte Integration in CTS+ Weitere Testfälle in allen Bereichen. Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH Über Virtual Forge ® Virtual Forge ist ein führender Anbieter von Lösungen für SAP -Sicherheit, -Compliance und -Qualität. ® Wir unterstützen unsere Kunden dabei, das Niveau der Sicherheit und Qualität von SAP -Systemen ® und Anwendungen von Grund auf zu gewährleisten. Als Pionier im Bereich ABAP -Sicherheit unterstützen wir SAP-Kunden weltweit Sicherheitslücken und Risiken aufzudecken, die Leistung des Systems zu optimieren und unnötige Investitionen zu vermeiden. Virtual Forge wurde 2001 in Heidelberg gegründet, um stark fokussiert Sicherheitssoftware für SAPSysteme zu entwickeln. Unsere erste Lösung CodeProfiler ist ein innovatives, statisches Code-Analyse-Tool mit Daten-und ® Kontrollfluss-Funktionen, für eine umfassende und genaue ABAP -Sicherheits-, Compliance- und Qualitätsprüfung. Virtual Forge SystemProfiler unterstützt Unternehmen dabei, fehlerhafte Konfigurationen in ihren SAP-Systemen aufzudecken und zu beheben sowie erneute Konfigurationsfehler zu vermeiden. Wir erweitern seitdem unser Portfolio stetig mit neuen Lösungen, um unsere Kunden in der Entwicklung von Business-Anwendungen zu unterstützen, welche somit die neuesten Sicherheits-, Compliance-und Qualitätsstandards erfüllen. Virtual Forge Niederlassungen finden Sie in Heidelberg, Weimar und Philadelphia. Disclaimer © 2015 Virtual Forge GmbH. Alle Rechte vorbehalten. SAP, SAP Solution Manager und weitere im Text erwähnte SAP-Produkte und -Dienstleistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und anderen Ländern weltweit. Dieses Dokument beschreibt geplante Eigenschaften und Funktionen von neuen Produkten der Virtual Forge GmbH. Die Virtual Forge behält sich vor, jederzeit und ohne Ankündigung von dieser Planung abzuweichen. Die Nutzung von Vorversionen der geplanten Produkte unterliegt entsprechenden Vereinbarungen („Ramp-Up Agreement“), die wir gerne zur Verfügung stellen. Kein Teil dieser Publikation darf in irgendeiner Form oder zu irgendeinem Zweck reproduziert, übertragen oder Dritten zur Verfügung gestellt werden ohne die ausdrückliche Erlaubnis der Virtual Forge GmbH, Deutschland oder der Virtual Forge Inc., Philadelphia, USA. Whitepaper CodeProfiler for SAP HANA | © 2015, Virtual Forge GmbH