Zeichenkodierung im Subject Distinguished Name von Zertifikatanforderungen und ausgestellten Zertifikaten

Üblicherweise ist die Kodierung von Zeichen und Zeichenketten in Zertifikaten kein Thema, welches die Nutzer einer PKI groß interessiert. Es gibt jedoch Fälle, in welchen die Standardeinstellungen der Zertifizierungsstelle nicht die gewünschten Ergebnisse liefern.

„Zeichenkodierung im Subject Distinguished Name von Zertifikatanforderungen und ausgestellten Zertifikaten“ weiterlesen

Liste der Use Cases der Zertifikate, für welche die Kompatibilität zu auf elliptischen Kurven (ECC) basierenden Schlüsseln bekannt ist

Mit zunehmend zur Verfügung stehender Rechenleistung steigt auch der Bedarf, stärkere kryptographischer Schlüssel einzusetzen. Oftmals besteht der Bedarf (beispielsweise, weil die Schlüssel per Trusted Platform Modul geschützt werden müssen), in diesem Zug auf elliptischen Kurven (ECC) basierende Schlüssel einzusetzen. Für deren Einsatz ist es essenziell, dass die Kompatibilität zu den vorgesehenen Use Cases sichergestellt ist.

Nachfolgend eine Liste von Use Cases, für welche mir die Kompatibilität bekannt ist.

„Liste der Use Cases der Zertifikate, für welche die Kompatibilität zu auf elliptischen Kurven (ECC) basierenden Schlüsseln bekannt ist“ weiterlesen

Den Registrierungsdienst für Netzwerkgeräte (NDES) für den Betrieb mit einem Domänenkonto konfigurieren

Der Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) ist, da sie das Web-basierte Simple Certificate Enrollment Protocol (SCEP) implementiert, als Webanwendung im Microsoft Internet Information Service (IIS) abgebildet. Hier läuft der Dienst in einem Anwendungspool namens "SCEP". In vielen Fällen ist es ausreichend, für diesen die integrierte Anwendungspool-Identität zu verwenden.

Es gibt jedoch Fälle, in denen man ein Domänenkonto verwenden möchte. Ein Beispiel hierfür ist der Certificate Connector für Microsoft Intune, welcher dies zwingend voraussetzt.

„Den Registrierungsdienst für Netzwerkgeräte (NDES) für den Betrieb mit einem Domänenkonto konfigurieren“ weiterlesen

Der Certificate Connector für Microsoft InTune wirft bei der Konfiguration die Fehlermeldung "ArgumentException: String cannot be of zero length"

Folgendes Szenario angenommen:

  • Es wurde ein NDES Server für die Verwendung mit Microsoft InTune eingerichtet.
  • Die Konfiguration des InTune Certificate Connector kann nicht abgeschlossen werden, da folgende Fehlermeldung geworfen wird:
Fehler bei der Microsoft Intune Certificate Connector Konfiguration. Es wurden keine Änderungen an Feature- oder Proxyeinstellungen vorgenommen.
Unerwarteter Fehler: System.ArgumentException: Die Zeichenfolge kann keine Länge von 0 (null) haben.
Parametername: name
  bei System.Security.Principal.NTAccount.ctor(String name)
„Der Certificate Connector für Microsoft InTune wirft bei der Konfiguration die Fehlermeldung "ArgumentException: String cannot be of zero length"“ weiterlesen

Anmeldefehler mit Windows Hello for Business: "Wenden Sie sich an den Systemadministrator, und teilen Sie ihm mit, dass das KDC-Zertifikat nicht überprüft werden konnte."

Folgendes Szenario angenommen:

  • Das Unternehmen setzt Windows Hello for Business ein.
  • Benutzer erhalten bei der Anmeldung am Client folgende Fehlermeldung:
Sign-in failed. Contact your system administrator and tell them that the KDC certificate could not be validated. Additional information may be available in the system event log.
„Anmeldefehler mit Windows Hello for Business: "Wenden Sie sich an den Systemadministrator, und teilen Sie ihm mit, dass das KDC-Zertifikat nicht überprüft werden konnte."“ weiterlesen

Die Partition des Hardware Security Moduls (HSM) läuft voll

Folgendes Szenario angenommen:

  • Eine Zertifizierungsstelle verwendet ein Hardware Security Modul (HSM).
  • Die Partition des Hardware Security Moduls füllt sich über die Lebenszeit der Zertifizierungsstelle mit immer mehr Schlüsseln.
  • Bei SafeNet Hardware Security Modulen kann dies sogar dazu führen, dass die Partition voll läuft. In Folge dessen werden die Ereignisse 86 und 88 der Zertifizierungsstelle protokolliert.
„Die Partition des Hardware Security Moduls (HSM) läuft voll“ weiterlesen

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-Richtliniendienst (CEP), 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

Auswahl der Identität für den IIS Anwendungspool des Registrierungsdienstes für Netzwerkgeräte (NDES)

Installiert man einen Registrierungsdienst für Netzwerkgeräte (NDES), steht man vor der Frage, unter welcher Identität der IIS-Anwendungspool betrieben werden soll. Nachfolgend werden die einzelnen Optionen näher beleuchtet, um eine Auswahl zu erleichtern.

„Auswahl der Identität für den IIS Anwendungspool des Registrierungsdienstes für Netzwerkgeräte (NDES)“ 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

Die Überprüfung der Domänencontroller-Zertifikate wirft den Fehlercode ERROR_ACCESS_DENIED

Folgendes Szenario angenommen:

  • Mit certutil wird eine Überprüfung der Domänencontroller-Zertifikate durchgeführt.
  • Der Vorgang schlägt mit folgender Fehlermeldung fehl:
0: DC01

*** Testing DC[0]: DC01
Enterprise Root store: Access is denied. 0x80070005 (WIN32: 5 ERROR_ACCESS_DENIED)
KDC certificates: Access is denied. 0x80070005 (WIN32: 5 ERROR_ACCESS_DENIED)

CertUtil: -DCInfo command FAILED: 0x80070005 (WIN32: 5 ERROR_ACCESS_DENIED)
CertUtil: Access is denied.
„Die Überprüfung der Domänencontroller-Zertifikate wirft den Fehlercode ERROR_ACCESS_DENIED“ weiterlesen

Grundlagen: Automatic Certificate Management Environment (ACME)

Das ACME Protokoll wurde von den Betreibern vom Projekt Let’s Encrypt entworfen, um die Ausstellung von Webserver-Zertifikaten zu automatisieren. Es ist spezifiziert in RFC 8555.

Zielstellung ist, den Vorgang des beweisens des Besitzes der DNS Ressource (IP-Adressen können aktuell nicht identifiziert werden, ist künftig aber geplant), jedoch nicht der Person oder Organisation die dahinter steht, zu automatisieren, um anschließend ohne menschliche Interaktion ein Webserver-Zertifikat beziehen zu können.

„Grundlagen: Automatic Certificate Management Environment (ACME)“ weiterlesen

Ein Policy Modul, um sie zu bändigen: Vorstellung des TameMyCerts Policy Moduls für die Microsoft Zertifizierungsstelle

Als Betreiber einer Zertifizierungsstelle ist man für die Identifikation der Antragsteller und die Bestätigung ihrer Identität verantwortlich. Dass diese Aufgabe gewissenhaft und fehlerfrei ausgeführt wird, ist der zentrale Grundpfeiler für das Vertrauen, dass der Zertifizierungsstelle eingeräumt wird. Namhafte Firmen sind bereits an dieser Aufgabe gescheitert, mussten in Folge von Falschausstellungen sogar Insolvenz anmelden und/oder wurden durch die großen Player am Markt empfindlich bestraft.

In vielen Fällen sind wir als (Microsoft-)PKI-Betreiber in Unternehmen in der Lage, unsere Aufgabe an das Active Directory zu delegieren (ungeachtet der damit einhergehenden Qualität). In vielen Fällen müssen wir unsere Zertifizierungsstelle(n) aber auch anweisen, einfach alles auszustellen, was beantragt wird.

Namhafte Beispiele hierfür sind unter Anderem:

  • Mobile Device Management (MDM) Systeme wie VMware AirWatch beantragen stellvertretend Zertifikate für die Benutzer der verwalteten Endgeräte.
  • Viele im Unternehmen eingesetzte Gerätetypen erfordern den Betrieb eines Simple Certificate Enrollment (SCEP) Servers. Schlecht abgesicherte SCEP-Schnittstellen können ein Einfallstor für Angriffe auf die Umgebung sein.
  • Weitergabe oder Diebstahl von Zugangsdaten zu Benutzer- oder Dienstkonten können zur Ausstellung potentiell böswilliger Zertifikate führen.
  • Und natürlich der Faktor Mensch. Auch PKI-Betreiber können bei der Konfiguration der Zertifizierungsstellen oder manuellen Prüfung von Zertifikatanforderungen Fehler machen und somit Fehlausstellungen von Zertifikaten verursachen. Das gleiche gilt natürlich auch für andere Administratoren, denen vielleicht die Beantragung von Zertifikaten eingeräumt wurde (im schlimmsten Fall sogar über die Zertifizierungsstellen-Webregistrierung).

Namenseinschränkungen des Zertifizierungsstellen-Zertifikats können diese Fälle teilweise, aber nicht ansatzweise vollumfänglich adressieren.

„Ein Policy Modul, um sie zu bändigen: Vorstellung des TameMyCerts Policy Moduls für die Microsoft Zertifizierungsstelle“ weiterlesen

Die Beantragung von Zertifikaten mit auf elliptischen Kurven basierenden Schlüsseln schlägt fehl, wenn der Microsoft Platform Crypto Provider verwendet wird

Folgendes Szenario angenommen:

Error: The requested operation is not supported. 0x80090029 (-2146893783 NTE_NOT_SUPPORTED)

Auf Windows Server 2016 wird die Fehlermeldung "No provider was specified for the store or object. 0x80092006 (-2146885626 CRYPT_E_NO_PROVIDER)" ausgegeben bei ansonsten identischem Verhalten.

„Die Beantragung von Zertifikaten mit auf elliptischen Kurven basierenden Schlüsseln schlägt fehl, wenn der Microsoft Platform Crypto Provider verwendet wird“ weiterlesen

Grundlagen: Elliptische Kurven in Hinsicht auf ihre Verwendung in der Public Key Infrastruktur

Mit Windows Vista und Windows Server 2008 wurde die Cryptography API: Next Generation (CNG) in die Windows Systeme eingeführt.

Unter diesem Begriff wird eine Sammlung moderner kryptographischen Funktionen verstanden. Unter Anderem ermöglicht die CNG die Verwendung von Zertifikaten, welche auf elliptischen Kurven (auch Elliptic Curve Cryptography, ECC genannt) basierende Schlüssel verwenden, mit der Microsoft Zertifizierungsstelle und dem Windows Betriebssystem.

„Grundlagen: Elliptische Kurven in Hinsicht auf ihre Verwendung in der Public Key Infrastruktur“ weiterlesen