Kryptographische Härtung der SCEP-Transaktionen für den Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)

Das Simple Certificate Enrollment Protocol (SCEP) ist ein uraltes Protokoll aus den frühen 2000ern. Es kommt ohne Transport Layer Security (TLS) aus. Daher werden die Protokollnachrichten auf Transportebene verschlüsselt.

Beim Senden der Zertifikatanforderung an den NDES-Server wird der Client den Zertifikatantrag mit dem CEP-Encryption Zertifikat des NDES-Servers (wurde ihm über die GetCACert Nachricht zuvor kommuniziert) vornehmen.

Beim Empfangen des ausgestellten Zertifikats wird der NDES-Server die Antwort mit einem temporär vom SCEP-Client erstellten selbstsignierten Zertifikat verschlüsseln.

In beiden Fällen kommt ein symmetrischer Verschlüsselungsalgorithmus zum Einsatz.

„Kryptographische Härtung der SCEP-Transaktionen für den Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)“ weiterlesen

Angriff auf das Active Directory über Microsoft Intune – und wie er mit TameMyCerts eingedämmt werden kann

Dirk-jan Mollema hat jüngst einen Angriff vorgestellt, bei welchem man sich über Intune ein Zertifikat für hochprivilegierte Konten erschleichen kann. Dieses kann dann verwendet werden, um die gesamte Active Directory Umgebung zu kompromittieren.

Der Angriff ist in seinen Grundzügen vergleichbar mit dem, was ich schon im Artikel "Von Null auf Enterprise Administrator durch den Registrierungsdienst für Netzwerkgeräte (NDES) – und was dagegen getan werden kann" und im Artikel "Angriffsvektor auf den Active Directory Verzeichnisdienst über den Smartcard Logon Mechanismus" beschrieben habe (im Allgemeinen auch auch bekannt als ESC1).

Neu ist jedoch, das Mobile Device Management (MDM) System – in diesem Fall Microsoft Intune – entsprechend auszunutzen.

Nicht neu ist hingegen was mit dem TameMyCerts Policy Modul für die Active Directory Certificate Services dagegen getan werden kann, um die Angriffsoberfläche drastisch zu reduzieren…

„Angriff auf das Active Directory über Microsoft Intune – und wie er mit TameMyCerts eingedämmt werden kann“ weiterlesen

Die Erneuerung eines Zertifikats über den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt fehl mit Fehlercode CERT_E_UNTRUSTEDCA

Folgendes Szenario angenommen:

  • Es wird ein Zertifikat über den Registrierungsdienst für Netzwerkgeräte (NDES) beantragt.
  • Hierbei kommt der Renewal-Modus zum Einsatz, d.h. die Zertifikatanforderung wird mit einem bestehenden Zertifikat signiert.
  • Die Beantragung des neuen Zertifikats schlägt mit folgender Fehlermeldung fehl:
A certification chain processed correctly, but one of the CA
certificates is not trusted by the policy provider. 0x800b0112 (-2146762478 CERT_E_UNTRUSTEDCA)
„Die Erneuerung eines Zertifikats über den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt fehl mit Fehlercode CERT_E_UNTRUSTEDCA“ weiterlesen

Details zum Ereignis mit ID 86 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll

Ereignisquelle:Microsoft-Windows-CertificateServicesClient-CertEnroll
Ereignis-ID:86 (0xC25A0056)
Ereignisprotokoll:Application
Ereignistyp:Error
Ereignistext (englisch):SCEP Certificate enrollment initialization for %1 via %2 failed: %3 Method: %4 Stage: %5 %6
Ereignistext (deutsch):Fehler bei der Initialisierung der SCEP-Zertifikatregistrierung für %1 über %2: %3 Methode: %4 Phase: %5 %6
„Details zum Ereignis mit ID 86 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll“ weiterlesen

Details zum Ereignis mit ID 87 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll

Ereignisquelle:Microsoft-Windows-CertificateServicesClient-CertEnroll
Ereignis-ID:87 (0xC25A0057)
Ereignisprotokoll:Application
Ereignistyp:Error
Ereignistext (englisch):SCEP Certificate enrollment for %1 via %2 failed: %3 Method: %4 Stage: %5 %6
Ereignistext (deutsch):Fehler bei der SCEP-Zertifikatregistrierung für %1 über %2: %3 Methode: %4 Phase: %5 %6
„Details zum Ereignis mit ID 87 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll“ 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

SSCEP: Subject of our request does not match that of the returned Certificate!

Folgendes Szenario angenommen:

sscep: Subject of our request does not match that of the returned Certificate!
„SSCEP: Subject of our request does not match that of the returned Certificate!“ weiterlesen

SSCEP für Linux (Debian Buster) installieren und Zertifikate über den Registrierungsdienst für Netzwerkgeräte (NDES) beantragen

Möchte man eine große Menge an Systemen mit Zertifikaten ausrüsten, ist eine manuelle Beantragung und Erneuerung der Zertifikate keine Option. Der einzige gangbare Weg ist Automatisierung.

Für Systeme, die nicht Mitglied der Active Directory Gesamtstruktur sind, ist eine automatische Zertifikatbeantragung über RPC/DCOM keine Option.

Für bestimmte Anwendungsfälle ist das Simple Certificate Enrollment Protocol (SCEP) eine interessante Alternative. Für dieses Protokoll gibt es nicht nur Clients für Windows, sondern mit SSCEP auch für Linux. SSCEP wird unter Anderem von Thin Clients mit dem eLux Betriebssystem verwendet.

Nachfolgend wird beschrieben, wie der SSCEP Client auf einem Debian Buster Linux System eingerichtet wird – entweder, um damit Server zu verwalten, oder das clientseitige Verhalten testen zu können.

„SSCEP für Linux (Debian Buster) installieren und Zertifikate über den Registrierungsdienst für Netzwerkgeräte (NDES) beantragen“ weiterlesen

Zertifikatbeantragung für Windows-Systeme mit dem SCEP-Protokollüber den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell

Möchte man Windows-Systeme mit Zertifikaten ausrüsten, welche nicht die Möglichkeit haben, direkt mit einer Active Directory integrierten Zertifizierungsstelle zu kommunizieren, oder die sich gar überhaupt nicht in der gleichen Active Directory Gesamtstruktur befinden, bleibt in den meisten Fällen nur die manuelle Installation von Zertifikaten.

Seit Windows 8.1 / Windows Server 2012 R2 befindet sich jedoch ein integrierter Client für das Simple Certificate Enrollment Protocoll (SCEP) an Bord. Serverseitig wird SCEP über den Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) in der Microsoft-PKI seit Windows Server 2003 implementiert.

Eine besonders interessante Eigenschaft von SCEP ist, dass das Protokoll eine Erneuerung eines Zertifikats unter Angabe eines bereits vorhandenen erlaubt. Was läge also näher, als diese Schnittstelle zu verwenden? Was noch fehlt, ist eine entsprechende Automatisierung über die Windows PowerShell.

„Zertifikatbeantragung für Windows-Systeme mit dem SCEP-Protokollüber den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell“ weiterlesen

Grundlagen Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)

Das Simple Certificate Enrollment Protocol (SCEP) wurde in den frühen 2000er Jahren von Verisign für Cisco entwickelt, um eine vereinfachte Methode zum Beantragen von Zertifikaten verwenden zu können. Zuvor musste für Netzwerkgeräte manuell eine Zertifikatanforderung auf jedem Gerät erzeugt, zu einer Zertifizierungsstelle übermittelt und anschließend das ausgestellte Zertifikat wieder manuell auf dem entsprechenden Gerät installiert werden.

„Grundlagen Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)“ weiterlesen

Details zum Ereignis mit ID 34 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService

Ereignisquelle:Microsoft-Windows-NetworkDeviceEnrollmentService
Ereignis-ID:34 (0x22)
Ereignisprotokoll:Application
Ereignistyp:Fehler
Symbolischer Name:EVENT_SCEP_RA_EXPIRE
Ereignistext (englisch):At least one of the certificates for the Network Device Enrollment Service has expired. Verify that both the encryption and signing certificates are valid and restart the service.
Ereignistext (deutsch):Mindestens ein Zertifikat für den Registrierungsdienst für Netzwerkgeräte ist abgelaufen. Stellen Sie sicher, dass sowohl die Verschlüsselung als auch die Signaturzertifikate gültig sind, und starten Sie den Dienst neu.
„Details zum Ereignis mit ID 34 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService“ weiterlesen

Details zum Ereignis mit ID 35 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService

Ereignisquelle:Microsoft-Windows-NetworkDeviceEnrollmentService
Ereignis-ID:35 (0x23)
Ereignisprotokoll:Application
Ereignistyp:Fehler
Symbolischer Name:EVENT_SCEP_RA_CLOSE_TO_EXPIRE
Ereignistext (englisch):At least one of the certificates for the Network Device Enrollment Service will expire soon. Check the validity period for both the encryption and signing certificates. Renew any certificates that are nearing the end of their validity period and restart the service.
Ereignistext (deutsch):Mindestens ein Zertifikat für den Registrierungsdienst für Netzwerkgeräte wird bald ablaufen. Prüfen Sie den Gültigkeitszeitraum für sowohl die Verschlüsselung als auch die Signaturzertifikate. Erneuern Sie alle Zertifikate, deren Gültigkeitszeitraum bald abläuft, und starten Sie den Dienst neu.
„Details zum Ereignis mit ID 35 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService“ weiterlesen

Details zum Ereignis mit ID 36 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService

Ereignisquelle:Microsoft-Windows-NetworkDeviceEnrollmentService
Ereignis-ID:36 (0x24)
Ereignisprotokoll:Application
Ereignistyp:Fehler
Symbolischer Name:EVENT_SCEP_SERVER_SUPPORT
Ereignistext (englisch):The Network Device Enrollment Service failed while attempting to write the header portion of an http response (%1). %2
Ereignistext (deutsch):Beim Registrierungsdienst für Netzwerkgeräte ist ein Fehler aufgetreten, als versucht wurde, in den Headerbereich einer HTTP-Antwort (%1) zu schreiben. %2
„Details zum Ereignis mit ID 36 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService“ weiterlesen

Details zum Ereignis mit ID 37 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService

Ereignisquelle:Microsoft-Windows-NetworkDeviceEnrollmentService
Ereignis-ID:37 (0x25)
Ereignisprotokoll:Application
Ereignistyp:Fehler
Symbolischer Name:EVENT_SCEP_WRITE_DATA
Ereignistext (englisch):The Network Device Enrollment Service failed while attempting to write the data portion of an http response (%1). %2
Ereignistext (deutsch):Beim Registrierungsdienst für Netzwerkgeräte ist ein Fehler aufgetreten, als versucht wurde, in den Datenbereich einer HTTP-Antwort (%1) zu schreiben. %2
„Details zum Ereignis mit ID 37 der Quelle Microsoft-Windows-NetworkDeviceEnrollmentService“ weiterlesen

Die Beantragung von Zertifikaten über den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt mit HTTP Fehlercode 503 fehl, und es gibt keine Einträge in der Ereignisanzeige

Folgendes Szenario angenommen:

  • Es ist ein Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) im Netzwerk implementiert.
  • Der NDES Server verwendet ein Domänenkonto oder einen Group Managed Service Account (gMSA) für die Identität des SCEP IIS-Anwendungspools.
  • Die Beantragung von Zertifikaten über NDES schlägt mit HTTP Fehlercode 503 (Server Unavailable) fehl.
  • Der Aufruf der mscep- und mscep_admin Seiten schlägt ebenfalls mit dem HTTP Fehlercode 500 fehl.
  • Auch nach einem iisreset bzw. Neustart des NDES Servers erscheint nach Aufruf der mscep oder mscsp_admin Seite kein Ereignis, dass der NDES Dienst gestartet wäre, oder dass es Fehler gegeben hätte.
„Die Beantragung von Zertifikaten über den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt mit HTTP Fehlercode 503 fehl, und es gibt keine Einträge in der Ereignisanzeige“ weiterlesen
de_DEDeutsch