Um feststellen zu können, ob ein Zertifikat von einer als vertrauenswürdig eingestuften Zertifizierungsstelle ausgestellt wurde, muss eine Vertrauenskette (engl. Trust Chain) gebildet werden. Hierfür müssen alle Zertifikate in der Kette ermittelt und überprüft werden. Die Microsoft CryptoAPI bildet alle möglichen Zertifikatketten und liefert diejenigen mit der höchsten Qualität an die anfragende Anwendung zurück.

Zur besseren Verdeutlichung der Funktionsweise wird im nachfolgenden Beispiel der Prozess des Auffindens von Zertifikaten anhand einer dreistufigen PKI-Hierarchie erläutert.

- Für das zu überprüfende Endentitätszertifikat wird aus dem Stelleninformationszugriff-Feld (engl. Authority Information Access, AIA) der Downloadpfad für das CA-Zertifikat der ausstellenden Zertifizierungsstelle (der Issuing CA) ermittelt. Dieses wird anschließend heruntergeladen und lokal abgespeichert.
- Es wird nun ist eine Zuordnung des Endentitätszertifikats zum CA-Zertifikat der Issuing CA vorgenommen (siehe nachfolgender Absatz), welches nun als nächstes überprüft werden muss.
- Für das zu überprüfende Zertifikat der Issuing CA wird aus dessen AIA-Feld der Downloadpfad für das Zertifikat der ausstellenden Zertifizierungsstelle (der Policy CA) ermittelt. Dieses wird anschließend heruntergeladen und lokal abgespeichert.
- Es wird nun ist eine Zuordnung des CA-Zertifikats der Issuing CA zum CA-Zertifikat der Policy CA vorgenommen, welches nun als nächstes überprüft werden muss.
- Für das zu überprüfende CA-Zertifikat der Policy CA wird die ausstellende Zertifizierungsstelle (die Root CA) ermittelt. Dieses Zertifikat muss sich in der lokalen Liste vertrauenswürdiger Stammzertifizierungsstellen befinden, um als gültig erkannt zu werden. Auch wenn das AIA-Feld des Zertifikats der Issuing CA auf die Root CA verweist, und der Client somit theoretisch die Möglichkeit hätte, es herunterzuladen und abzuspeichern, würde ein Client das Zertifikat dennoch als nicht vertrauenswürdig betrachten, wenn das Stammzertifizierungsstellenzertifikat nicht bereits vorher durch einen Systemadministrator im lokalen Speicher hinterlegt wurde. Ohne dieses Verhalten wäre keine Kontrolle darüber möglich, welchen CA-Zertfikaten vertraut werden soll, und welche nicht.

Kennen Sie TameMyCerts? TameMyCerts ist ein Add-On für die Microsoft Zertifizierungsstelle (Active Directory Certificate Services). Es erweitert die Funktion der Zertifizierungsstelle und ermöglicht die Anwendung von Regelwerken, um die sichere Automatisierung von Zertifikat-Ausstellungen zu realisieren. TameMyCerts ist einzigartig im Microsoft-Ökosystem, hat sich bereits in unzähligen Unternehmen auf der ganzen Welt bewährt und steht unter einer freien Lizenz. Es kann über GitHub heruntergeladen und kostenlos verwendet werden. Professionelle Wartung wird ebenfalls angeboten.
Die Zuordnung eines Zertifikats zu dessen Zertifizierungsstelle erfolgt durch den Abgleich bestimmter Attribute innerhalb beider Zertifikate. Hierbei gibt es drei Möglichkeiten, je nachdem, welche Attribute in den Zertifikaten enthalten sind:
- Exact Match. Enthält das Endentitätszertifikat eine Authority Key Identifier (AKI) Zertifikaterweiterung, wird dieses mit dem Wert der Subject Key Identifier (SKI) Zertifikaterweiterung des Zertifikats der ausstellenden Zertifizierungsstelle verglichen. Darüber hinaus wird der Aussteller (engl. Issuer Distinguished Name) des Zertifikats mit dem Antragsteller (engl. Subject Distinguished Name) des Zertifikats der ausstellenden Zertifizierungsstelle verglichen.
- Key Match. Enthält das Endentitätszertifikat eine Authority Key Identifier (AKI) Zertifikaterweiterung, wird dieses mit dem Wert der Subject Key Identifier (SKI) Zertifikaterweiterung des Zertifikats der ausstellenden Zertifizierungsstelle verglichen.
- Name Match. Es wird der Aussteller (engl. Issuer Distinguished Name) des Zertifikats mit dem Antragsteller (engl. Subject Distinguished Name) des Zertifikats der ausstellenden Zertifizierungsstelle verglichen. Der Vergleich von Subject DN und Issuer DN erfolgt nicht als Zeichenketten-Vergleich, sondern als binärer Vergleich.

5 Gedanken zu „Grundlagen: Auffinden von Zertifikaten und Validierung des Zertifizierungspfades“
Kommentare sind geschlossen.