HintergrundWeb Dynpro ABAP Security Guide Dieses Dokument in der Navigationsstruktur finden

 

Bei der Erstellung von Web-Anwendungen anhand des Web Dynpro ABAP Programmiermodells ist es wichtig, Sicherheitsaspekte zu berücksichtigen. Sowohl für die Erstellung von Web-Anwendungen als auch für den laufenden Betrieb dieser Anwendungen stehen Sicherheitsfunktionen zur Verfügung.

Sicherheit beim AS-ABAP

Die grundlegenden Informationen über Sicherheitsaspekte in einem AS-ABAP-System, in dem Sie Ihre Web-Dynpro-Anwendung erstellen, finden Sie hier:

Achtung Achtung

In einem Produktivsystem sollten die folgenden HTTP-Serviceknoten (Transaktion SICF) für die Konfiguration nicht aktiv sein, da eine Konfiguration immer eine Entwicklung darstellt.

  • /sap/bc/webdynpro/sap/CONFIGURE_APPLICATION

  • /sap/bc/webdynpro/sap/CONFIGURE_COMPONENT

  • /sap/bc/webdynpro/sap/WD_ANALYZE_CONFIG_APPL

  • /sap/bc/webdynpro/sap/WD_ANALYZE_CONFIG_COMP

  • /sap/bc/webdynpro/sap/WD_ANALYZE_CONFIG_USER

Weitere Informationen über aktive Service-Knoten im HTTP-Service-Baum:Aktive Services in der SICF.

Ende der Warnung.
Sicherheitsaspekte bei der Entwicklung von Web-Dynpro-Anwendungen
  • Sicherheit der Daten von Web-Anwendungen

  • Zulässigkeit von Datenbankänderungen

  • Sicherheit von View-Context-Daten

  • Sicherheitshinweise für FileUpload-UI-Elemente

  • Sicherheit von Ereignissen von UI-Elementen

    Es können beim SSR-Client nur solche Ereignisse über eine JavaScript-Attacke ausgelöst werden, die auch durch eine Nutzer-Interaktion ausgelöst werden können. Dazu wird für jedes ankommende Ereiegnis auf dem Server überprüft, ob das zugehörige UI-Element sichtbar und enabled ist. Bestimmte Ereignisse sind ebenfalls durch das Attribut readOnly am UI-Element in ihrer Ausführung eingeschränkt. Dies wird in solchen Fällen ebenfalls überprüft.

  • Sicherheit von URL-Parametern

    Eine Anwendung kann eigene URL-Parameter definieren. Der Inhalt dieser Parameter sollte von der Anwendung überprüft werden, um Attacken über diesen Weg zu vermeiden. URL-Parameter, die von Web Dynpro angeboten werden, werden von der Web-Dynpro-Laufzeit automatisch überprüft.

Benutzerverwaltung
  • Anmelden an Web-Anwendungen

    Der AS-ABAP nutzt für den Zugriff auf eine Web-Anwendung das HTTP-Framework des Internet Communication Manager (ICF), der seinerseits Funktionen für die Anmeldung am AS-ABAP bietet.

    Achtung Achtung

    Beachten Sie hierbei das Aktivieren und Deaktivieren von Services. Aus Sicherheitsgründen sollten nur genau diejenigen Services im HTTP-Service-Baum aktiv sein, die Sie wirklich benötigen. Wenn Sie dagegen Knoten auf einer höheren Ebene aktivieren, bedeutet dies, dass der gesamte darunter liegende Teil des Service-Baums ebenfalls aktiv ist und damit z.B. bei Hinterlegung des anonymen Benutzers für Zugriffe völlig offen und damit ungesichert ist.

    Ende der Warnung.

    Zusätzlich steht ein einfaches Verfahren für die Entwicklung und Konfiguration der Systemanmeldung bei Web-Anwendungen zur Verfügung, bei dem die Sicherheitsaspekte integriert sind.

  • Berechtigungen

    • Über das ICF stehen allgemeine Berechtigungsprüfungen für Services und damit Anwendungen zur Verfügung

      Weitere Informationen: Berechtigungen). Spezielle Berechtigungsprüfungen für Web-Dynpro-Anwendungen werden von der jeweiligen Anwendung je nach Bedarf vergeben.

    • Für das Starten von Web-Dynpro-ABAP-Anwendungen gibt es eine eigene Berechtigungsprüfungen.

    • Für die Personalisierung wird von Web Dynpro ABAP eine Berechtigungsprüfung angeboten, mit der die Administrations-Berechtigung für das Personalisieren von UI-Elementen abgeprüft wird.

  • Anwendungs-Abmeldeseite

    Sie können eine eigene Abmeldeseite für Ihre Web-Dynpro-Anwendung verwenden: Anwendungs-Abmeldeseite

  • SAP Trust Center Service

    Kunden können den SAP Trust Center Service nutzen, um sich SAP Passports ausstellen zu lassen. Hierbei fungiert das Kunden-ABAP-System als Registration Authority (RA) - und SAP betreibt die Certification Authority (CA).

    Hinweis Hinweis

    Beachten Sie dabei, dass die Benutzer beim Kunden sich zuerst (einmalig) browser-basiert und per Kennwort am ABAP-System anmelden müssen, um dann die SAP Passports anfordern zu können. Sobald diese angrfordert wurden, können sie vom Browser verwendet werden - vorausgesetzt, dass eine HTTPS-URL verwendet wird. In diesem Fall erfolgt die browser-basierte Anmeldung dann vollautomatisch (unter Verwendung des SAP Passports bzw. von X.509-Zertifikaten, unabhängig davon, ob man den Browser direkt aufruft, auf eine HTTPS-URL in einer Mail klickt oder aber der Bex Analyzer diese URL feuert.

    Ende des Hinweises.

    Weitere Informationen über die SAP Trust Center Services für SAP Passports finden Sie unter http://service.sap.com/~form/sapnet?_SHORTKEY=01100035870000437021&SCENARIO=01100035870000000202&.

Web-Anwendungen ohne Domain-Relaxing

Vor SAP NetWeaver 7.0 SP6 konnte eine Web-Dynpro-Anwendung nicht isoliert in einer Umgebung (z.B. dem SAP NetWeaver Portal) ausgeführt werden, da sie sich stets zu ihrer Umgebung bzgl. der Domäne relaxiert hat. Dies öffnet jedoch bei sicherheitskritischen Anwendungen ein mögliches Einfalltor für eine Attacke. Ein Angreifer könnte in einem anderen IFrame eine eigene Anwendung laufen lassen, seine Domäne ebenfalls relaxieren und auf die sensitiven Daten der ursprünglichen Anwendung zugreifen.

Damit dies nicht geschieht, kann mit dem Anwendungsparameter WDPROTECTEDAPPLICATION auf dem Server für eine Anwendung eingestellt werden, ob diese ihre Domäne relaxiert oder nicht.

Standardmäßig ist die Domäne weiterhin relaxiert. Der Parameter dient dazu, dieses Verhalten für sicherheitskritische Anwendungen auszuschalten.

Prüfen Sie daher, welche ihrer Anwendungen sicherheitskritisch sind und setzen Sie dann entsprechend das Kennzeichen in der Web-Dynpro-Anwendung. Dazu selektieren Sie die entsprechende Web-Dynpro-Anwendung in der SE80 und verzweigen auf die Registerkarte Parameter. Über die F4-Hilfe der Parameter können Sie den Eintrag WDPROTECTEDAPPLICATION auswählen und dann den Wert auf X setzen.

Web Dynpro Console

Wenn der Parameter sap-wd-ssrconsole=true gesetzt ist, wird die Web Dynpro Console angezeigt. Diese enthält verschiedene Informationen, wie z.B. die Build-Nummer des Renderers, die verwendete Version und verschiedene Informationen, die für den Support bei der Fehlersuche nützlich sind. Eingaben können nicht gemacht werden.

Anwendungsfehlerseiten

Sie können die vom ICF generierte Standard-Fehlerseite unterdrücken und statt dessen eine eigene Fehlerseite definieren: Anwendungs-Fehlerseite

Sicherheitsrisiko-Liste

Eine White-List-Infrastruktur im HTTP-Framework ermöglicht das Abwehren von XSS-Angriffen: Sicherheitsrisiko-Liste

Die White-List ist auch bei der Web-Dynpro-ABAP-Portal-Integration relevant, z.B. wird bei einem WDA-iView die Portal-Stylesheet-URL an Web Dynpro ABAP per URL-Parameter übergeben. Deshalb müssen Sie, wenn Sie die Portal-Integration verwenden, die URL des Portals in die White-List eintragen.

Für die Verwendung der UI-Elemente AcfExecute und AcfUpDownload ist aus Sicherheitsgründen ebenfalls eine White-List notwendig. Weitere Informationen finden Sie in der Dokumentation dieser beiden UI-Elemente und im Implementation Guide (IMG) im System.

Sicherheit bei der Portal-Integration

Aus Sicherheitsgründen empfehlen wir bei der Portal-Integration die Verwendung von SAP-Anmeldetickets bzw. X.509-Zertifikaten. Andere Anmeldeverfahren werden nicht vollständig unterstützt.

Externe Stylesheet-Informationen

Das Enterprise Portal kann Informationen über das zu verwendende Stylesheet über URL-Parameter an die Web Dynpro ABAP Anwendung geben. Es ist auch möglich, nicht nur komplette Stylesheets sondern auch Stylesheet-Namen über URL-Parameter an die Anwendung zu geben. Weitere Informationen hierzu finden Sie unter Sicherheitsrisiko-Liste.

Um die Verwendung externer Stylesheet-Informationen zu verhindern, so dass eine Steuerung von außen nicht möglich ist, können Sie den Web Dynpro ABAP Anwendungsparameter WDUSEEXTERNALSTYLESHEET auf den Wert OFF setzen.

Weitere Informationen hierzu finden Sie unter Applikationsparameter und URL-Parameter.

Hinweise

Relevante SAP-Hinweise

Hinweisnummer

Titel

1088717

Aktive Services für Web Dynpro ABAP in der SICF

510007

Einrichten von SSL auf dem Web Application Server

420085

Logon Ticket Cache

853878

HTTP WhiteList Check (Sicherheit)