Login
Newsletter
Werbung

Mi, 16. März 2005, 00:00

VIEW GENE RARE FOIL - Einmalpasswörter mit OPIE

Passwörter sind Dinge, die meist besonderer Sorgfalt im Umgang bedürfen. Einmalpasswörter können dabei helfen, sie zu schützen.

Vorwort

Passwörter sind Dinge, die meist besonderer Sorgfalt im Umgang bedürfen. In Zeiten von SSL und anderweitig verschlüsselter Datenübertragung ist das Risiko, dass Angreifer Passwörter über den Datentransfer erschnüffeln, gesunken und mit der Authentifizierung über öffentliche Schlüssel muss das Passwort die Leitung überhaupt nicht mehr passieren. Doch was ist zu tun, falls keine verschlüsselte Verbindung möglich ist, oder man einen fremden Computer benutzt? Die Programme - wie beispielsweise die Secure Shell oder su - könnten dort manipuliert sein, um eingegebene Passwörter zu protokollieren. Mögliche Manipulationen sind nebenbei bemerkt auch der Grund, weshalb Computer bei GnuPG-Signiertreffen unerwünscht sind. Einer Lösung des eigentlichen Problems kommen aber die Einmalpasswörter (OTP - One time passwords) recht nahe.

Grundkonzept

PilOTP auf dem Palm

René van Bevern

PilOTP auf dem Palm

Anhand des Beispiels eines Anmeldevorgangs sollte der Server, zu dem sich der Anwender verbindet, für jedes neue Anmelden ein einmaliges Passwort erstellen. Dies tut er aus einem Schlüssel und einem Zufallswert, die einem Benutzer zugeordnet sind, und einer fortlaufenden Passwortnummer. Anhand dieser Werte kann der Benutzer an einem anderen Computer sein Einmalpasswort generieren lassen. Berechnungsprogramme für diese Passwörter existieren beispielsweise für den Palm oder auf Basis von Java, womit sie auch auf aktuellen Handys funktionieren. Sollten passende Umstände nicht gegeben sein, besteht immerhin die Möglichkeit, eine Liste mit Passwörtern auszudrucken und sie an einem sicheren Ort aufzubewahren. Bei der Passwortabfrage bekommt der Anwender die fortlaufende Nummer und den Zufallswert präsentiert, die ihn kombiniert mit dem - im Kopf gespeicherten - Passwort zur Lösung führen.

Dieses Verfahren ist spezifiziert in RFC2289.

OPIE - One time Passwords In Everything

Unter Linux und anderen Unixderivaten bietet OPIE - nicht zu verwechseln mit einem gleichnamigen Projekt, dem Open Palmtop Integrated Environment - die Unterstützung für OTPs. Es bietet die Werkzeuge zur Erzeugung von OTP-Konten, einen OTP-Berechner und ein Authentifizierungsmodul für PAM, womit die Einmalpasswörter in vielen Applikationen für die Passworteingabe zur Verfügung stehen.

OPIE liegt den meisten Linuxdistributionen und anderen Betriebssystemen wie FreeBSD bei. Unter Debian GNU/Linux bringt ein apt-get install opie-client opie-server libpam-opie die Unterstützung der Einmalpasswörter ins System und ist dank PAM beispielsweise beim Login, für SSH und su verfügbar.

Erstellung eines OPIE-Kontos

Zunächst muss OPIE für die Benutzer, die sich später über Einmalpasswörter anmelden sollen, Paare aus dem Hash seines Passworts (unterstützt sind MD4, MD5 und SHA-1) und einem Zufallswert (dem Seed) generieren. Dies geschieht, wenn der entsprechende Benutzer angemeldet ist, folgendermaßen:

rvb@negoyl:~$ opiepasswd -c
Adding rvb:
Using MD5 to compute responses.
Enter new secret pass phrase: DasMerkIchMir
Again new secret pass phrase: DasMerkIchMir
ID rvb OTP key is 499 ne2213
NAT VIEW GENE RARE FOIL YANG

Nach der Eingabe eines Passworts zeigt opiepasswd den Seed "ne22132" an und zudem das Einmalpasswort mit der fortlaufenden Nummer 499, welches in diesem Fall NAT VIEW GENE RARE FOIL YANG lautet. Der Seed und die Passwortnummer werden später bei der Ermittlung des Passworts benötigt und ergeben mit allen RFC-konformen Programmen denselben Wert.

Ermittlung eines Einmalpassworts

otpCalc

René van Bevern

otpCalc

Hier bietet sich Gelegenheit, das oben gelieferte Ergebnis zu überprüfen: Ein Einmalpasswort muss generiert werden! Dies geschieht unter Einbezug eines zweiten, vertrauenswürdigen Systems mit dem Kommando opiekey, welches die fortlaufende Nummer des Passworts und den ermittelten Zufallswert erwartet. Anhand der Werte von oben ist dies also:

rvb@negoyl:~$ opiekey 499 ne2213
Enter secret pass phrase: DasMerkIchMir
NAT VIEW GENE RARE FOIL YANG

Beim späteren Anmelden unter Verwendung von OPIE wird die Anmeldezeile ebenfalls die Informationen anzeigen, die zur Erstellung des Passworts notwendig sind (Zufallszahl und Passwortnummer). Da die Generierung des Passwortes auf einem vertrauenswürdigen System geschieht, hat die möglicherweise manipulierte Installation keinen Kontakt mit dem Generalpasswort.

Eine Liste von Einmalpasswörtern

Besteht die Möglichkeit nicht, die benötigten Einmalpasswörter auf Bedarf zu ermitteln, besteht immerhin die Möglichkeit, eine Liste der Passwörter auf Papier oder anderen Datenträgern (vielleicht im Kopf?) bei sich zu tragen.

rvb@negoyl:~$ opiekey -n 5 499 ne2213
Enter secret pass phrase: DasMerkIchMir
495: CHOW GO MATE SITS AGEE CAL
496: GRAB FLAM PIT BLUM GAGE GELD
497: LAM EDDY WAKE BLED SILL GAG
498: SOAK CUFF KEEL HEAT QUOD BONY
499: NAT VIEW GENE RARE FOIL YANG

Der Parameter -n bestimmt in diesem Falle die Anzahl der auszugebenden Passwörter.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung