Grundlagen: Authentisierungsverfahren für die Internet Information Services (IIS)

Die Active Directory Certificate Services bieten eine Reihe von webbassierten Zusatz-Schnittstellen (Registrierungsdienst für Netzwerkgeräte (NDES), Zertifikatregistrierungs-Webdienst (CES), Zertifizierungsstellen-Webregistrierung (CAWE).

Die Microsoft Internet Information Services (IIS) sind also für eine Microsoft-PKI nahezu unentbehrlich. Jede der webbasierten Schnittstellen (und auch Eigenentwicklungen) bringen ihre ganz eigenen Herausforderungen in Hinsicht auf Authentisierungsverfahren und deren Implementierung.

Nachfolgender Beitrag soll ein wenig Klarheit in das Thema bringen.

„Grundlagen: Authentisierungsverfahren für die Internet Information Services (IIS)“ weiterlesen

Änderungen an der Zertifikatausstellung und an der zertifikatbasierten Anmeldung am Active Directory mit dem Patch für Windows Server vom 10. Mai 2022 (KB5014754)

Mit dem Patch vom 10. Mai 2022 versucht Microsoft, eine Sicherheitslücke im Active Directory zu schließen, in welcher die zertifikatbasierte Anmeldung (im Allgemeinen bekannt als Smartcard Logon) zu schließen.

Das Update ändert sowohl das Verhalten der Zertifizierungsstelle als auch das Verhalten des Active Directory beim Verarbeiten von zertifikatbasierten Anmeldungen.

„Änderungen an der Zertifikatausstellung und an der zertifikatbasierten Anmeldung am Active Directory mit dem Patch für Windows Server vom 10. Mai 2022 (KB5014754)“ weiterlesen

Zur Option "Build this from Active Directory information" bei Zertifikatvorlagen

Bei der Konfiguration einer Zertifikatvorlage muss man über den beabsichtigten Zertifikatinhalt entscheiden, d.h. unter Anderen, welche Identitäten durch die Zertifikate bestätigt werden, und wie diese abgebildet werden.

In der Karteikarte "Subject Name" des Konfigurationsdialogs für Zertifikatvorlagen kann konfiguriert werden, wie die durch das Zertifikat bestätigte Identität abgebildet wird.

„Zur Option "Build this from Active Directory information" bei Zertifikatvorlagen“ weiterlesen

Was passiert, wenn ein Benutzer mehrere Zertifikate beantragt hat?

Ich bin neulich auf das Phänomen getroffen, dass aufgrund einer fehlerhaften Beantragungslogik mehrere Benutzer in regelmäßigen Anständen neue Zertifikatanforderungen gestellt hatten.

Die Zertifikatvorlage war konfiguriert, eingehende Zertifikatanforderungen durch einen Zertifikatmanager freigeben zu lassen, d.h. es erfolgte keine automatische Ausstellung der Zertifkate. Die Zertifikatanforderungen sollten durch einen eigenen Code überprüft und anschließend freigegeben werden.

Man würde nun erwarten, dass (da alle Zertifikatanträge letztendlich genehmigt würden) die Benutzer nun mehrere Zertifikate gleichen Typs in ihrem Zertifikatspeicher (und den Anwendungen, welche diesen nutzen) vorfinden würden. Dem war aber nicht der Fall.

„Was passiert, wenn ein Benutzer mehrere Zertifikate beantragt hat?“ weiterlesen

Die Erzeugung einer Zertifikatvorlage ist nicht möglich. Fehlermeldung "The following template name has already been used"

Folgendes Szenario angenommen:

  • Es soll eine neue Zertifikatvorlage angelegt werden.
  • Die Erstellung schlägt mit folgender Fehlermeldung fehl:
The following template name has already been used: ADCSLaborBenutzerTest. Enter a unique template name.
„Die Erzeugung einer Zertifikatvorlage ist nicht möglich. Fehlermeldung "The following template name has already been used"“ 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

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

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

Grundlagen: Ersetzen (Superseding) von Zertifikatvorlagen

Mit der Einführung der Zertifikatvorlagen der Version 2 zusammen mit Windows XP und Windows Server 2003 wurde die Option eingeführt, dass eine Zertifikatvorlage eine oder mehrere andere ersetzen kann.

Hiermit ist es möglich, ausgestellte Zertifikate durch solche einer anderen Zertifikatvorlage zu ersetzen, oder mehrere Zertifikatvorlagen zu einer einzigen hin zu konsolidieren.

„Grundlagen: Ersetzen (Superseding) von Zertifikatvorlagen“ weiterlesen

Der lokale Zertifikatspeicher für vertrauenswürdige Stammzertifizierungsstellen wird nicht aus dem Active Directory synchronisiert

Folgendes Szenarion angenommen:

  • Es ist eine Zertifizierungsstellen-Hierarchie im Netzwerk etabliert und die Stammzertifizierungsstelle ist in der Configuration-Partition der Active Directory Gesamtstruktur abgebildet.
  • Die Domänenmitglieder sind konfiguriert, den Autoenrollment-Prozess auszuführen und somit vertrauenswürdige Stammzertifizierungsstellen aus der Configuration-Partition zu aktualisieren.
  • Bei einigen Clients funktioniert dieser Prozess allerdings nicht. Die Stammzertifizierungsstellen-Zertifikate werden nicht automatisch heruntergeladen und in den lokalen Vertrauensspeicher eingetragen.
  • Als Folgeerscheinung können Zertifikatbeantragungen fehlschlagen, da beispielsweise der Zertifizierungsstellen-Hierarchie nicht vertraut wird.
„Der lokale Zertifikatspeicher für vertrauenswürdige Stammzertifizierungsstellen wird nicht aus dem Active Directory synchronisiert“ 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

Die Beantragung eines Zertifikats schlägt fehl mit Fehlermeldung "The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)."

Folgendes Szenario angenommen:

  • Es wird versucht, ein Zertifikat von einer ins Active Directory integrierten Zertifizierungsstelle (Enterprise CA) für einen Benutzer oder Computer zu beantragen.
  • Die Beantragung des Zertifikats schlägt mit folgender Fehlermeldung fehl:
The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE).
„Die Beantragung eines Zertifikats schlägt fehl mit Fehlermeldung "The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)."“ weiterlesen

Konfigurieren einer Zertifikatvorlage für die Verwendung des Microsoft Platform Crypto Provider, um Schutz des privaten Schlüssels durch ein Trusted Platform Module (TPM) zu ermöglichen

Seit Windows 8 ist es möglich, dass private Schlüssel für Zertifikate mit einem – sofern vorhanden – Trusted Platform Modul (TPM) geschützt werden. Dadurch ist eine echte Nichtexportierbarkeit des Schlüssels gegeben.

Nachfolgend wird der Prozess zur Einrichtung einer Zertifikatvorlage, die ein Trusted Platform Modul verwendet, beschrieben.

„Konfigurieren einer Zertifikatvorlage für die Verwendung des Microsoft Platform Crypto Provider, um Schutz des privaten Schlüssels durch ein Trusted Platform Module (TPM) zu ermöglichen“ weiterlesen

Signieren von Zertifikaten unter Umgehung der Zertifizierungsstelle

Immer wieder kommt in Diskussionen zur Sicherheit einer Zertifizierungsstelle auf, dass ein Missbrauch der Zertifizierungsstelle durch deren Sicherheitseinstellungen eingedämmt werden könnte.

Dass die Integrität einer Zertifizierungsstelle jedoch unmittelbar an ihr Schlüsselmaterial gebunden ist und sie somit durch dieses auch kompromittiert werden kann, ist auf den Ersten Blick nicht offensichtlich.

Muss man sich die Zertifizierungsstellen-Software als eine Art Management um das Schlüsselmaterial herum vorstellen. Die Software bietet beispielsweise eine Online-Schnittstelle für die Zertifikatbeantragung an, kümmert sich um die Authentifizierung der Antragsteller, um die automatisierte Durchführung von Signaturoperationen (Ausstellen von Zertifikaten und Sperrlisten) und deren Protokollierung (Zertifizierungsstellen-Datenbank, Auditprotokoll, Ereignisprotokoll).

Signaturoperationen benötigen jedoch nichts weiter als den privaten Schlüssel der Zertifizierungsstelle. Nachfolgend wird anhand eines Beispiels aufgezeigt, wie ein Angreifer, wenn er Zugang zum privaten Schlüssel der Zertifizierungsstelle erhält, Zertifikate erzeugen und ausstellen kann, ohne dass die Zertifizierungsstellen-Software und deren Sicherheitsmechanismen dies mitbekommen würden.

Mit einem solchen Zertifikat wäre es im schlechtesten Fall sogar möglich, die Active Directory Gesamtstruktur unerkannt zu übernehmen.

„Signieren von Zertifikaten unter Umgehung der Zertifizierungsstelle“ weiterlesen

Bei der Installation einer Active Directory integrierten Zertifizierungsstelle erscheint die Fehlermeldung "Insufficient access rights to perform the operation. 0x80072098 (Win32: 8344 ERROR_DS_INSUFF_ACCESS_RIGHTS)"

Folgendes Szenario angenommen:

  • Es wird eine ins Active Directory integrierte Zertifizierungsstelle (Enterprise Certification Authority) per Windows PowerShell installiert.
  • Für die Installation der Zertifizierungsstelle werden delegierte Berechtigungen verwendet. Der installierende Benutzer ist also nicht Mitglied der Gruppe "Enterprise Administrators".
  • Nach Ausführen des Rollenkonfigurations-Assistenten wird eine oder mehrere der folgenden Fehlermeldungen auf der Kommandozeile ausgegeben:
Setup could not add the Certification Authority's computer account to the Pre-Windows 2000 Compatible Access security group. Certificate managers Restrictions feature will not work correctly on this Certification Authority. To fix this, an administrator must manually add the Certification's Authority's computer account to the Pre-Windows 2000 Compatible Access security group in Active Directory. Insufficient access rights to perform the operation. 0x80072098 (Win32: 8344 ERROR_DS_INSUFF_ACCESS_RIGHTS)
Warning: Setup could not add the certification authority’s computer account to the cert Publishers Security Group. This Certification Authority will not be able to publish certificates in Active Directory. To fix this, an administrator must manually add the Certification Authority’s computer account to the Cert Publishers security group in Active Directory.  Insufficient access rights to perform the operation. 0x80072098 (Win32: 8344 ERROR_DS_INSUFF_ACCESS_RIGHTS)
„Bei der Installation einer Active Directory integrierten Zertifizierungsstelle erscheint die Fehlermeldung "Insufficient access rights to perform the operation. 0x80072098 (Win32: 8344 ERROR_DS_INSUFF_ACCESS_RIGHTS)"“ weiterlesen