# SecurID

Die SecurID ist ein Sicherheitssystem der Firma RSA Security zur Authentisierung, also zur Überprüfung der Identität von Benutzern („Authentication Manager“). Dazu wird ein Authentifikator benutzt, eine Hardware, „SecurID Token“ genannt.
Die Authentisierung ist eine Zwei-Faktor-Authentisierung, durch die eine hohe Sicherheit gewährleistet werden soll: Der Benutzer muss ein Passwort kennen („etwas, das man weiß“) und in Besitz seines Tokens bzw. eines Tokengenerators sein („etwas, das man hat“), um sich dem Rechner, Netzwerkdienst etc. gegenüber ausweisen zu können. Der Tokengenerator generiert jede Minute einen neuen Sicherheitstoken in Form einer sechsstelligen Zahl, die nach dem gleichen Algorithmus auf dem entsprechenden Host, dessen Zugang mit diesem Token gesichert ist, ebenfalls generiert wird.
Verschiedene Zugangslösungen wie VPN-Server, Firewalls oder OpenSSH bieten die Möglichkeit, SecurID zu nutzen.

## Hardware-Token

Der Key-Tokengenerator, erhältlich als Schlüsselanhänger mit den Maßen 5,5 cm × 2,7 cm max. oder im Kreditkarten-Format, zeigt eine alle 60 Sekunden wechselnde 6- bis 8-stellige Zahl (Token, bzw. One-Time-Password, OTP) an. Dieses OTP wird im Tokengenerator generiert und ist das Produkt eines AES-Algorithmus, der sich aus einem Zeitindex und einem geheimen Schlüssel (Länge: 128 bit) des jeweiligen Basisschlüssels berechnet. Der Schlüssel wird mit einem echten Zufallszahlengenerator erzeugt und bei der Fertigung des Tokengenerators in diesen eingebettet. Der 128-bit-Schlüssel ist nur dem Authentication Manager bekannt, niemandem sonst. Die 6- bis 8-stellige Zahl, der „SecurID-Code“, wird nach der normalen Anmeldung (Identifikation mit Name, Passwort, Schlüsselkarte etc.) an einem Terminal abgefragt und dann mit dem im Server für diesen speziellen Benutzer nach gleichen Kriterien erzeugten Code verglichen. Stimmen die Codes überein, wird der Zugang bzw. Zugriff gewährt. Neuere Varianten ermöglichen zusätzlich die sichere Speicherung von Zertifikaten über eine Smartcard-Funktionalität via USB.

### Zeitabgleich mit dem Server

Die Systemzeit der Server ist typischerweise NTP-gesteuert und weicht damit i. d. R. nur im Millisekundenbereich von der UTC ab. Da die Quarzuhren in den Hardware-Token im Laufe der Jahre einen bestimmten Fehler aufweisen, speichert der Server einmal am Tag die Zeitdifferenz pro Token bei einer erfolgreichen Authentifizierung ab. Daher wird ein Schlüssel wenige Minuten nach seinem Ablauf eventuell noch akzeptiert.

### Laufzeit

Die Tokengeneratoren haben je nach Bedarf eine unterschiedliche Laufzeit von ein bis fünf Jahren und müssen danach ausgetauscht werden. Das Gerät schaltet sich dann zu einem festgelegten Zeitpunkt ab, das Datum ist auf der Rückseite eingraviert.

### Aufbau

Die Batterie ist auf die gesamte Lebenszeit des Generators ausgelegt. Der Generator selbst kann nicht geöffnet werden, ohne dadurch auch physisch zerstört zu werden. In seinem Inneren befindet sich ein auf ca. 1 Megahertz getakteter Mikroprozessor mit einem ROM-Baustein und einem Uhrenbaustein.
Grundsätzlich beinhaltet das SecurID-System selbst keinerlei Verschlüsselung, da es größtenteils nur für Authentifizierungsvorgänge vorgesehen ist. Ausnahme ist das Modell SID800, das über einen integrierten Smart Chip mit USB-Anschluss verfügt, aber nicht etwa wie ein USB-Stick zum Speichern von Daten benutzt werden kann.

### Einsatzgebiete

Das SecurID-System bietet einen sehr hohen Schutz im Vergleich zu herkömmlichen, etwa rein kennwortbasierten, Authentifizierungssystemen, da der einzugebende Code sich alle 60 Sekunden ändert, bereits eingegebene Codes ungültig werden, kein Key-Token gleiche SecurID-Codes wie ein anderer produziert und sich die Codes nur selten wiederholen. Außerdem kann das System flexibel eingesetzt werden, sowohl von festen Zugangsterminals (zum Beispiel an Eingangstüren) wie auch von Computern aus (beispielsweise zur Anmeldung). Entsprechend setzen Organisationen das System dort ein, wo hohe Sicherheit gefragt ist.
Aufgrund der erhöhten Risiken im Bereich Online-Banking werden nun auch Multifunktionsgeräte angeboten, die mit einer Signaturfunktion ausgestattet sind, um geschäftliche Transaktionen effizient zu schützen.

### Preis

Der Preis für einen SecurID Anhänger liegt bei ca. 40 US-Dollar, der Preis für die Server-Software bei einigen tausend US-Dollar (je nach Lizenzgröße, Laufzeit der Token etc.).

## Software-Token

Darüber hinaus gibt es Token, die softwarebasiert sind. Diese funktionieren prinzipiell genauso wie Hardware-Token, da beide Varianten One-Time-Codes (Einmal-Passwörter) erzeugen.
Die Software kann auf allen gängigen Geräten und Betriebssystemen installiert werden. Einige davon sind:
* Windows (7/8/8.1/10)
* Android (ab Version 4)
* Apple
* Windows Phone
* Blackberry
Da der Token bei der Installation logischerweise keinen Seed (geheimer Schlüssel) enthält, muss die Software diesen bei dem entsprechenden Authentication Server anfragen. Um dies zu tun, erhält der Benutzer einen Aktivierungscode vom Administrator, mit dem die Software sich beim Server legitimiert und erhält dann anschließend in Echtzeit (auch zum Zwecke der Zeitsynchronisierung) über das Netzwerk (LAN oder WAN) verschlüsselt den benötigten Seed-Code. Dabei wird der Schlüssel selbst nicht über das Netzwerk übertragen, sondern errechnet. Andere Verteilungsverfahren über verschlüsselte Dateien sind ebenfalls möglich. Sofort nach Erhalt des Seed-Codes erzeugt die Software OTP-Codes, die der User zur Authentisierung, wie üblich bei den Hardware-Token, verwenden kann.
Die Software hört auf Token zu erzeugen, wenn die Lizenzzeit für diesen Token abgelaufen ist oder weil aufgrund des Verschlüsselungsverfahrens mathematisch kein weiterer Tokencode erzeugt werden kann. Siehe RSA-Kryptosystem.
Software-Token eignen sich für Benutzer, die keine spezielle Hardware (HW-Token) mitführen möchten. Dabei generiert das Programm die zur Anmeldung bei einer mit RSA SecurID geschützten IT-Infrastruktur notwendigen Einmalpasswörter. Da Software-Token schwierig physikalisch schützbar sind, sind diese potenziellen Angriffen ausgesetzt, wie Kopieren der gesamten Software oder Ausleseversuche des Schlüssels über das Betriebssystem. Hier wurden jedoch Sicherheitsmechanismen entwickelt, die solche Angriffe vereiteln, aber nicht gänzlich ausschließen können. Allerdings bieten sie den Vorteil, dass der Verkaufspreis für die Software günstiger ist als der für die Hardware.

## Kritik
### Anfälligkeit für Man-in-the-Middle-Angriffe

Einmalpasswort-Token sind generell anfällig für einen Man-in-the-middle-Angriff. Allerdings sind diese Angriffe aufwändig zu erstellen. Die Token sollen weiterhin immer so aufbewahrt und getragen werden, dass sie nicht von anderen, z. B. mit einem guten Fernglas gelesen werden können. Das Tragen der Token an einem Schlüsselband soll in den Sicherheitsrichtlinien verboten sein.

### Tokencode-Verfahren

Seit Februar 2003 ist das Verfahren zur Berechnung des Tokencodes standardisiert: Die Key-Token werden mit 128 bit Schlüssellänge und AES-Algorithmus ausgeliefert.
Hardwarekomplexität und Sicherheit des 128-bit-AES-Algorithmus sind gegenüber anderen Verfahren suboptimal. Im vorliegenden Anwendungsfall würden sich Stream-Cipher-Verfahren besser eignen und bei gleicher Sicherheit günstigere Token liefern können.
Die davor genutzte Technik, die noch mit SDI-Algorithmus und 64 bit Schlüssellänge arbeitete, wurde noch deutlicher kritisiert: Kritiker äußerten Bedenken, dass der Algorithmus zur Erzeugung der Token vom Hersteller RSA bisher nicht veröffentlicht wurde. Die genauen Spezifizierungen waren nur Regierungen und großen Unternehmen zugänglich, die zuvor eine Vertraulichkeitsvereinbarung (non-disclosure agreement) unterzeichnet hatten. Der Standard war also nicht frei zugänglich und konnte nicht unabhängig überprüft werden.

### Hackerangriff auf Server von RSA

Bei einem im März 2011 bekannt gewordenen Hackerangriff auf Server von RSA könnten Daten (Seeds und Seriennummern) gestohlen worden sein, mit denen sich beliebige OTP berechnen lassen. Aufgrund des Angriffs werden etwa 40 Millionen SecurID-Tokens weltweit ausgetauscht.

### Hackerangriff auf Lockheed Martin möglicherweise unter Verwendung entwendeter Seeds

Im Mai 2011 wurden Server des Rüstungsproduzenten Lockheed Martin gehackt. Verschiedene Quellen gehen von einem Zusammenhang mit dem angenommenen Diebstahl der Seeds bei RSA aus. Sollten die Berichte zutreffen, wäre Lockheed das erste bekannt gewordene Opfer der Kompromittierung der Sicherheit des SecurID-Systems. Der Lockheed Martin-Konzern ist unter anderem an der Produktion des Tarnkappen-Kampfflugzeugs Lockheed Martin F-35 beteiligt.