Munscheidstr. 14 in 45886 Gelsenkirchen

Jetzt anrufen 0209 - 8830 6760

OpenID Connect Pentest: Auch SSO-Systeme benötigen Pentests

B.Sc. Mario Klawuhn

Mit OpenID Connect wird es vergleichsweise einfach, die Identität von Nutzern zu prüfen, zu bestätigen und ihnen darauf aufbauend Zugriff auf weitere Dienste zu gewähren. Doch was einfach klingt, wird dann doch recht schnell zur Herausforderung und ohne vernünftigen Penetrationstests laufen Sie Gefahr, Sicherheitslücken zu übersehen und einen Hack Ihrer Systeme zu riskieren.

Mit Ihrem Unternehmen stehen Sie dann in der Verantwortung, müssen sich rechtfertigen und unter Umständen mit horrenden Strafen und vielleicht sogar Schadenersatzansprüchen kämpfen. Alles Dinge, die sich durch ein ordentliches Testing nahezu vollständig vermeiden lassen. Denn mit einem Pentest finden Sie Schwachstellen und Probleme schon lange, bevor diese aktiv ausgenutzt werden können.

Hier fokussieren wir uns dabei ganz auf OpenID Connect. Das ist eine Technik, die derzeit große Beliebtheit erfährt, gerade im Bereich der Single Sign-On Systeme (SSO). Warum das so ist und warum auch hier nur der Penetrationstest für anhaltende Sicherheit sorgt, haben wir für Sie kurz und knapp zusammengefasst.


Jetzt unser Whitepaper zur Active Directory Härtung kostenfrei herunterladen!

Das Active Directory ist die Achillesferse der IT-Infrastruktur.
Wir geben Ihnen 7 Hinweise, Empfehlungen sowie Tipps zur Härtung des Systems.


Was ist OpenID Connect (OIDC)?

OpenID Connect (kurz auch einfach OIDC genannt) ist eine Methode für die Identitätsverifikation. Das Authentifizierungsprotokoll basiert dabei auf OAuth 2.0 und ermöglicht Anmeldungen bei ganz unterschiedlichen Diensten, ohne die entsprechenden Informationen mit den Dienstleistern teilen zu müssen.

Weil das hervorragend funktioniert und das Protokoll allgemein leicht nutzbar ist, hat es sich für den Single Sign-On etabliert. OIDC kommt also oft bei einem SSO zum Einsatz. Die Nutzer melden sich dann nur noch via OpenID an und sind in allen verbundenen Services entsprechend eingeloggt und erfolgreich angemeldet.

All das geschieht, ohne die eigenen Anmeldeinformationen mit den unterschiedlichen Diensten im Voraus teilen zu müssen. Dies ist ein wesentlicher Bestandteil des Systems und dafür verantwortlich, warum es besonders einfach zu implementieren ist. Außerdem nutzt OpenID Connect zum Großteil offene Standards und ist damit auch besonders entwicklerfreundlich gestaltet.

Wie funktioniert OpenID Connect in der Praxis?

Eigentlich ganz einfach und unkompliziert. OpenID Connect nutzt JSON Web Tokens für die Identitätsverifizierung der Nutzer. Diese geben den Login beim OpenID Connect Provider (OP) ein, woraufhin dieser den Nutzer authentifiziert und ein ID-Token sendet. Dienstleister verwenden nun den ID-Token, um den Nutzer entsprechend zu prüfen und im jeweiligen Angebot erfolgreich anzumelden.

Das funktioniert einfach und schnell, weshalb OpenID Connect extrem gerne eingesetzt wird. Obendrein bringt OIDC eine vergleichsweise hohe Sicherheit mit, da Nutzer authentifiziert werden können, ohne persönliche Daten bereitstellen zu müssen. Als Dienstleister und in Hinblick auf die DSGVO gibt es also keine Logins oder Ähnliches, die jeweils sicher verwaltet und gespeichert werden müssen. Anmeldeinformationen bleiben jederzeit bei OpenID und liegen somit nicht bei den Dienstleistern selbst.

Entwickler implementieren den OpenID Support also entsprechend, damit Nutzer auf der anderen Seite ein möglichst nahtloses Login erleben dürfen. Durch die offenen Standards ist OpenID dabei besonders gut dokumentiert und kann entsprechend weitläufig und frei eingesetzt werden. Das ist viel wert, da es den gesamten Prozess einer Implementierung noch einmal enorm vereinfacht.

Gibt es Probleme in Verbindung mit OpenID?

Durchaus, denn OpenID Connect weist einen hohen Grad an Komplexität auf. Es ist für Entwickler durch die offenen Standards zwar leicht zu verwenden, erfordert aber doch einiges an Expertise, um es sorgfältig in die eigenen Dienste zu integrieren. Vor allem in Bezug auf die Sicherheit ist OpenID Connect immer auch eine Frage des Vertrauens.

Das ganze System könnte aufgrund eines kompromittierten OpenID Connect Providers ins Wanken geraten. OIDC ist durch die eben erwähnte Komplexität nicht einfach zu implementieren, was ebenfalls Schwachstellen und Sicherheitslücken begünstigen könnte. Gerade bei weniger erfahrenen Entwicklern ist das durchaus auch ein realistisches Risiko, welches vorab entsprechend bedacht und bewertet werden sollte.

Auf der anderen Seite sind robuste Signatur- und Verschlüsselungsmechanismen direkt in das jeweilige Protokoll integriert. Zudem gibt es eine Vielzahl an Websites, die OpenID bereits vollumfänglich unterstützen und das System somit besonders gängig erscheinen lassen. Eine Implementierung kann sich daher tatsächlich lohnen, je nach Geschäftsgebiet des jeweiligen Unternehmens.

Welche Bedeutung haben Pentests in Bezug auf OpenID Connect?

Mit einem Penetrationstest soll eine Prüfung auf Schwachstellen erfolgen, die gänzlich anders abläuft als die Suche nach Fehlern im Code einer Anwendung selbst. Pentests sind genau genommen gutartige Hacks, bei denen der Angreifer, in diesem Fall der beauftrage Pentester und Sicherheitsexperte, versucht erfolgreich in ein System einzudringen, es zu umgehen oder anderweitig zu knacken.

Geht es um einen Pentest in Bezug auf OpenID Connect, ist die Hauptaufgabe des Penetrationstests sicherlich die Überprüfung einer bestehenden OIDC-Implementierung. Der OpenID Connect Pentest nimmt eine wichtige Sicherheitsbewertung vor und gibt Aufschluss darüber, wie sorgfältig und sicher OpenID Connect in die eigenen Dienste integriert wurde.

Für den Pentest werden sämtliche OIDC-Komponenten gescannt und es wird in den Konfigurationen nach Schwachstellen gesucht. Entdeckt der Penetrationstester eine solche, beginnt er mit dem Versuch, selbige auszunutzen und deren Potenzial zu ermitteln. Währenddessen erstellt der Sicherheitsexperte eine genaue Dokumentation seines Vorgehens, damit die gefundenen Sicherheitslücken später mit allen Details und Informationen an die verantwortlichen Entwickler übermittelt werden können. Dafür ist zum Abschluss das sogenannte Reporting besonders wichtig, indem solche Sachen noch einmal dargelegt und besprochen werden.


Erkennen Sie zuverlässig Phishing E-Mails?

Jetzt das AWARE7 Phishing Quiz absolvieren
und das eigene Wissen überprüfen!


Ohne Penetrationstest ist Sicherheit nur eine Illusion

Wer in seinen Systemen, speziell in Bezug auf Single Sign-On, keinen Penetrationstest durchführt, braucht sich auch keinerlei Illusion von Sicherheit hinzugeben. Fakt ist, dass Sie speziell heutzutage, in Zeiten generativer KI und Automation, einen großen Fokus auf die Sicherheit Ihrer IT-Systeme legen sollten. Mit Ihrem Unternehmen sind Sie einfacher anzugreifen als jemals zuvor, soviel steht fest.

Gerade wenn es um eine Implementierung von OpenID Connect geht, spielt außerdem die große Komplexität eine bedeutende Rolle. Wer keine erfahrenen Entwickler im Team hat, muss sich im Klaren darüber sein, dass die Verwendung eines Single Sign-Ons nicht unbedingt trivial ist. OpenID Connect lässt es jedoch teilweise so erscheinen. Dieser Eindruck kann dann weitere Gefahren nach sich ziehen.

Lassen Sie sich dabei nicht täuschen und setzen Sie auf wiederholende Penetrationstests, die Ihnen die Sicherheit Ihrer Systeme bestätigen können. Auf diese Weise werden Schwachstellen immer wieder aufgedeckt und zeitnah geschlossen, lange bevor sie von Angreifern aktiv ausgenutzt werden können.

Am Ende ist Sicherheit als solche dennoch eine Illusion. Es ist ein andauernder Kampf zwischen Unternehmen und Angreifern. Gewonnen hat derjenige, der am Ball bleibt und die Lücken als erstes findet. Mit regelmäßigen Penetrationstests sind Sie das und können selbige dann schnellstmöglich schließen und einen Angriff vereiteln.


Hat Ihnen der Beitrag gefallen? Gerne benachrichtigen wir Sie, wenn wir einen neuen Beitrag veröffentlicht haben. Tragen Sie jetzt Ihre E-Mail-Adresse ein. Für Sie entstehen keine Kosten.


Foto des Autors

B.Sc. Mario Klawuhn

Mein Name ist Mario Klawuhn. Ich bin Abteilungsleiter für den Bereich Offensive Services, Offensive Security Certified Professional (OSCP) und Offensive Security Wireless Professional (OSWP). Seit 2020 bin ich in der IT-Sicherheitsbranche als Penetrationstester und Softwareentwickler tätig. Besonders spannend bei der Softwareentwicklung war es Schnittstellen im Kontext der Passwortlosen Authentifizierung zu entwickeln.