Sicherheitslücken beseitigen

Feature | 29. Mai 2006 von admin 0

Web-Services spielen für die Integrations- und Applikationsplattform SAP NetWeaver eine wichtige Rolle, da sie Anwendungskomponenten als Dienste bereitstellen. Die Integration unterschiedlichster Applikationen – ganz gleich ob SAP- oder Nicht-SAP-Lösungen – gestaltet sich mit Hilfe der Web-Services-Technologie äußerst flexibel und vielfältig. Jedoch steigt damit auch das Risiko von Sicherheitslücken. Bei der Einführung und Verwaltung eines auf SAP NetWeaver basierenden Web-Services ist es daher unerlässlich, das Risikoverhalten des Dienstes zu kennen. Die Analyse dieser Schwachstellen gehört zu den wichtigsten Aufgaben der SAP-Sicherheitsmanager.

SAP NetWeaver

SAP NetWeaver

Für das Verständnis einer solchen Analyse ist es notwendig, SAP NetWeaver wie auch die Web-Services zu kennen, die damit unterstützt werden. SAP NetWeaver ist die Technologieplattform, auf der die SAP ihr Konzept der Enterprise Services Architecture (ESA) umsetzt, das heißt Unternehmensanwendungen als Dienste anbietet. Als umfassende Integrations- und Applikationsplattform dient SAP NetWeaver als Grundlage für sämtliche SAP-Lösungen. Sie besteht aus mehreren Schichten, die alle Web-Service-fähig sind. Zwei dieser Schichten – die Applikationsplattform (application platform) und die Prozessintegration (process integration) – spielen eine entscheidende Rolle für die Anwendungsintegration auf Basis von Web-Services.
Der SAP Web Application Server (SAP Web AS) bildet die Applikationsplattform und unterstützt die Java 2 Enterprise Edition (J2EE). Entwickler können Code in der Programmiersprache ABAP (Advanced Business Application Programming) entwickeln und kundenspezifische betriebswirtschaftliche Funktionen in einen BAPI-Aufruf (BAPI = Business Application Programming Interface) einbinden. Die Applikationsplattform stellt die BAPI-Aufrufe – ganz gleich ob sie kundenspezifisch oder vorkonfiguriert sind – in Form von Web-Services bereit. Auf diese Weise lassen sich SAP-Funktionen schnell und flexibel unternehmensübergreifend in andere Anwendungen integrieren.
Die SAP NetWeaver Exchange Infrastructure (SAP NetWeaver XI) dient als Integrations-Broker. Sie ermöglicht es mit Hilfe von offenen Standards wie der Extensible Markup Language (XML), diverse SAP-Anwendungen und Komponenten anderer Anbieter einzubinden. Mit SAP NetWeaver XI lassen sich SAP-Lösungen Web-Service-fähig machen. Dabei fungiert SAP XI als Proxy, auf dem die Clients einen Web-Service aufrufen, der wiederum über einen Adapter einen normalen Aufruf bei der SAP-Applikation startet.

Sicherheitsmängel erkennen

Die Sicherheitslücken von Web-Services lassen sich in zwei Kategorien unterteilen: Schwachstellen in Lieferanten- und Schwachstellen in Kundenapplikationen. Als Schwachstellen in Lieferantenapplikationen bezeichnet man Sicherheitsmängel in einer als Web-Service bereitgestellten Komponente des Lieferanten, zum Beispiel im XML-Parser, der SOAP/XML-Nachrichten (Simple Object Access Protocol/Extensible Markup Language) auf syntaktische Korrektheit prüft. Er kann einem Pufferüberlauf (Buffer Overflow) ausgesetzt sein und daraufhin einen Kommunikationsabbruch (XML Denial of Service) oder eine Unterbrechung des Web-Services verursachen.
Bei Schwachstellen in Kundenapplikationen dagegen handelt es sich um Sicherheitslücken, die in Web-Service-Anwendungen auftreten und durch Programmierfehler in der Business-Logik ausgelöst werden. Allgemeine XSD-Schemata (XSD = XML Schema Definition), die die Struktur von Web-Service-Applikationen offen legen, enthalten unzählige Informationen darüber, wie die eingehende Anforderung vom Dienst verarbeitet wird. Fehler bei der Eingabe von Datenformaten und Parametern können Applikationsschwachstellen deutlich machen. Die wiederum können schuld daran sein, dass Web-Services unterbrochen oder sensible Daten allgemein zugänglich gemacht werden. Andere Gefahren gehen von mangelhafter Zugriffssteuerung oder von nicht standardisierten Authentifizierungsschemata aus.
Innerhalb von SAP NetWeaver allerdings ist eine Unterbrechung von Web-Services durch Schadprogramme aus diversen Gründen unwahrscheinlich:

  • Im Umfeld von SAP NetWeaver sind die Web-Services eng mit Lösungen zum Identitätsmangement verzahnt. Dadurch sinkt das Risiko, dass sie im B2B-Umfeld durch Schadprogramme unterbrochen werden.
  • Die SAP-Web-Services basieren auf J2EE, was die Gefahr von Buffer-Overflow-Angriffen verringert. Da die Java Virtual Machines (JVMs) die Größe der in den Programmspeicher geschriebenen Daten begrenzen, werden solche Sicherheitsmängel vermieden.
  • Dass ein Web-Service in einer B2B-Umgebung in böser Absicht von einem Benutzer oder Hacker unterbrochen wird, ist eher Mythos als Realität. Im wettbewerbsorientierten Wirtschaftsumfeld unserer Tage wird niemand einen Web-Service stören, um traurige Berühmtheit zu erlangen. Vielmehr geht es Hackern in der Regel darum, über einen Web-Service an sensible Daten zu kommen.

Die Zugriffssteuerung ist das A und O

Die Gefahr für Web-Service-fähige Applikationen im Umfeld von SAP NetWeaver besteht vor allem darin, dass vertrauliche Wege, die Geschäftspartnern oder Konsumenten von Web-Services bereitgestellt werden, von nicht autorisierten Anwendern ausgenutzt werden können. Unter “Konsument” versteht man beispielsweise eine vertrauenswürdige Applikation mit starken Authentifizierungsmechanismen wie dem SSL-Client-Zertifikat (SSL = Secure Sockets Layer) oder den SAP Logon Tickets. Bei einer schwachen Zugriffssteuerung allerdings lassen sich die Authentifizierungsmechanismen mit Hilfe dieses Konsumenten manipulieren, um Zugang zu geschützten Ressourcen zu erlangen. Damit besteht die Gefahr, dass sensible Daten über die unzureichend gesicherte Web Services Definition Language (WSDL) offen gelegt werden. Dieses Problem kann verstärkt auftreten, wenn in SAP NetWeaver nicht nur die Anwendungen eines großen Unternehmens, sondern auch die Lösungen seiner Geschäftspartner integriert sind.
Da sich SAP NetWeaver zunehmend auf Web-Services stützt, ist es für jeden SAP-Sicherheitsmanager unerlässlich, das Missbrauchsrisiko seiner Web-Service-fähigen Applikationen durch automatische Schwachstellenanalysen zu mindern. Diese Analyse muss sicherstellen, dass die Zugriffssteuerungsrichtlinien für jede im Rahmen von SAP NetWeaver publizierte Web-Service-Operation gründlich getestet werden. Der SAP-Sicherheitsmanager muss daher alle von SAP NetWeaver, SAP NetWeaver XI, J2EE und ABAP-Komponenten produzierten WSDLs prüfen. Um eine angemessene Zugriffssteuerung zu gewährleisten, ist dies für jede WSDL-Operation zu wiederholen.
Da Web-Services zahlreiche Identitäten unterstützen, muss sich der Sicherheitsmanager sowohl auf positive als auch auf negative Identitätstests konzentrieren. Kann er diese Tests nicht automatisiert durchführen, besteht allerdings die Gefahr, dass seine Konzentration nachlässt und sich dadurch Fehler einschleichen.

Automatisierte Prozesse für Sicherheitstests

Darüber hinaus muss die Schwachstellenanalyse alle Facetten des für die Clients veröffentlichten XML-Schemas testen. Dazu ist es notwendig, umfassende Angriffsvektoren zu generieren, die sich aus dem XML-Schema ableiten lassen. Solche Tests machen undichte Stellen sichtbar, die sich aus der falschen Handhabung von Fehlerzuständen auf der Applikationsschicht ergeben. Die Analyse der Antwortdaten von SAP NetWeaver XI, Web-Services, J2EE oder ABAP erfordert einen automatischen Filterprozess, um die Anzahl der falschen Positiv- und Negativdaten zu reduzieren.
Schließlich ist bei der Schwachstellenanalyse auch die Risikoeinschätzung und -beseitigung von Bedeutung. Die während der Tests aufgedeckten Schwachstellen sollten also in einem Bericht zusammengefasst und nach ihrem Schweregrad klassifiziert werden. Der Bericht muss Empfehlungen zu Lösungen und zur Risikobeseitigung enthalten und aufzeigen, wo die Web-Service-Operationen angreifbar sind.
In komplexen SAP-Implementierungen lassen sich solche umfangreichen Tests nicht manuell durchführen. Eine detaillierte und präzise Sicherheitseinschätzung ist nur mit automatisierten Prozessen und Tools möglich.

Rizwan  Mallal

Rizwan Mallal

Tags:

Leave a Reply