Bewerten der Sicherheit virtueller Smartcards

In diesem Thema für IT-Experten werden Sicherheitsmerkmale und Überlegungen bei der Bereitstellung virtueller TPM-Smartcards beschrieben.

Details zur Nicht-Exportierbarkeit virtueller Smartcards

Ein wichtiger Aspekt virtueller TPM-Smartcards ist ihre Fähigkeit, geheime Daten sicher zu speichern und zu verwenden, insbesondere, dass die geschützten Daten nicht exportiert werden können. Auf Daten kann innerhalb des virtuellen Smartcardsystems zugegriffen und verwendet werden, aber sie sind außerhalb der vorgesehenen Umgebung bedeutungslos. In virtuellen TPM-Smartcards wird die Sicherheit durch eine sichere Schlüsselhierarchie gewährleistet, die mehrere Verschlüsselungsketten umfasst. Dieser basiert auf dem TPM-Speicherstammschlüssel, der innerhalb des TPM generiert und gespeichert wird und nie außerhalb des Chips verfügbar gemacht wird. Die TPM-Schlüsselhierarchie ist so konzipiert, dass die Verschlüsselung von Benutzerdaten mit dem Speicherstammschlüssel möglich ist, aber sie autorisiert die Entschlüsselung mit der Benutzer-PIN so, dass das Ändern der PIN keine erneute Verschlüsselung der Daten erfordert.

Das folgende Diagramm veranschaulicht die Hierarchie des sicheren Schlüssels und den Prozess des Zugriffs auf den Benutzerschlüssel.

Diagramm des Zugriffs auf den Benutzerschlüssel.

Die folgenden Schlüssel werden auf der Festplatte gespeichert:

  • Benutzerschlüssel

  • Smartcardschlüssel, der durch den Speicherstammschlüssel verschlüsselt wird

  • Autorisierungsschlüssel für die Entschlüsselung des Benutzerschlüssels, die durch den öffentlichen Teil des Smartcardschlüssels verschlüsselt wird

Wenn der Benutzer eine PIN eingibt, wird die Verwendung des entschlüsselten Smartcardschlüssels mit dieser PIN autorisiert. Wenn diese Autorisierung erfolgreich ist, wird der entschlüsselte Smartcardschlüssel verwendet, um den Authentifizierungsschlüssel zu entschlüsseln. Der Authentifizierungsschlüssel wird dann für das TPM bereitgestellt, um die Entschlüsselung und Verwendung des Auf der virtuellen Smartcard gespeicherten Schlüssels des Benutzers zu autorisieren.

Der Authentifizierungsschlüssel ist die einzige vertrauliche Daten, die außerhalb des TPM als Klartext verwendet werden, aber ihr Vorhandensein im Arbeitsspeicher wird durch Microsoft Data Protection API (DPAPI) geschützt, sodass sie vor der Speicherung auf irgendeine Weise verschlüsselt werden. Alle Daten außer dem Authentifizierungsschlüssel werden nur als Klartext innerhalb des TPM verarbeitet, das vollständig vom externen Zugriff isoliert ist.

Details zum Antihämmern virtueller Smartcards

Die Anti-Hammering-Funktionalität virtueller Smartcards basiert auf der Anti-Hammering-Funktionalität des TPM, das die virtuelle Smartcard ermöglicht. Die TPM-Version 1.2 und nachfolgende Spezifikationen (wie von der Trusted Computing Group entworfen) bieten jedoch sehr flexible Richtlinien für die Reaktion auf Hämmern. Die Spezifikation erfordert nur, dass das TPM Schutz vor Trial-and-Error-Angriffen auf die Benutzer-PIN, PUK und Denk-/Antwortmechanismus implementiert.

Die Trusted Computing Group gibt auch an, dass das TPM die Ausführung der autorisierten TPM-Befehle verhindern muss, wenn die Reaktion auf Angriffe die ordnungsgemäße Funktion des TPM für einen bestimmten Zeitraum oder bis zu einer administrativen Aktion angehalten wird. Das TPM kann die Ausführung von TPM-Befehlen bis zum Beenden der Angriffsantwort verhindern. Neben der Verwendung einer Zeitverzögerung oder einer administrativen Aktion kann ein TPM auch einen Neustart erzwingen, wenn ein Angriff erkannt wird. Die Trusted Computing Group ermöglicht Herstellern ein Hohes Maß an Kreativität bei der Wahl der Implementierung. Unabhängig davon, welche Methodik von TPM-Herstellern gewählt wird, wird die Antihämmerreaktion virtueller TPM-Smartcards bestimmt. Zu den typischen Aspekten des Schutzes vor Angriffen gehören:

  1. Lassen Sie nur eine begrenzte Anzahl falscher PIN-Versuche zu, bevor Sie eine Sperre aktivieren, die eine Zeitverzögerung erzwingt, bevor weitere Befehle vom TPM akzeptiert werden.

    Hinweis Eingeführt in Windows Server 2012 R2 und Windows 8.1: Wenn der Benutzer fünf aufeinanderfolgende Male die falsche PIN für eine virtuelle Smartcard eingibt (die in Verbindung mit dem TPM funktioniert), wird die Karte blockiert. Wenn die Karte blockiert ist, muss sie mithilfe des Verwaltungsschlüssels oder des PUK entsperrt werden.

  2. Erhöhen Sie die Zeitverzögerung exponentiell, wenn der Benutzer die falsche PIN eingibt, sodass eine übermäßige Anzahl falscher PIN-Versuche schnell zu langen Verzögerungen bei der Annahme von Befehlen führt.

  3. Verwenden Sie einen Mechanismus für Fehlerlecks, damit das TPM die zeitbestimmten Verzögerungen über einen bestimmten Zeitraum zurücksetzen kann. Dies ist nützlich in Fällen, in denen ein gültiger Benutzer gelegentlich die falsche PIN eingegeben hat, z. B. aufgrund der Komplexität der PIN.

Beispielsweise dauert es 14 Jahre, eine 8-stellige PIN für ein TPM zu erraten, das den folgenden Schutz implementiert:

  1. Anzahl der zulässigen falschen PINs vor der Sperrung (Schwellenwert): 9

  2. Zeitpunkt, zu dem das TPM gesperrt ist, nachdem der Schwellenwert erreicht wurde: 10 Sekunden

  3. Zeitverzögerung verdoppelt sich für jede falsche PIN, nachdem der Schwellenwert erreicht wurde

Weitere Informationen

Grundlagen und Evaluierung virtueller Smartcards