usd HeroLab Top 5 Schwachstellen 2020: Broken Access Control

25. Mai 2021

Unsere Security Analysten decken während ihrer Penetrationstests immer wieder Einfallstore in IT-Systemen und Anwendungen auf, die erhebliche Risiken für die Unternehmenssicherheit darstellen. Dabei begegnen ihnen vermehrt die gleichen Schwachstellen in unterschiedlichen IT-Assets, die teilweise schon seit Jahren bekannt sind. In unserer Mini-Serie stellen wir unsere Top 5 auffälligsten Schwachstellen aus 2020 vor. Teil 2: Broken Access Control

Hintergrund zur Schwachstelle

Als Broken Access Control bezeichnet man Schwachstellen, bei denen Endpunkte oder Funktionalitäten in einer Anwendung nicht ausreichend durch Authentifizierungs- oder Autorisierungsmechanismen geschützt sind. Angreifer können diese Endpunkte aufrufen, bzw. entsprechende Funktionalitäten verwenden, ohne dafür ausreichende Berechtigungen zu besitzen. Einer der häufigsten Gründe für das Auftreten der Schwachstelle besteht darin, dass lediglich eine clientseitige Validierung von Anfragen verwendet wird, während auf Serverseite keine weitere Prüfung erfolgt.

Beispielhafter Hackerangriff und seine Folgen

Bei unserem Beispiel handelt es sich um eine Anwendung, die Benutzeranfragen nur clientseitig validiert. Der folgende Screenshot zeigt eine entsprechende Fehlermeldung, wenn ein niedrig privilegierter Benutzer versucht, administrative Applikationsinhalte aufzurufen.

Abbildung 1 Der Zugriff auf die Administration in Form einer HTTP-GET-Anfrage wird durch die Anwendung unterbunden
Abbildung 2 HTTP-POST-Anfrage zum Setzen eines Passworts mit einem nicht privilegierten Nutzer wird dennoch erfolgreich

Obwohl ein niedrig privilegierter Benutzer den administrativen Bereich der Anwendung nicht angezeigt bekommt, kann er die oben gezeigte Anfrage absenden, um das Passwort eines beliebigen Benutzers zurückzusetzen. Informationen über den entsprechenden Endpunkt könnte ein Angreifer aus internen Quellen, dem JavaScript-Code der Anwendung oder durch einfaches Raten erhalten.

Maßnahmenempfehlung

Clientseitige Zugriffskontrolle sollte nie als einzige Schutzvorkehrung gegen unbefugten Zugriff verwendet werden. Wie oben demonstriert verhindert eine fehlende Darstellung innerhalb der Applikation nicht, dass ein Angreifer den Endpunkt dennoch verwendet. Nur eine Validierung auf Serverseite kann die unbefugte Nutzung eines Endpunktes verhindern. Dies gilt neben Webanwendungen insbesondere auch für Desktop-Anwendungen (Thick Clients).

Bitte beachten Sie, dass es sich hierbei um eine allgemeingültige Maßnahmenempfehlung handelt. Gern unterstützen wir Sie mit individuellen Lösungen. Sprechen Sie uns gern an.


In unserem Jahresbericht 2020 finden Sie mehr zu unseren Top 5 auffälligsten Schwachstellen und weitere spannende Themen.

Auch interessant:

Kategorien

Kategorien