28. Oktober 2022

YubiHSM meets privacyIDEA

Mehr-Faktor-Authentifizierung bedeutet auch Vertrauen. privacyIDEA bietet verschiedene Möglichkeiten, die sensiblen Tokendaten verschlüsselt, sicher abzulegen und somit einen starken Vertrauensanker zu schaffen.

Mehr-Faktor-Authentifizierung soll das Login der Benutzer sicherer machen. Hierzu erhält der Benutzer zusätzlich zu seinem Wissen einen Besitzfaktor. Der Benutzer präsentiert den Besitzfaktor bei der Anmeldung an einer Applikation und die Applikation wendet sich zu Überprüfung des Besitzes an einen Authenifizierungsserver. Die Überprüfung bzw. die Repräsentation des Besitzfaktors basiert in der Regel auf kryptografischen Verfahren, die auf dem Authentifizierungsserver durchgeführt werden. Die Applikation, an der sich der Benutzer anmeldet, muss der Antwort auf die Überprüfung durch den Authentifizierungsserver vertrauen.

privacyIDEA

Das Mehr-Faktor-System privacyIDEA ist Open Source und wird von den IT-Abteilungen der Firmen oder Organisationen selber betrieben – on Premises. D.h. hier gibt es einen starken Vertrauensanker. Das Unternehmen oder die Organisation betreibt den Authentifizierungsserver selber, die IT-Abteilung kann die Funktionalität verifizieren und nachvollziehen und hat das Authentifizierungssystem unter eigener Kontrolle.

Flexibilität, Tokentypen und Verschlüsselung

privacyIDEA ist ein sehr flexibles System. Es kann beliebige Workflows abbilden und automatisieren. Ebenso kann der Benutzer oder der Helpdesk dem Benutzer viele verschieden Typen von zweiten Faktoren zuweisen. Eine kleine mögliche Auswahl sind: Codes per Email, Smartphone Apps, Yubikeys als OTP-Token (Einmalpasswort-Token) oder gar WebAuthn-Token. Wie Eingangs erwähnt, wird der zweite Besitzfaktor i.d.R. über kryptographische Verfahren abgebildet. Bei WebAuthn-Token kommt elliptische Kryptografie mit asymmetrischen Schlüsselpaaren zum Einsatz. Im Falle von klassischen OTP-Token wie sie in Smartphone-Apps wie dem Google Authenticator implementiert sind oder als preiswerte Schlüsselanhänger verfügbar sind oder auch der Yubikey im sehr kompatiblen OTP-Mode, sind dies aber symmetrische kryptografische Verfahren. Hier wird auf Basis eines symmetrischen geheimen Schlüssels (auch landläufig "Seed" genannt) das Einmalpasswort berechnet. Dieses Seed ist im Smartphone und im privacyIDEA-Server hinterlegt. Hier wird schnell ersichtlich, dass es wichtig ist, solche symmetrischen Schlüssel zu schützen, um die Sicherheit zu gewährleisten und das Vertrauen aufrecht zu erhalten. Im privacyIDEA Server werden daher sensible Daten (wie die Seeds) von jeher in der Datenbank verschlüsselt abgelegt, um sie vor dem Zugriff von Unbefugten – und sei es nur der Datenbankadministrator – zu schützen. Dies trägt auch zum Vertrauen der Benutzer in das System bei: Der einzelne IT-Mitarbeiter kann eben doch nicht alles mit dem Account oder dem zweiten Faktor des Benutzers machen!

Modularität ist Flexibilität

privacyIDEA verfolgt wie an vielen Stellen auch bei der Verschlüsselung der Seeds und sensiblen Daten einen modularen Ansatz. Im Standard-Setup nutzt privacyIDEA einen Verschlüsselungskey, der im Dateisystem abgelegt ist. Bei Systemstart wird dieser ins RAM gelesen und im Betrieb damit die verschlüsselten Seeds und sensiblen Daten, die aus der Datenbank gelesen werden, zur Nutzung entschlüsselt. Dies ist ein schneller und preiswerter Ansatz und schützt den Inhalt der Datenbank im Falle, wenn von der Datenbank bspw. ein Backup abgelegt wird. Denn der Verschlüsselungskey im Dateisystem liegt an einem physikalisch anderen Ort. Grundlegende Angriffszenarien können damit bereits mitigiert werden. Daneben bietet privacyIDEA mit einem zweiten Modul (aeshsm) die Alternative, den Verschlüsselungskey in einem Hardware-Security-Modul (HSM) zu halten. Dies sind i.d.R. netzwerkbasierte HSMs von Herstellern wie Thales oder Securosys. Die Seeds und sensiblen Daten werden aus der Datenbank gelesen zum HSM geschickt und dort entschlüsselt, so dass privacyIDEA nun die Seeds bspw. zur Verifizierung eines Einmalpasswortes nutzen kann. Dieser Vorgang passiert jedesmal, wenn privacyIDEA auf dass Seed eines Tokens zugreifen muss. Der Verschlüsselungskey in Hardware, getrennt von dem privacyIDEA Server, macht dieses Verfahren zu einer sehr sicheren Lösung. Ein Angreifer, der in Besitz der Datenbank und des privacyIDEA Servers käme, wäre nicht in der Lage, das Schlüsselmaterial zu nutzen. Auch wenn vom Sicherheitsniveau dies die erstrebenswerte Lösung ist, ist sie doch mit zwei Nachteilen verbunden. Die netzwerkbasierten HSMs sind sehr teuer und das Verfahren ist bedeutend langsamer. Da diese Entschlüsselung aber bei jeder Zwei-Faktor-Anmeldung durchgeführt werden muss, können Kosten und Performance der entscheidende Aspekt sein.

Der Mittelweg

Doch ab Version 3.7 bietet privacyIDEA mit einem neuen Modul (encryptkey) nun eine dritte Möglichkeit, wie Unternehmen und Organisationen die sensiblen Seeds verschlüsseln können. Hierbei wird ein physikalisches Hardware-Sicherheits-Modul genutzt, um den Verschlüsselungskey beim Systemstart einmalig zu entschlüsseln und im RAM zu halten. Anders als in der ursprünglichen Nutzung kommt das HSM also nicht bei allen Requests zum Einsatz sondern nur einmal beim Start. Zwar wären für einen Angreifer hier Angriffe auf das RAM möglich, um an den Verschlüsselungskey zu gelangen. Die einfacheren und häufigeren Angriffe durch Backup der Datenbank, Abziehen des Dateisystems oder der virtuellen Maschine sind hiermit aber auch bereits abgesichert. Ein großer Vorteil hierbei ist jedoch, dass diese Methode die gleiche Geschwindigkeit aufweist, wie das Standard-Setup, wenn der Verschlüsselungskey im Dateisystem liegt. Da das HSM nur zu Beginn zum Einsatz kommt, können hier außerdem leistungsschwächere/einfachere und viel preiswertere HSMs gewählt werden. So lässt sich bspw. dieses Setup sehr leicht mit einem oder mehreren handelsüblichen YubiHSM betreiben, so dass Unternehmen bei den Kosten für die HSMs bereits mit einem Bruchteil auskommen.

Die Wahlfreiheit

Für uns als Hersteller der Open Source Software "privacyIDEA" ist wichtig, dass Organisationen und Unternehmen die Kontrolle und Wahlfreiheit haben. Wir sind glücklich, auch an dieser Stelle die Möglichkeit geschaffen zu haben, dass jeder die für seine Zwecke passende Lösung mit privacyIDEA umsetzen kann. Wenn Sie mehr über privacyIDEA und Hardware-Sicherheits-Module erfahren wollen, sprechen Sie uns an!
Aktuellste Beiträge
26. März 2024
privacyIDEA in Pasadena
Im März besuchten drei Kollegen die Southern California Linux Expo in Pasadena um dort privacyIDEA und die NetKnights vorzustellen. Cornelius Kölbel, Gründer von NetKnights, hielt zudem einen Vortrag über „A decade of Open Source“.
19. März 2024
Token-Import, verbesserte Suchfunktion und Widgets
Die NetKnights GmbH veröffentlicht die Version 4.3.0 der privacyIDEA Authenticator App. Es wurden neue Features hinzugefügt, wie bspw. der Import von Token und eine verbesserte Suchfunktion.

Suche

Drücken Sie "Enter" zum Starten der Suche