Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Einige Funktionen von App Control for Business sind nur für bestimmte Windows-Versionen verfügbar. Erfahren Sie mehr über die Verfügbarkeit von App Control-Features.
Ab April 2026 sind crosssignierte Zertifizierungsstellen (CAs) für die Signatur des Kernelmodustreibers standardmäßig nicht mehr vertrauenswürdig. Der Standardpfad für die Kerneltreibersignierung erfolgt über das Hardware Dev Center (HDC), das die Übermittlung von Treiberbinärdateien an Microsoft für die WHCP-Zertifizierung (Windows Hardware Compatibility Program) erfordert. Organisationen mit klassifizierten, sensiblen oder Air Gap-Umgebungen können jedoch möglicherweise keine Treiber zur Zertifizierung an Microsoft übermitteln. Darüber hinaus möchten Organisationen, die Treiber nur für die interne Verwendung schreiben, möglicherweise keine Treiber für das Windows-Ökosystem zertifizieren.
Benutzerdefinierte Kernelsignaturgeber lösen dieses Problem, indem sie App Control for Business erweitern, damit Organisationen Kerneltreibern vertrauen können, die mit ihrer eigenen Public Key-Infrastruktur (PKI) signiert sind, ohne DASS WHCP-Signaturen erforderlich sind. Das Feature verwendet eine App Control-Richtlinie, die von einer Signaturstelle in der Hierarchie für den sicheren Start signiert wurde, um zu definieren, welche Signaturzertifikate für Kernelmoduscode autorisiert sind. Dieses Feature bietet Ihnen eine präzise, überprüfbare Kontrolle über Ihre Kernelvertrauensgrenze und entfernt die Anforderung, Ihre Treiber durch WHCP zu zertifizieren.
Funktionsweise von benutzerdefinierten Kernel signierern
Das Feature für benutzerdefinierte Kernelsignierer verwendet eine mehrstufige Vertrauenskette und eine App-Steuerungsrichtlinie, um die in den Windows-Kernel integrierten Standardsignaturanforderungen zu überschreiben. So funktioniert die Vertrauenskette:
| Schicht | Rolle |
|---|---|
| Secure Boot Platform Key (PK) / Key Exchange Key (KEK) | Stamm der Vertrauensstellung. Im Besitz von Ihnen oder dem OEM. Kann nicht ohne physischen Zugriff auf Firmware geändert werden. |
| App Control-Richtlinien signierer | Signiert die Binärdatei der App-Steuerungsrichtlinie. Muss mit einer Autorität in der PK- oder KEK-Datenbank für den sicheren Start verkettet werden. |
| App-Steuerungsrichtlinie | Listet vertrauenswürdige Kernel signierer auf, einschließlich Ihrer benutzerdefinierten PKI, Windows und optional der WHCP-Signierer. In der EFI-Systempartition bereitgestellt. |
| Windows-Kernelcodeintegrität | Überprüft alle Kerneltreiber zur Ladezeit anhand der App-Steuerungsrichtlinie. Lässt nur treiber zulassen, die in der App-Steuerungsrichtlinie aufgeführt sind. |
Nur der Plattforminhaber (PK- oder KEK-Besitzer) kann die Richtlinie autorisieren. Dieser Registrierungsprozess mit hoher Reibung ist beabsichtigt. Der Prozess verhindert Missbrauch auf Consumergeräten und stellt sicher, dass nur Organisationen mit physischem Firmwarezugriff das Feature aktivieren können.
Wichtig
Nachdem eine signierte Richtlinie bereitgestellt wurde, kann sie nur mit einer neuen Richtlinie aktualisiert werden, die von derselben Autorität signiert wurde. Wenn Sie die Richtlinie ohne gültigen Ersatz entfernen, kann Windows nicht gestartet werden. Zur Wiederherstellung müssen Sie auf das UEFI-Menü (Unified Extensible Firmware Interface) zugreifen, um den sicheren Start zu deaktivieren oder Firmwarevariablen zu ändern. Planen Sie Ihre Schlüsselverwaltungs- und Wiederherstellungsverfahren sorgfältig vor der Bereitstellung. Weitere Informationen finden Sie unter Signierte App Control-Richtlinien.
Sicherheitsgarantien
Benutzerdefinierte Kernel signierer bieten die folgenden Sicherheitsgarantien:
- Sichere Startintegrität: Benutzerdefinierte Kernel signierer funktionieren nur, wenn sicherer Start aktiviert ist. Die Richtlinie muss vom Secure Boot PK- oder KEK-Besitzer signiert werden und kann nicht ohne physischen Firmwarezugriff gespooft werden.
- Manipulationsschutz: Nach der Bereitstellung kann die signierte Richtlinie nicht ohne eine Ersatzrichtlinie entfernt werden, die von derselben Autorität signiert wurde.
- Granulare Vertrauensstellung: Die App-Steuerungsrichtlinie lässt Vertrauensregeln pro Zertifikat und Hash zu. Sie steuern genau, welche Treiber in Ihrem Kernel ausgeführt werden.
- Nicht-Ablehnung: Alle Richtlinien- und Treibersignaturen sind kryptografisch überprüfbar. Codeintegritätsereignisprotokolle erfassen alle Lade- und Blockentscheidungen für die Überwachung.
Unterstützte Plattformen und Editionen
Das Feature für benutzerdefinierte Kernel signierer ist auf den folgenden Windows-Plattformen mit dem nicht sicherheitsrelevanten Update vom April 2026 verfügbar:
- Windows 11 (Version 24H2 und höher)
Das Feature ist in allen Editionen von Windows mit Ausnahme von Home verfügbar.
Hinweis
Dieses Feature wird auf ARM64-Systemen mit System Guard Secure Launch noch nicht unterstützt.
Bereitstellung von benutzerdefinierten Kernel signierern
Bevor Sie beginnen, stellen Sie sicher, dass die folgenden Anforderungen erfüllt sind:
- Neuinstallation von Windows unter einer unterstützten Edition. Benutzerdefinierte Kernel signierer müssen während der anfänglichen Geräteeinrichtung aktiviert werden. Das Feature wird auf derzeit ausgeführten Systemen nicht aktiviert.
- UEFI-Firmware (Version 2.3 oder höher) mit aktiviertem sicheren Start.
- Kundeneigene PKI-Infrastruktur. Eine HSM-gestützte Schlüsselspeicherlösung wird für Produktionsumgebungen empfohlen.
- Administratorzugriff auf UEFI-Firmwarevariablen (PK, KEK, DB).
- SignTool.exe aus dem Windows SDK.
- Vertrautheit mit dem Richtlinienentwurf von App Control for Business, signierten Richtlinien und Richtlinienregeln.
Schritt 1: Generieren der Schlüssel für den sicheren Start
Generieren Sie das PKI-Schlüsselpaar, das als Vertrauensbasis für den sicheren Start dient, und wird zum Signieren Ihrer App-Steuerungsrichtlinie verwendet. Entweder der PK oder KEK kann als Vertrauensbasis verwendet werden, um die App-Steuerungsrichtlinie zu signieren. Microsoft empfiehlt es sich, den PKI-Schlüssel zum KEK hinzuzufügen, damit der PK-Besitzer den KEK auch in Zukunft weiter bedienen kann.
PK- und KEK-Zertifikate müssen Stammzertifikate oder Zwischenzertifikate (PCAs) sein, die direkt aus dem Stamm ausgestellt werden. Das Dokument Zum Erstellen und Verwalten von Windows-Schlüsseln für den sicheren Start finden Sie weitere Informationen und Anleitungen zum Erstellen von Zertifikaten, die mit dem sicheren Start kompatibel sind. Sie können den Microsoft KEK-Schlüssel auch als Referenzvorlage für wichtige Eigenschaften und Erweiterungen verwenden.
Hinweis
Wenn Ihr organization den PK bereits auf Ihren Geräten besitzt, können Sie Ihre App Control-Richtlinie damit signieren oder ein KEK-Update signieren, um einen neuen Schlüssel für den sicheren Start anzufügen. Wenn Sie nicht im Besitz des PK sind, müssen Sie den sicheren Start deaktivieren, um einen neuen PK oder KEK auf vorhandenen Geräten festzulegen. Für zukünftige Geräte sollten Sie mit Ihrem Hardware-OEM zusammenarbeiten, um Ihre benutzerdefinierten Schlüssel für den sicheren Start in der Factory vorzukonfigurieren.
Schritt 2: Konfigurieren der UEFI-Variablen für den sicheren Start mit Zugriff auf den PK
Wenn Sie den PK auf Geräten besitzen, können Sie die KEK-Registrierung signieren, um Ihren öffentlichen KEK-Schlüssel zur UEFI-Firmware hinzuzufügen. Wenn Sie den PK nicht besitzen, können Sie mit Schritt 3 fortfahren.
Generieren des KEK-Registrierungsinhalts
# Generate KEK content file
# Replace the SignatureOwner GUID with your organization's GUID
Format-SecureBootUEFI `
-Name KEK `
-SignatureOwner "55555555-5555-5555-5555-555555555555" `
-ContentFilePath C:\KEK\KEK_SigList.bin `
-FormatWithCert `
-Certificate C:\KEK\policy_signer.cer `
-SignableFilePath C:\KEK\KEK_Signable_SigList.bin `
-Time 2025-01-01T00:00:00Z `
-AppendWrite:$true
Signieren der KEK-Registrierungsdatei mit Ihrem PK
signtool.exe sign /fd sha256
/p7 .\
/p7co 1.2.840.113549.1.7.1 `
/p7ce DetachedSignedData `
/a `
/f PK.pfx`
C:\KEK\KEK_Signable_SigList.bin
Schritt 3. Konfigurieren der UEFI-Variablen für den sicheren Start ohne Zugriff auf den PK
Um die Variablen für den sicheren Start von UEFI festzulegen, deaktivieren Sie zunächst den sicheren Start im UEFI-Menü, um die Firmware in den Setupmodus zu versetzen. Im Setupmodus können Variablen ohne signierte Updates festgelegt werden.
Legen Sie die Variablen in der folgenden Reihenfolge fest:
- DATENBANK : Fügen Sie das OEM- und Windows UEFI CA 2023-Zertifikat hinzu.
- KEK: Fügen Sie das Microsoft KEK CA 2K 2023 und das Richtlinien signierer-Zertifikat Ihres organization hinzu.
- PK: Legen Sie den Plattformschlüssel Ihres organization fest (oder behalten Sie die OEM-PK bei Verwendung der KEK-Registrierung bei).
Achtung
Durch das falsche Festlegen von Variablen für den sicheren Start kann das Gerät nicht mehr gestartet werden. Testen Sie diesen Prozess vor der Bereitstellung in der Produktion auf Labhardware. Behalten Sie immer den Zugriff auf die UEFI-Firmwareeinstellungen bei, damit Sie die Wiederherstellung vornehmen können, indem Sie bei Bedarf den sicheren Start deaktivieren. Die für Windows erforderlichen Schlüssel finden Sie in unserem Leitfaden zur Erstellung und Verwaltung von Schlüsseln für den sicheren Start.
Schritt 4: Erstellen der App-Steuerungsrichtlinie
Beginnen Sie mit der standardbasierten erzwungenen Windows-Richtlinie als Basisvorlage, und überprüfen Sie dann das Gerät nach anderen Signaturgebern, die vertrauenswürdig sein müssen.
Suchen der Standardrichtlinienvorlage
Die Standardrichtlinienvorlage ist verfügbar unter:
%WINDIR%\schemas\CodeIntegrity\ExamplePolicies\DefaultWindows_Enforced.xml
Überprüfen des Geräts auf vorhandene Kernel signierer
New-CIPolicy -ScanPath 'C:\' -UserPEs -NoScript `
-FilePath '.\ScannedPolicy.xml' `
-Level PCACertificate -Fallback Hash
Hinweis
Dieser Befehl erstellt Signaturzertifikatregeln durch Anheften der Vertrauensstellung an die Zwischenzertifizierungsstelle. Eine genauere Vertrauensstellung kann in app Control erreicht werden und ist in unserem Dokument mit Richtlinienregeln dokumentiert.
Zusammenführen der Standardrichtlinie mit den Scanergebnissen
Merge-CIPolicy `
-PolicyPaths 'C:\Windows\schemas\CodeIntegrity\ExamplePolicies\DefaultWindows_Enforced.xml', '.\ScannedPolicy.xml' `
-OutputFilePath '.\CustomKernelSignersPolicy.xml'
Vorbereiten Ihrer Richtlinie für die Signierung
Das Feature für benutzerdefinierte Kernelsignierer erfordert, dass die Richtlinie signiert und durch Komponenten für den sicheren Start und frühen Windows-Start geschützt wird. Weitere Informationen finden Sie unter Signierte App Control-Richtlinien. Um die signierte Richtlinie zu aktivieren, entfernen Sie Option 6 (richtlinie ohne Vorzeichen):
Set-RuleOption -Option 6 -FilePath .\CustomKernelSignersPolicy.xml -Delete
(Optional) Entfernen der Codeintegrität im Benutzermodus
Wenn die Richtlinie nur auf Kernelmodustreiber angewendet werden soll, entfernen Sie Option 0 (UMCI):
Set-RuleOption -Option 0 -FilePath .\CustomKernelSignersPolicy.xml -Delete
Wichtig
Nachdem Sie die UMCI-Regeloption entfernt haben, müssen Sie auch das UMCI signing scenario Element (Wert 12) manuell aus der CustomKernelSignersPolicy.xml-Datei entfernen.
Bewährte Methoden für die Basisrichtlinie
- Passen Sie zuerst das Bild an. Entfernen Sie alle nicht genehmigten Software, bevor Sie das Gerät scannen.
-
Verwenden
-Level PCACertificatefür ein optimales Gleichgewicht zwischen Spezifität und Abdeckung. - Die Überprüfung erfasst alle vorhandenen Signierer auf dem Gerät und stellt sicher, dass Windows-Komponenten und Hardwaretreiber vertrauenswürdig bleiben. Überprüfen Sie stattdessen nur Ihre vertraulichen Treiber.
- Testen Sie gründlich im Überwachungsmodus , bevor Sie die Bereitstellung im erzwungenen Modus durchführen.
Schritt 5: Hinzufügen benutzerdefinierter Kernel signierer zur Richtlinie
Fügen Sie den TBS-Hash (Zu signiert) jedes vertrauenswürdigen Zertifikats den folgenden Abschnitten Ihrer Richtlinien-XML hinzu. Sie benötigen Einträge für:
| Zertifikat | Zweck | Abschnitt "Richtlinie" |
|---|---|---|
| Richtlinien-Signaturgeberzertifikat | Dieses Zertifikat signiert die CI-Richtlinie selbst und verkettet sich mit der Autorität, die dem Secure Boot PK oder KEK hinzugefügt wurde. | <UpdateSigners> |
| Signaturzertifikate für benutzerdefinierte Treiber | Dieses Zertifikat signiert Ihre Kerneltreiber. | <Signers> |
# Policy signer certificate(s):
Add-SignerRule -CertificatePath <path_to_cer> -FilePath .\CustomKernelSignersPolicy.xml -Update
# Custom kernel signer certificate(s):
Add-SignerRule -CertificatePath <path_to_cer> -FilePath .\CustomKernelSignersPolicy.xml -Kernel
Tipp
Sie können den TBS-Hash des Zertifikats auch mit dem certutil Befehl abrufen: certutil -dump <certificate.cer>. Suchen Sie in der Ausgabe nach dem Signaturhashwert . Dieser Wert ist der TBS-Hash des Zertifikats.
Schritt 6: Konvertieren und Signieren der Richtlinie
Konvertieren der XML-Richtlinie in das Binärformat
Set-CIPolicyIdInfo -ResetPolicyID -FilePath .\CustomKernelSignersPolicy.xml
$PolicyId = ([xml](Get-Content .\CustomKernelSignersPolicy.xml)).SiPolicy.PolicyId
ConvertFrom-CIPolicy .\CustomKernelSignersPolicy.xml -BinaryFilePath ("./" + $PolicyId + ".cip")
Signieren der Richtlinie mit Ihrem Richtliniensignaturzertifikat
signtool.exe sign /fd sha256 `
/p7 .\ `
/p7co 1.3.6.1.4.1.311.79.1 `
/p7ce Embedded`
/a `
/f policy_signer.pfx `
("./" + $PolicyId + ".cip")
Wichtig
Die OID 1.3.6.1.4.1.311.79.1 ist die Windows CI-Richtliniensignatur-OID. Sie müssen diese OID für die Windows-Codeintegrität verwenden, um die Signatur zu erkennen. Das Richtlinien-Signaturgeberzertifikat muss mit Ihrem PK oder KEK verkettet werden. Weitere Informationen finden Sie unter Signierte App Control-Richtlinien.
Schritt 7: Bereitstellen der Richtlinie
Sie können die signierte Richtlinienbinärdatei mit einer der folgenden Methoden bereitstellen:
- MDM-Lösung wie Microsoft Intune
- CiTool (verfügbar auf Windows 11)
- Gruppenrichtlinie (Bereitstellung über GPO)
- Skriptbasierte Bereitstellung (Bereitstellen über Skript)
Skriptbasierte Bereitstellung auf der EFI-Systempartition
Alle oben genannten Lösungen stellen neben der skriptbasierten Bereitstellung die Richtlinienbinärdatei automatisch in der EFI-Systempartition (ESP) bereit. Bei der Bereitstellung über ein Skript müssen Sie die signierte Richtlinienbinärdatei manuell in die EFI-Partition kopieren:
# Mount the EFI System Partition
mountvol s: /s
# Copy the signed policy to the active policies directory
copy ("./" + $PolicyId + ".cip") s:\EFI\Microsoft\Boot\CiPolicies\Active\
Hinweis
MDM-, CiTool- und GPO-Methoden kopieren die Richtlinie automatisch in die EFI-Partition.
Schritt 8: Zurücksetzen von Windows
Zum Aktivieren des Features ist eine Zurücksetzung von Windows erforderlich. Sobald die Richtlinie auf der EFI-Partition vorhanden ist, müssen Sie das Gerät mithilfe einer Zurücksetzungsmethode wie dem Zurücksetzen per Knopfdruck zurücksetzen. Die Richtlinie wird von Windows nicht als vertrauenswürdig eingestuft, wenn kein Zurücksetzen durchgeführt wird.
Schritt 9: Deaktivieren der Windows-Treiberrichtlinie
Ab dem nicht sicherheitsrelevanten Update vom April 2026 erzwingen Windows 11 (24H2 und höher) und Windows Server 2025 eine Kernelrichtlinie, die die Vertrauensstellung für das kreuzsignierte Treiberprogramm einschränkt. Wenn die Richtlinie aktiv ist, müssen Sie sie deaktivieren. Andernfalls blockiert die Treiberrichtlinie Ihre benutzerdefinierten PKI-signierten Treiber.
# Mount the EFI System Partition
mountvol s: /s
# Remove the default Windows kernel policy if present
del s:\EFI\Microsoft\Boot\CiPolicies\Active\{8F9CB695-5D48-48D6-A329-7202B44607E3}.cip
Schritt 10: Überprüfen der Bereitstellung
Test im Überwachungsmodus zuerst
Stellen Sie vor dem Erzwingen der Richtlinie mit aktiviertem Überwachungsmodus bereit, um Richtlinienverstöße zu protokollieren, ohne Treiber zu blockieren:
- Stellen Sie sicher, dass
Enabled:Audit Modeim Abschnitt richtlinie<Rules>festgelegt ist. - Stellen Sie die Richtlinie bereit, und starten Sie das Gerät neu.
- Überprüfen Sie die Ereignisprotokolle für die Codeintegrität unter Anwendungs- und Dienstprotokolle>Microsoft>Windows>CodeIntegrity.
Überprüfungsprüfliste
- Benutzerdefinierte Treiber werden erfolgreich geladen.
- Nicht signierte oder nicht autorisierte Treiber werden blockiert (im Erzwingungsmodus).
- Windows Update- und Betriebssystemwartungsflows funktionieren weiterhin.
- Codeintegritätsereignisprotokolle zeigen nur erwartete Blockereignisse an.
- Die Richtlinie wird vor der flottenweiten Bereitstellung für alle Zielhardwarekonfigurationen überprüft.
Entfernen Sie nach Abschluss der Überprüfung die Enabled:Audit Mode Regeloption aus der Richtlinie, signieren Sie sie erneut, und stellen Sie sie auf Produktionsgeräten bereit. Eine sauber Installation von Windows ist für Richtlinienupdates nicht erforderlich.