Gefahren im SAP-Transportmanagement: Teil 1
Lesen Sie unseren Blogbeitrag „Einführung in die Gefahren bei SAP-Transporten“, um mehr über diese Blogreihe und SAP-Transporte zu erfahren.
Die Meinungen zum SAP®-Berechtigungskonzept gehen weit auseinander. Die Detailgenauigkeit des Modells bringt eine gewisse Komplexität mit sich, und der daraus resultierende Wartungsaufwand ist nicht zu leugnen. Dennoch lässt sich die wichtigste Anforderung – der lückenlose Schutz aller Lese- und Schreibzugriffe innerhalb eines Programms – recht gut umsetzen, zumindest theoretisch. In der Praxis gibt es jedoch mehrere Methoden, mit denen sich Berechtigungsprüfungen umgehen lassen.
Tatsächlich ist eine fehlende oder fehlerhafte Berechtigungsprüfung einer der häufigsten Fehler in benutzerdefinierten ABAP-Programmen. Im Folgenden gehen wir davon aus, dass der Entwickler bei der Entwicklung der Anwendung den erforderlichen Sicherheitsfokus auf die Berechtigungen gelegt hat.
Interessanterweise ermöglicht SAP die Deaktivierung von Berechtigungsprüfungen für einzelne Berechtigungsobjekte – entweder global oder für bestimmte Transaktionen. Eine bemerkenswerte Ausnahme bilden dabei Berechtigungsobjekte, die zu SAP Basis oder SAP HR gehören; diese können nicht deaktiviert werden. Dies mindert zwar die Schwere des Problems etwas, doch das Gesamtrisiko bleibt weiterhin kritisch.
Für eine globale Deaktivierung muss der Wert des Profilparameters „auth/object_disabling_active“ auf „Y“ gesetzt sein. Da dies der Standardwert ist, ist diese Voraussetzung in vielen SAP-Umgebungen bereits erfüllt. Über die Transaktion AUTH_SWITCH_OBJECTS können dann beliebige Berechtigungsobjekte deaktiviert werden, wodurch Programme Berechtigungsanfragen für diese Objekte nicht mehr berücksichtigen. Natürlich ist diese Transaktion durch Berechtigungen geschützt, was bedeutet, dass nur Berechtigungsadministratoren Zugriff darauf haben sollten.
Die Transaktion AUTH_SWITCH_OBJECTS ermöglicht zudem den Transport aller Einstellungen. Da auf Entwicklungssystemen weitreichende Berechtigungen vergeben werden, erweitert sich der Kreis der Benutzer, die Berechtigungsobjekte deaktivieren können. Die Standardfunktion für den Transport von Einstellungen bietet bereits einen gewissen Schutz, indem sie diese zunächst in eine Art Schattentabelle (Tabelle TOBJ SAV) transportiert und erst nach Bestätigung durch einen Administrator im Zielsystem aktiviert.
Durch die manuelle Pflege der Transportobjektliste können diese Einstellungen jedoch „aktiv“ transportiert werden. Dies lässt sich erreichen, indem man einfach die Tabelle TOBJ_OFF mit den gewünschten Schlüsseln in einen Transportauftrag aufnimmt. Die gewünschten Einstellungen werden zuvor über eine Transaktion oder – falls die erforderliche Berechtigung fehlt – über einen schnell erstellten Mini-Report vorgenommen. Auf diese Weise ist ein (interner oder externer) Angreifer in der Lage, Berechtigungsprüfungen nach Belieben zu deaktivieren.
Ob ein solches Angriffsszenario vorliegt, lässt sich natürlich durch eine manuelle Überprüfung der Transporte feststellen. Achten Sie dabei auf Folgendes:
- R3TR TABU TOBJ_SAV mit dem Schlüssel „*“
- Möglicher Angriffsversuch
- Hoher Testaufwand, da alle Einstellungen übertragen werden müssen
- R3TR TABU TOBJ_SAV mit dedizierten Schlüsseln
- Möglicher Angriffsversuch
- Die Objektliste des Transportauftrags wurde manuell gepflegt
- R3TR TABU TOBJ_OFF
- Ein gewisser Angriffsversuch!
- Die Objektliste wurde manuell gepflegt. Die Bestätigung der Änderung durch einen Berechtigungsadministrator im Zielsystem wurde bewusst umgangen.
Hinweis: Um einen Angriff noch besser zu verschleiern, können die aufgeführten Objekte in einem übergeordneten Objekt versteckt werden. Dazu gehören:
- View Cluster (R3TR CDAT <random object name>)
- Maintenance View (R3TR VDAT <random object name>)
- Customizing Data (R3TR TDAT <random object name>)
In solchen Fällen ist ein solcher Eintrag als eindeutiger Angriffsversuch zu betrachten! Nur die Überprüfung aller Transportanfragen, wie oben beschrieben, bietet Schutz vor einem solchen Angriffsversuch.
Dieser Test sowie über 100 weitere werden in der Platform automatisch Platform interne und externe Transportobjekte durchgeführt. Weitere Informationen zur Funktionsweise der Technologie und dazu, wie sie mithilfe der Platform in Ihre Geschäftsprozesse integriert werden kann, finden Sie im Anwendungshinweis zur SAP-Transportprüfung (PDF).
Dieser Blogbeitrag zum Thema Berechtigungsprüfungen ist der erste Teil einer Reihe, die sich mit den möglichen Problemen und Sicherheitsrisiken des SAP-Transportmanagements befasst. Der nächste Blogbeitrag dieser Reihe wird sich mit der transaktionsspezifischen Deaktivierung von Berechtigungsobjekten befassen.
