Zum Hauptinhalt springen

7.4. Verifizierer

7.4. Verifizierer

Der Verifizierer vertraut (oder genauer gesagt, die Sicherheitsrichtlinie des Verifizierers ist so geschrieben, dass sie den Verifizierer so konfiguriert, dass er vertraut) einem Hersteller oder der Hardware des Herstellers, um die Vertrauenswürdigkeit der Geräte dieses Herstellers bewerten zu können. Ein solches Vertrauen wird durch das Speichern eines oder mehrerer Vertrauensanker im Vertrauensankerspeicher des Verifizierers ausgedrückt.

In einer typischen Lösung kommt ein Verifizierer dazu, einem Attester indirekt zu vertrauen, indem ein Endorser (wie ein Hersteller) für die Fähigkeit des Attesters bürgt, sicher Beweise durch Endorsements zu generieren (siehe Abschnitt 8.2). Endorsements können die Wege beschreiben, auf denen der Attester Angriffen widersteht, Geheimnisse schützt und Zielumgebungen misst. Folglich wird das Schlüsselmaterial des Endorsers im Vertrauensankerspeicher des Verifizierers gespeichert, damit Endorsements authentifiziert und im Bewertungsprozess des Verifizierers verwendet werden können.

In einigen Lösungen kann ein Verifizierer so konfiguriert werden, dass er einem Attester direkt vertraut, indem der Verifizierer das Schlüsselmaterial des Attesters (anstelle des Endorsers) in seinem Vertrauensankerspeicher besitzt.

Ein solches direktes Vertrauen muss zuerst zum Zeitpunkt der Konfiguration des Vertrauensankerspeichers etabliert werden, entweder durch Überprüfung mit einem Endorser zu diesem Zeitpunkt oder durch Durchführung einer Sicherheitsanalyse des spezifischen Geräts. Wenn der Attester direkt im Vertrauensankerspeicher ist, wird das Vertrauen des Verifizierers nur auf bestimmte Geräte beschränkt und nicht auf alle Geräte, für die der Endorser bürgen könnte, wie z.B. alle Geräte, die vom selben Hersteller hergestellt wurden, falls der Endorser ein Hersteller ist.

Eine solche Einengung ist oft wichtig, da physischer Besitz eines Geräts auch verwendet werden kann, um eine Reihe von Angriffen durchzuführen, und so kann ein Gerät in einer physisch sicheren Umgebung (wie den eigenen Räumlichkeiten) als vertrauenswürdig angesehen werden, während Geräte im Besitz anderer nicht vertrauenswürdig wären. Dies führt oft zu dem Wunsch, entweder den Eigentümer seinen eigenen Endorser betreiben zu lassen, der nur Geräte endorsieren würde, die man besitzt, oder Attester direkt im Vertrauensankerspeicher zu verwenden. Wenn viele Attester im Besitz sind, ermöglicht die Verwendung eines Endorsers eine bessere Skalierbarkeit.

Das heißt, ein Verifizierer kann die Vertrauenswürdigkeit einer Anwendungskomponente, Betriebssystemkomponente oder eines Dienstes unter der Annahme bewerten, dass die von der Firmware oder Software niedrigerer Ebene bereitgestellten Informationen darüber wahr sind. Ein stärkeres Maß an Sicherheitsgarantie ergibt sich, wenn Informationen durch Hardware oder durch ROM-Code verbürgt werden können, insbesondere wenn solche Hardware physisch gegen Hardware-Manipulation resistent ist. In den meisten Fällen werden Komponenten, die über Endorsements verbürgt werden müssen (weil keine Beweise über sie generiert werden), als "Vertrauenswurzeln" bezeichnet.

Da der Hersteller dafür gesorgt hat, dass eine Attestierungsumgebung mit Schlüsselmaterial bereitgestellt wird, mit dem Beweise signiert werden, wird dem Verifizierer dann eine Möglichkeit bereitgestellt, die Signatur auf den Beweisen zu überprüfen. Dies kann in Form eines geeigneten Vertrauensankers erfolgen, oder dem Verifizierer kann eine Datenbank mit öffentlichen Schlüsseln (anstelle von Zertifikaten) oder sogar sorgfältig kuratierte und gesicherte Listen symmetrischer Schlüssel bereitgestellt werden.

Die Art und Weise, wie der Verifizierer die vom Attester erzeugten Signaturen validiert, ist entscheidend für den sicheren Betrieb eines Remote-Attestierungssystems, ist jedoch nicht Gegenstand der Standardisierung innerhalb dieser Architektur.

Ein Übertragungsprotokoll, das Authentifizierung und Integritätsschutz bereitstellt, kann verwendet werden, um Beweise zu übertragen, die ansonsten ungeschützt sind (z.B. nicht signiert). Die angemessene Übertragung ungeschützter Beweise (z.B. [RATS-UCCS]) basiert auf den folgenden Schutzfähigkeiten des Übertragungsprotokolls:

  1. Das Schlüsselmaterial, das zur Authentifizierung und zum Integritätsschutz des Übertragungskanals verwendet wird, wird vom Verifizierer als vertrauenswürdig für die Attestierungsumgebungen angesehen, die Ansprüche über die Zielumgebungen gesammelt haben.

  2. Alle übertragenen ungeschützten Beweise werden ausschließlich von der Attestierungsumgebung bereitgestellt, die das Schlüsselmaterial besitzt, das den Übertragungskanal schützt.

  3. Eine vertrauenswürdige Umgebung schützt das Schlüsselmaterial des Übertragungskanals, was von anderen Attestierungsumgebungen mit gleichwertiger Schutzstärke abhängen kann.

Wie in [RATS-UCCS] veranschaulicht, übernimmt eine Entität, die ungeschützte Beweise über einen vertrauenswürdigen Übertragungskanal erhält, immer die Verantwortung für die Authentizität und Aktualität der Beweise. Wenn geschützte Beweise generiert werden, übernehmen die Attestierungsumgebungen des Attesters diese Verantwortung. In Fällen, in denen ungeschützte Beweise von einem Verifizierer verarbeitet werden, müssen vertrauende Parteien darauf vertrauen, dass der Verifizierer in der Lage ist, Beweise auf eine Weise zu handhaben, die die Authentizität und Aktualität der Beweise bewahrt. Das Generieren und Übertragen ungeschützter Beweise birgt immer erhebliche Risiken, und die Vorteile dieses Ansatzes müssen sorgfältig gegen potenzielle Nachteile abgewogen werden.

Siehe Abschnitt 12 für Diskussionen über Sicherheitsstärke.