DNS-Namen automatisch in den Subject Alternate Name (SAN) ausgestellter Zertifikate eintragen – mit dem TameMyCerts Policy Modul für Microsoft Active Directory Certificate Services (ADCS)

Google ist mit dem Chromium Projekt und darauf basierenden Produkten wie Google Chrome und Microsoft Edge dazu übergegangen, das im Jahr 2000 verabschiedete RFC 2818 zu erzwingen und Zertifikaten nicht mehr zu vertrauen, welche das RFC nicht mehr erfüllen.

Für uns ist folgender Satz von großer Brisanz:

If a subjectAltName extension of type dNSName is present, that MUST be used as the identity. Otherwise, the (most specific) Common Name field in the Subject field of the certificate MUST be used. Although the use of the Common Name is existing practice, it is deprecated and Certification Authorities are encouraged to use the dNSName instead

https://tools.ietf.org/html/rfc2818
„DNS-Namen automatisch in den Subject Alternate Name (SAN) ausgestellter Zertifikate eintragen – mit dem TameMyCerts Policy Modul für Microsoft Active Directory Certificate Services (ADCS)“ weiterlesen

Den Subject Alternative Name (SAN) eines Zertifikats vor dessen Ausstellung verändern – aber sicher!

In Netz kursieren leider viel zu viele Anleitungen (auch die großen Player sind hiervon nicht ausgenommen, nicht einmal Microsoft selbst oder der Großmeister Komar), welche fatalerweise empfehlen, dass das Flag EDITF_ATTRIBUTESUBJECTALTNAME2 auf der Zertifizierungsstelle gesetzt werden sollte – angeblich damit man in der Lage wäre, für manuell gestellte Zertifikatanforderungen Zertifikate mit Subject Alternative Name (SAN) Erweiterung ausstellen zu können.

Leider ist diese Vorgehensweise nicht nur unnötig, sie hat auch einige unangenehme Nebenwirkungen, welche einem Angreifer im schlechtesten Fall dazu verhelfen können, die gesamte Active Directory Gesamtstruktur zu übernehmen.

„Den Subject Alternative Name (SAN) eines Zertifikats vor dessen Ausstellung verändern – aber sicher!“ weiterlesen

Grundlagen: Deltasperrlisten

Um ausgestellte Zertifikate vor Ende ihrer Gültigkeitsdauer aus dem Verkehr ziehen zu können, werden Zertifikatsperrlisten (engl. "Certificate Revocation List", CRL) eingesetzt.

Hierbei handelt es sich um eine signierte Liste der Seriennummern von Zertifikaten, die von der Zertifizierungsstelle widerrufen wurden. Die Sperrliste hat ein (in der Regel wenige Tage kurzes) Ablaufdatum und wird von der zugehörigen Zertifizierungsstelle in regelmäßigen Abständen neu ausgestellt und signiert.

Zertifikatsperrlisten können bei einem hohen Volumen widerrufener Zertifikate eine beträchtliche Größe erreichen (als Faustregel kann man mit ca. 5 Megabyte pro 100.000 Einträgen rechnen). Der regelmäßige Download großer Zertifikatsperrlisten durch die Teilnehmer kann eine große Netzwerklast erzeugen. Um dieses Problem zu adressieren gibt es das Konzept der Deltasperrlisten.

„Grundlagen: Deltasperrlisten“ weiterlesen

Rückbau einer Active Directory integrierten Zertifizierungsstelle (Enterprise CA)

Anleitungen für den Aufbau und die Inbetriebnahme von IT-Diensten gibt es sehr viele. Meistens wird jedoch die dazugehörige Anleitung für die Außerbetriebnahme vergessen.

Nachfolgend wird beschrieben wie eine ins Active Directory integrierte Zertifizierungsstelle (Enterprise Certification Authority) korrekt außer Betrieb genommen wird.

„Rückbau einer Active Directory integrierten Zertifizierungsstelle (Enterprise CA)“ weiterlesen

Nachträgliche Archivierung privater Schlüssel

Für die Veschlüsselung von E-Mail Nachrichten verwenden Unternehmen üblicherweise den Secure / Multipurpose Internet Message Extensions (S/MIME) Standard und stellen ihren Benutzern hierfür entsprechende Zertifikate zur Verfügung.

Ein wichtiger Aspekt hierbei ist, dass die privaten Schlüssel der Benutzer – im Gegensatz zu den ansonsten meist verwendeten Signaturzertifikaten – zentral gesichert werden sollten. Eingehende Nachrichten sind für einen bestimmten privaten Schlüssel verschlüsselt und können nur von diesem auch wieder entschlüsselt werden. Somit muss unbedingt eine Sicherung dieser Schlüssel vorliegen – auch für die Synchronisierung auf mobile Endgeräte ist dies unabdingbar. Hierfür bieten die Microsoft Active Directory Certificate Services die Funktion der Archivierung privater Schlüssel (engl. Private Key Archival).

Was aber, wenn die Archivierung der privaten Schlüssel nicht eingerichtet wurde, und Benutzer bereits entsprechende Zertifikate beantragt haben?

„Nachträgliche Archivierung privater Schlüssel“ weiterlesen

Signieren von Zertifikaten unter Umgehung der Zertifizierungsstelle – allein mit Bordmitteln

Im Artikel "Signieren von Zertifikaten unter Umgehung der Zertifizierungsstelle" habe ich beschrieben, wie sich ein Angreifer, der im Besitz administrativer Rechte auf der Zertifizierungsstelle ist, unter Umgehung der Zertifizierungsstellen-Software, also unter direkter Verwendung des privaten Schlüssels der Zertifizierungsstelle, ein Anmeldezertifikat für administrative Konten der Domäne erzeugen kann.

Im vorigen Artikel habe ich das PSCertificateEnrollment Powershell Modul verwendet, um das Vorgehen zu demonstrieren. Microsoft liefert mit certreq und certutil allerdings bereits ab Werk perfekt geeignete Pentesting-Werkzeuge direkt mit dem Betriebssystem mit.

„Signieren von Zertifikaten unter Umgehung der Zertifizierungsstelle – allein mit Bordmitteln“ weiterlesen

Die Installation eines neuen Zertifizierungsstellen-Zertifikats schlägt fehl mit Fehlercode "ERROR_INVALID_PARAMETER"

Folgendes Szenario angenommen:

  • Für eine untergeordnete Zertifizierungsstelle wird ein neues Zertifizierungsstellen-Zertifikat beantragt und von der übergeordneten Zertifizierungsstelle ausgestellt.
  • Der Subject Distinguished Name (Subject DN) ist identisch zu dem des vorigen Zertifizierungsstellen-Zertifikats.
  • Dennoch schlägt die Installation des Zertifizierungsstellen-Zertifikats 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 subject name does not exactly match the active CA name.
Renew with a new key to allow minor subject name changes: The parameter is incorrect. 0x80070057 (WIN32: 87 ERROR_INVALID_PARAMETER).
„Die Installation eines neuen Zertifizierungsstellen-Zertifikats schlägt fehl mit Fehlercode "ERROR_INVALID_PARAMETER"“ weiterlesen

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

Ein Policy Modul, um sie zu bändigen: Vorstellung des TameMyCerts Policy Moduls für Microsoft Active Directory Certificate Services

Als Betreiber einer Zertifizierungsstelle ist man (unter Anderem) für die Identifikation der Antragsteller und die Bestätigung der beantragten Identitäten 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 (ungeachtet der damit einhergehenden Qualität) in der Lage, unsere Aufgabe der eindeutigen Identifikation eines Antragstellers an das Active Directory zu delegieren. In vielen Fällen müssen wir unsere Zertifizierungsstelle(n) aber auch anweisen, einfach alles auszustellen, was beantragt wird.

„Ein Policy Modul, um sie zu bändigen: Vorstellung des TameMyCerts Policy Moduls für Microsoft Active Directory Certificate Services“ 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

Ä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 PKINIT oder auch 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

Grundlagen: Namenseinschränkungen (Name Constraints)

Namenseinschränkungen sind ein Teil des X.509 Standard und im RFC 5280 beschrieben. Sie sind ein Werkzeug, das im Rahmen der qualifizierten Subordinierung eingesetzt werden kann, um den Gültigkeitsbereich eines Zertifizierungsstellenzertifikats feingranular zu steuern.

„Grundlagen: Namenseinschränkungen (Name Constraints)“ weiterlesen

Es wird Zeit: Migrieren der PKI Komponenten von Windows Server 2012 auf ein neues Betriebssystem

Zum Jahreswechsel ein Hinweis an alle Betreiber einer Microsoft Zertifizierungsstelle und angeschlossener Dienste:

Das Ende der Produktunterstüzung von Microsoft für Windows Server 2012 und 2012 R2 rückt langsam näher, es ist der 10. Oktober 2023.

Es wird somit Zeit, den Umzug auf ein neues Betriebssystem vorzubereiten.

„Es wird Zeit: Migrieren der PKI Komponenten von Windows Server 2012 auf ein neues Betriebssystem“ 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

Betreiben der Zertifizierungsstelle ohne Exit Modul

Wird eine Zertifizierungsstelle installiert, ist automatisch das "Windows Default" Exit Modul aktiviert. Dieses ermöglicht den Versand von E-Mail Nachrichten bei bestimmten Ereignissen der Zertifizierungsstelle. Die meisten Unternehmen verwenden diese Funktion jedoch überhaupt nicht.

Aber auch wenn das Exitmodul überhaupt nicht verwendet wird, verursacht es Sitzungen auf der Zertifizierungsstellen-Datenbank (siehe Ereignis Nr. 46). Auf Zertifizierungsstellen mit hoher Last kann dies problematisch sein.

Wenn die Funktionen, die es bietet, gar nicht verwendet werden (unter Windows Server Core funktioniert das "Windows Default" Exitmodul grundsätzlich nicht), kann es auch komplett deaktiviert werden.

„Betreiben der Zertifizierungsstelle ohne Exit Modul“ weiterlesen
de_DEDeutsch