Das Datenbankschema der Zertifizierungsstellen-Datenbank

Möchte man Abfragen gegen die Zertifizierungsstellen-Datenbank formulieren, muss man zuerst wissen, wonach man suchen möchte.

Es gibt die Möglichkeit, das Datenbankschema der Zertifizierungsstellen-Datenbank ausgeben zu lassen.

„Das Datenbankschema der Zertifizierungsstellen-Datenbank“ weiterlesen

Grenzen der Microsoft Active Directory Certificate Services

Die Active Directory Certificate Services bestehen (wenn auch unter anderem Namen) in ihren Grundzügen seit Windows NT 4.0. Die heutzutage verwendete auf Active Directory besierende Architektur wurde mit Windows 2000 Server eingeführt. Die AD CS sind sehr gut in das Windows-Ökosystem integriert und erfreuen sich weiterhin weltweit großer Beliebtheit in Unternehmen und Behörden jeglicher Größenordnung.

Gerne wird auf die vielen Möglichkeiten hingewiesen, welche die Active Directory Certificate Services bieten. Selten wird allerdings darauf verwiesen, was mit ihnen nicht möglich ist. Das Produkt stößt nämlich mittlerweile an vielen Stellen auch an seine Grenzen.

Welche das sind, soll nachfolgend näher ausgeführt werden, um besser entscheiden zu können, ob die AD CS für geplante Vorhaben die richtige Lösung sein können.

„Grenzen der Microsoft Active Directory Certificate Services“ weiterlesen

Bei der Wiederherstellung einer Zertifizierungsstelle ist das Zertifizierungsstellen-Zertifikat bei der Rollen-Installation nicht auswählbar

Folgendes Szenario angenommen:

„Bei der Wiederherstellung einer Zertifizierungsstelle ist das Zertifizierungsstellen-Zertifikat bei der Rollen-Installation nicht auswählbar“ weiterlesen

Die Installation eines Zertifizierungsstellen-Zertifikats schlägt fehl mit Fehlermeldung "Object was not found. 0x80090011 (-2146893807 NTE_NOT_FOUND)"

Folgendes Szenario angenommen:

  • Es wird eine neue Zertifizierungsstelle installiert.
  • Nach der Konfiguration der Zertifizierungsstellen-Rolle und Ausstellung des Zertifizierungsstellen-Zertifikats soll dieses nun auf der Zertifizierungsstelle installiert werden.
  • Es wird ein Hardware Security Modul (HSM) zum Schutz des privaten Schlüssels des Zertifizierungsstellen-Zertifikats verwendet.
  • Die Installation des Zertifizierungsstellen-Zertifikats schlägt mit folgender Fehlermeldung fehl:
An error was detected while configuring Active Directory Certificate Services.
The Active Directory Certificate Services Setup Wizard will need to be rerun to complete the configuration.
The new certificate public key does not match the current outstanding request.
The wrong request may have been used to generate the new certificate:  Object was not found. 0x80090011 (-2146893807 NTE_NOT_FOUND)
„Die Installation eines Zertifizierungsstellen-Zertifikats schlägt fehl mit Fehlermeldung "Object was not found. 0x80090011 (-2146893807 NTE_NOT_FOUND)"“ weiterlesen

Die Wiederherstellung der Verbindung zum privaten Schlüssel schlägt fehl mit Fehlermeldung "Cannot find object or property. 0x80092004 (-2146885628 CRYPT_E_NOT_FOUND)"

Folgendes Szenario angenommen:

Cannot find the certificate and private key for decryption.
CertUtil: -repairstore command FAILED: 0x80092004 (-2146885628 CRYPT_E_NOT_FOUND)
CertUtil: Cannot find object or property.
„Die Wiederherstellung der Verbindung zum privaten Schlüssel schlägt fehl mit Fehlermeldung "Cannot find object or property. 0x80092004 (-2146885628 CRYPT_E_NOT_FOUND)"“ weiterlesen

Die Installation der Standard-Zertifikatvorlagen schlägt fehl mit Fehlermeldung "This security ID may not be assigned as the owner of this object."

Folgendes Szenario angenommen:

  • Es soll erstmalig eine ins Active Directory integrierte Zertifizierungsstelle (Enterprise Certification Authority) im Netzwerk installiert werden.
  • Die Rechte für die Installation der Zertifizierungsstelle wurden aus Sicherheitsgründen auf eine separate Sicherheitsgruppe oder ein separates Konto delegiert, sodass keine Anmeldung als Enterprise Administrator erforderlich ist. Andersherum formuliert: Der verwendete Benutzer ist nicht Mitglied der Gruppe "Enterprise Administrators" in der Active Directory Gesamtstruktur.
  • Da es sich um die erste Zertifizierungsstelle im Netzwerk handelt, sind noch keine Standard-Zertifikatvorlagen im Active Directory installiert. Beim Öffnen der Verwaltungskonsole für Zertifikatvorlagen (certtmpl.msc) wird man aufgefordert, diese zu installieren.
  • Die Installation schlägt mit folgender Fehlermeldung fehl:
Windows could not install the new certificate templates. This security ID may not be assigned as the owner of this object.
„Die Installation der Standard-Zertifikatvorlagen schlägt fehl mit Fehlermeldung "This security ID may not be assigned as the owner of this object."“ weiterlesen

Zertifikate mit verkürzter Gültigkeitsdauer ausstellen

Manchmal ist es erforderlich, Zertifikate mit einer kürzeren Gültigkeitsdauer auszustellen, als sie in der Zertifikatvorlage konfiguriert ist. Vielleicht möchte man deshalb nicht gleich die Zertifikatvorlage umkonfigurieren oder eine weitere Zertifikatvorlage erstellen.

„Zertifikate mit verkürzter Gültigkeitsdauer ausstellen“ weiterlesen

Stammstellen-Zertifikate werden auf Domänenmitgliedern in den Zertifikatspeicher für Zwischenzertifizierungsstellen importiert

Manch einem wird aufgefallen sein, dass der Zertifikatspeicher für Zwischenzertifizierungsstellen üblicherweise auch Zertifikate für Stammzertifizierungsstellen beinhaltet.

In der Regel ist dieses Verhalten unkritisch. In bestimmten Fällen kann dies allerdings auch Probleme mit Anwendungen hervorrufen.

„Stammstellen-Zertifikate werden auf Domänenmitgliedern in den Zertifikatspeicher für Zwischenzertifizierungsstellen importiert“ weiterlesen

Eine Zuordnung von einem Benutzerzertifikat zum dazugehörigen Computer herstellen

Folgendes Szenario angenommen:

  • Ein Computer eines Benutzers wird entwendet oder ist mit einer Malware befallen.
  • Die Integrität von auf dem Computer befindlichen Zertifikaten kann nicht mehr gewährleistet werden.
  • Die Zertifikate der/des Benutzers, welche auf diesem Computer beantragt wurden, müssen widerrufen werden.
  • Man möchte allerdings vermeiden, alle Zertifikate eines Benutzers zu widerrufen.
  • Es muss somit eine Verbindung zwischen den Zertifikaten des Benutzers und des Computers hergestellt werden, auf welchem diese beantragt wurden.

Wurden die Zertifikate per Autoenrollment beantragt, können wir uns zunutze machen, dass ein entsprechendes Attribut Teil der ursprünglichen Zertifikatanforderung war, und dass die Zertifikatanforderung zusammen mit dem Zertifikat in der Zertifizierungsstellen-Datenbank gespeichert wird.

„Eine Zuordnung von einem Benutzerzertifikat zum dazugehörigen Computer herstellen“ weiterlesen

Wiederherstellen von Zertifikaten aus den Daten des SMTP Exit Moduls

Stellt man eine Zertifizierungsstelle nach einem Katastrophenfall aus einer Sicherung (Backup) wieder her, wird man vermutlich feststellen, dass Zertifikate in dem Zeitraum zwischen der letzten Sicherung und dem Ausfall des Systems mit entsprechendem Datenverlust ausgestellt worden.

Diese Zertifikate sind nun nicht in der wiederhergestellten Zertifizierungsstellen-Datenbank gespeichert, somit können sie im Bedarfsfall auch nicht wiederhergestellt werden.

Hat man das SMTP Exit Modul im Einsatz, kann man aus den versendeten E-Mails wenigstens die Seriennummern der Zertifikate ermitteln und diese widerrufen.

„Wiederherstellen von Zertifikaten aus den Daten des SMTP Exit Moduls“ weiterlesen

Der Zertifizierungsstellen-Dienst startet nicht und wirft die Fehlermeldung "Provider DLL failed to initialize correctly. 0x8009001d (-2146893795 NTE_PROVIDER_DLL_FAIL)."

Folgendes Szenario angenommen:

  • Es ist eine Zertifizierungsstelle im Netzwerk implementiert.
  • Der Zertifizierungsstellen-Dienst startet nicht.
  • Beim Versuch, den Zertifizierungsstellen-Dienst zu starten, erhält man folgende Fehlermeldung:
Provider DLL failed to initialize correctly. 0x8009001d (-2146893795 NTE_PROVIDER_DLL_FAIL).
„Der Zertifizierungsstellen-Dienst startet nicht und wirft die Fehlermeldung "Provider DLL failed to initialize correctly. 0x8009001d (-2146893795 NTE_PROVIDER_DLL_FAIL)."“ weiterlesen

Die "Application Policies" Zertifikaterweiterung

Für welche Zwecke ein digitales Zertifikat verwendet werden darf, wird über die Zertifikaterweiterungen "Key Usage" und "Enhanced Key Usage" gesteuert.

In der "Enhanced Key Usage" Zertifikaterweiterung werden die erweiterten Schlüsselverwendungen eingetragen, für welche das Zertifikat verwendet werden darf.

Es gibt jedoch bei von einer Microsoft Zertifizierungsstelle ausgestellten Zertifikaten noch eine weitere Zertifikaterweiterung namens "Anwendungsrichtlinien" (engl. "Application Policies"), die ebenfalls eine der Extended Key Usages Erweiterung sehr ähnliche Liste enthält.

„Die "Application Policies" Zertifikaterweiterung“ weiterlesen

Es werden regelmäßig neue Zertifikate über Autoenrollment beantragt

Folgendes Szenario angenommen:

  • Es ist eine Zertifikatvorlage für die automatische Beantragung und Ausstellung (AutoEnrollment) konfiguriert.
  • Benutzer oder Computer beantragen in regelmäßigen Abständen und lange vor dem definierten Erneuerungszeitraum neue Zertifikate.
„Es werden regelmäßig neue Zertifikate über Autoenrollment beantragt“ weiterlesen

Der Schlüsselalgorithmus von Zertifikatanforderungen wird vom Policy Modul der Zertifizierungsstelle nicht überprüft

Folgendes Szenario angenommen:

  • Es ist eine Zertifikatvorlage für die Verwendung von auf elliptischen Kurven basierenden Schlüsseln konfiguriert (z.B. ECDSA_P256).
  • Als Folge dessen ist eine Mindest-Schlüssellänge von 256 Bit konfiguriert.
  • Es werden dennoch auch Zertifikatanforderungen, die andere ECC-Kurven oder RSA-basierte Schlüssel verwenden, signiert.
„Der Schlüsselalgorithmus von Zertifikatanforderungen wird vom Policy Modul der Zertifizierungsstelle nicht überprüft“ weiterlesen

Von Null auf Enterprise Administrator durch den Registrierungsdienst für Netzwerkgeräte (NDES) – und was dagegen getan werden kann

Nachfolgend möchte ich eine der breiten Öffentlichkeit vielleicht nicht unbedingt bekannte hochgefährliche PKI-Konfiguration vorstellen, die so in Unternehmensnetzwerken wahrscheinlich recht häufig angetroffen werden kann.

Ich zeige auf, wie durch Ausnutzung verschiedener unglücklicher Umstände in der Windows-PKI eine Erhöhung von Rechten, ausgehend von bloßem Netzwerkzugang bis hin zur vollständigen Übernahme des Active Directory möglich ist.

Der initiale Angriffspunkt ist in diesem Beispiel der Registrierungsdienst für Netzwerkgeräte (NDES).

„Von Null auf Enterprise Administrator durch den Registrierungsdienst für Netzwerkgeräte (NDES) – und was dagegen getan werden kann“ weiterlesen
de_DEDeutsch