Newsletter

SAP Security Patch Day 02/2023

„Februar 2023 Patch Day“

7 x 6,1 = Vergnügen beim Hinweis-Einbau! 

Der zweite Dienstag im Monat – SAP Security Patch Day: oft bringt er zusätzliche Arbeit mit sich. Manchmal läuft auch alles „wie am Schnürchen“ und bringt einen beim Blick in die Korrekturen auch zum Schmunzeln. Dieser Februar war so ein Monat: Seit dem letzten Stichtag wurden insgesamt 26 neue Hinweise veröffentlicht, von denen nach dem Vergleich mit den Komponenten und Support Package Ständen unseres HCM-Systems sieben einspielbar waren.  

Den thematischen Schwerpunkt bildeten dabei Schwachstellen aus browser-basierten Applikationen wie Cross Site Scripting (XSS) oder Cross Site Request Forgery (XSRF). Interessant auch, dass diese Hinweise alle mit dem gleichen CVSS-Score von 6,1 bewerten wurden. Aus Sicht der Hinweis-Implementierung sind diese Korrekturen „angenehm“, da die vorgenommenen Änderungen keine fachlichen Nachtests erforderlich machen. Hier aber auch der erste „Schmunzler“: 

Input Validation vs. Output Encoding 

In Hinweis 3293786 mit dem Titel „[CVE-2023-23858] Cross-Site-Scripting-Schwachstelle (XSS) in SAP NetWeaver AS“ heißt es:  

Aufgrund einer unzureichenden Eingabevalidierung ermöglicht es SAP NetWeaver AS für ABAP und die ABAP-Plattform einem nicht authentifizierten Angreifer, eine gezielte URL an einen Benutzer zu senden. 

Vor vielen Jahren habe ich im Training „Sichere ABAP Programmierung“ gelernt: die Gegenmaßnahme der Wahl gegen XSS-Schwachstellen ist nicht Input Validation, sondern ein entsprechendes Encoding bzw. Escaping einzubauen. Ist also der Inhalt der Korrektur falsch? Nein! Es wird die Funktion ESCAPE verwendet – nur der Hinweis-Text ist also nicht zu 100% korrekt. 

ABAP Command Injection 

Der zweite Hinweis, der hier erwähnt werden soll, ist 3287291: „[CVE-2023-23854] Fehlende Berechtigungsprüfung in SAP NetWeaver AS ABAP“. Hier geht es um zwei remote-fähige Bausteine, mit denen Programmänderungen am ABAP-Code realisiert werden können – also eine klassische „ABAP Command Injection“. 

Nach Sichtung des Quelltexts ist unklar, ob die bis dato existierende Absicherung z.B. über den Baustein RS_ACCESS_PERMISSION schon ausreichend wäre. Die im Hinweis gelieferte Korrektur deaktiviert die beiden Funktionsbausteine jedenfalls komplett – durch ein gut gesetztes EXIT direkt am Beginn des Quelltexts. Gut so! 

Wenn Sie mehr über die einzelnen Kategorien von Sicherheits-Schwachstellen in ABAP Code oder das Thema „Sichere ABAP Programmierung“ erfahren möchten, melden Sie Sich gerne bei uns!