BLOG
Wissenstransfer von IT-Spezialisten
| |

Windows 10 Enterprise Serie: Device Guard

> Zur Übersicht und Einleitung der Blogserie „Windows 10 Enterprise Serie“.

Überblick

Der Device Guard wurde mit der Einführung von Windows 10 als zusätzliches Sicherheitsfeatureset released. Angeboten wird es ausschließlich unter Windows 10 Enterprise. Durch die Nutzung von Virtualisierungstechnologien und softwarebasierenden Sicherheitsfeatures wird ein System vor der Ausführung von unerwünschten Anwendungen geschützt. Der Administrator legt fest, welche Applikation als vertrauenswürdig gilt, und nur diese wird auf dem System ausgeführt.

Voraussetzungen für die Nutzung von Device Guard

  • Windows 10 Enterprise
  • > Zur Übersicht und Einleitung der Blogserie „Windows 10 Enterprise Serie“.

    Überblick

    Der Device Guard wurde mit der Einführung von Windows 10 als zusätzliches Sicherheitsfeatureset released. Angeboten wird es ausschließlich unter Windows 10 Enterprise. Durch die Nutzung von Virtualisierungstechnologien und softwarebasierenden Sicherheitsfeatures wird ein System vor der Ausführung von unerwünschten Anwendungen geschützt. Der Administrator legt fest, welche Applikation als vertrauenswürdig gilt, und nur diese wird auf dem System ausgeführt.

    Voraussetzungen für die Nutzung von Device Guard

    • Windows 10 Enterprise
    • UEFI firmware Version 2.3.1 oder höher
    • Virtualisierungskomponenten (Intel VT-x oder AMD-V) und Second Level Address Translation (SLAT)
    • Firmware lock (Die Firmware verhindert in diesem Fall den Boot von anderen Betriebssystemen und Veränderungen in der UEFI Firmware. Zudem sollten alle anderen Bootoptionen deaktiviert werden.)
    • X64 System Architektur
    • IOMMU (Inout/output memory management unit) Komponente (Intel VT-d oder AMD-Vi)
    • Secure firmware update process

    Warum sollte ich Device Guard einsetzen und warum nicht?

    Der Device Guard bietet dem Unternehmen eine richtliniengesteuerte Möglichkeit sich vor Malware zu schützen. Traditionelle Methoden zum Schutz vor Malware waren zumeist signaturgesteuert, was allerdings keinen hundertprozentigen Schutz bietet. Microsoft hat mit dem Release vom Device Guard eine Möglichkeit bereitgestellt, mit der der Administrator exakt festlegt, welcher Code auf den Maschinen ausgeführt werden darf.

    Ob man nun auf jedem System in seinem Unternehmen den Device Guard nutzen möchte, steht jedem frei. Der Device Guard ist nicht unbedingt empfehlenswert für Clients mit Konfigurationsaufwand und häufig wechselnden Softwareständen. Auf Kiosk Rechnern oder ATM’s sollte man allerdings den Einsatz in Betracht ziehen.

    Funktionsweise

    • Der Systemstart wird durch UEFI Secure Boot geschützt. Diese Funktion schützt das System davor, dass Bootkits ausgeführt werden bevor Windows 10 gestartet wurde.
    • Nachdem die Windows 10 Bootkomponenten geladen wurden, werden die Hyper-V Sicherheitsbestandteile geladen. In Kombination mit „Kernel Mode Code Integrity“ (KMCI) wird der Systemkern (Kernel), die Treiber und die Anti-Malware Komponenten vor dem Befall von Schadcode geschützt, welcher in einem frühen Stadium des Bootprozesses, oder im Kernel, ausgeführt werden könnte.
    • Device Guard verhindert durch „User Mode Code Integrity“ (UMCI), dass sich Schadcode im Nutzerkontext (einschließlich Administrative User) ausführen lässt. Ausschließlich Code, welcher als vertrauenswürdig definiert wurde, kann geladen werden. Universal Apps werden von Windows 10 als sicher eingestuft. Um diese zu blockieren, kann man auf den AppLocker zurückgreifen.
    • Mit Hilfe der „Virtual Based Security” (VBS) und dem TPM wird eine virtuelle Instanz erzeugt (Isolated User Mode), welche besonders sicherheitskritische Komponenten des Systems schützt. Dazu zählen unter anderem Zertifikate und die Credentials (Credential Guard).

    Konfiguration

    Aktivierung der benötigten Windows Features

    Die benötigten Betriebssystemkomponenten, welche aktiviert werden müssen, sind „Isolated User Mode“ und Hyper-V Hypervisor.

    Natürlich lässt sich das Feature auch über die Kommandozeile aktivieren:

    1
    2
    3
    dism.exe /NoRestart /Online /Enable-Feature:IsolatedUserMode /All
    dism.exe /NoRestart /Online /Enable-Feature:Microsoft-hyper-v-hypervisor /ALL

    Konfiguration der Code Integritäts / Secure Boot Features

    Man hat an dieser Stelle die Möglichkeit die Features über Group Policy oder Local über die Registry zu konfigurieren.

    Deployment via Group-Policy

    Deployment via Registry

    Die folgenden Keys müssen in der Registry eingetragen werden:

    HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard“

    • EnableVirtualizationBasedSecurity
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
    • RequirePlatformSecurityFeatures
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 2 /f
    • HypervisorEnforcedCodeIntegrity
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
    Deployment via Configuration Manager

    Um die Device Guard Settings via Configuration Manager an die Clients zu verteilen, erstellt man z.B. eine Task Sequenz:

    • Enable Isolated User Mode:
    1
    dism.exe /NoRestart /Online /Enable-Feature:IsolatedUserMode /All
    • Enable Virtualization Based Security:
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
    • Require Platform Security Features:
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 2 /f
    • Hypervisor Enforced Code Integrity:
    1
    reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
    • copy CI-Policy:
    1
    Kopieren der CI-Policy: Ziel %WinDir%\System32\CodeIntegrity
    • Restart Computer
    Anzeige der Device Guard Systeme im Configuration Manager

    Um Clients, die die Device Guard Settings aktiviert haben, muss man zunächst in der Configuration Manager Konsole die Client Settings bearbeiten und die „Hardware Discovery Settings“ anpassen. Dazu sind folgende Schritte nötig:

    Zu Testzwecken kann man die Default Client Settings nutzen, in produktiven Systemen nutzt man eigenständige Client Settings.

    Öffnen der Eigenschaften der Default Client Settings

    Hardware Inventory –> Set Classes –> ADD

    Klick „Connect“

    • Computer name: System mit Windows 10 eintragen
    • WMI namespace: root\Microsoft\Windows\DeviceGuard

    Mit einem Klick auf Connect wird eine Verbindung zu der Maschine hergestellt. Bei Bedarf müssen noch Username und Kennwort angegeben werden.

    An dieser Stelle den Eintrag „Win32_DeviceGuard“ anhaken und auf OK klicken.

    Jetzt die Settings speichern.

    Nachdem die geänderten Settings nun auf den Clients angewendet wurden, kann man nun im Ressource Explorer die DeviceGuard Konfiguration einsehen.

    Als nächstes muss eine Collection angelegt werden. Diese zeigt die Clients an, welche die Settings anzeigt.

    Edit Query Settings –> Show Query Language

    An dieser Stelle folgende Query eintragen:

    1
    2
    3
    4
    5
    SELECT SMS_R_SYSTEM.ResourceID, SMS_R_SYSTEM.ResourceType, SMS_R_SYSTEM.Name, SMS_R_SYSTEM.SMSUniqueIdentifier, SMS_R_SYSTEM.ResourceDomainORWorkgroup, SMS_R_SYSTEM.Client
    FROM SMS_R_System
    INNER JOIN SMS_G_System_DEVICE_GUARD ON SMS_G_System_DEVICE_GUARD.ResourceId = SMS_R_System.ResourceId
    WHERE (SMS_G_System_DEVICE_GUARD.AvailableSecurityProperties like "%1%"
    and SMS_G_System_DEVICE_GUARD.AvailableSecurityProperties like "%3%")

    Die in der Query verwendeten Klasseneigenschaften von Win32_DeviceGuard werden in diesem Artikel beschrieben:

    https://technet.microsoft.com/en-us/library/mt463091(v=vs.85).aspx#configure_hardware#

    Konfiguration der Code Integritäts Richtlinien

    Erstellung eines „Golden Systems“

    Um eine Code Integritäts Richtlinie zu erstellen, nutzt man eine Maschine, die den aktuellen Softwarebestand besitzt. Zudem sollten keine Device Guard Komponenten aktiviert sein.

    Die Erstellung erfolgt ausschließlich über PowerShell Commandlets, welche mit Windows 10 released wurden.

    • Erstellen einer Schattenkopie von Laufwerk C:
    1
    2
    3
    4
    $s1 = (gwmi -List Win32_ShadowCopy).Create("C:\","ClientAccessible")
    $s2 = gwmi Win32_ShadowCopy | ? { $_.ID -eq $s1.ShadowID }
    $d = $s2.DeviceObject + "\"
    cmd /c mklink /d C:\shadowcopy_of_c "$d"

     

    • Auf Basis dieser Kopie wird die Code Integrity Policy erstellt und als xml Datei abgelegt:
    1
    New-CIPolicy -level PcaCertificate –fallback hash -filepath C:\CIPolicy.xml -scanpath C:\shadowcopy_of_c –u

    Dieser TechNet-Artikel beschreibt die Eigenschaften von „New-CIPolicy“:

    https://technet.microsoft.com/en-us/library/mt634473.aspx

    • Innerhalb der Policy sollte zu Debuggingzwecken der Audit Modus aktiviert werden:
    1
    Set-RuleOption –option 3 –FilePath C:\CIPolicy.xml

    Dieser TechNet-Artikel beschreibt die Eigenschaften von „Set-RuleOption“:

    https://technet.microsoft.com/en-us/library/mt634483.aspx

    • Das XML File muss nun in ein BIN File konvertiert werden:
    1
    ConvertFrom-CIPolicy C:\CIPolicy.xml C:\CIPolicy.bin
    • Der Installationsvorgang ist ein einfacher CopyJob:
    1
    Copy-Item -Path C:\CIPolicy.bin -Destination c:\Windows\System32\CodeIntegrity\SIPolicy.p7b
    • Neustart des Systems

    Nach dem Neustart kann man auf dem Testsystem die Policy testen. Dazu öffnet man den Event Viewer. Unter „Applications and services log“ –> „Microsoft“ –> „Windows“ –> „CodeIntegrity“ lassen sich die Informationen ablesen.

    Zu Testzwecken wurde eine Applikation gestartet, welche zuvor nicht im Golden System vorhanden war und aufgrund dessen nicht gestartet werden darf. Im Eventviewer findet sich nun folgender Eintrag:

    1
    2
    3
    Code Integrity determined that a process
    (\Device\HarddiskVolume2\temp\npp.6.8.8.Installer.exe) attempted to load \Device\HarddiskVolume2\Users\administrator.BORLAB\AppData\Local\Temp\nsr1071.tmp\LangDLL.dll that did not meet the Enterprise signing level requirements or violated code integrity policy. However,
    due to code integrity auditing policy, the image was allowed to load.

    Falls man nun den Audit Mode deaktiviert, wird die Anwendung nicht gestartet. Zur Deaktivierung des Audit Modes muss die vorhandene XML Datei bearbeitet werden.

    • Nachdem alle Tests abgeschlossen sind kann man den Audit Mode entfernen (Delete Parameter).
    1
    Set-RuleOption -FilePath C:\ CIPolicy.xml -Option 3 -Delete
    • Convert XML to Binary
    1
    ConvertFrom-CIPolicy -XmlFilePath C:\ CIPolicy.xml -BinaryFilePath C:\ CIPolicy.bin
    • Copy Binary
    1
    Copy-Item -Path C:\ CIPolicy.bin -Destination c:\Windows\System32\CodeIntegrity\SIPolicy.p7b

    Nach einem Neustart wird die Anwendung erneut gestartet:

    Um eine bestehenden „Golden Image“ Richtlinie zu aktualisieren, muss nicht unbedingt erneut ein vollständiger Systemscan ausgeführt werden, es können auch Policies zusammengefasst werden.

    Um also diese App in die Policy aufzunehmen, kann man nun auf Basis des Audit Logs eine neue Policy erstellen.

    1
    2
    3
    New-CIPolicy -Audit -Level Hash -FilePath C:\TRPolicy_Audit.xml –UserPEs 3> C:\CIPolicylog.txt
    Merge-CIPolicy -PolicyPaths C:\TRPolicy.xml, C:\TRPolicy_Audit.xml -OutputFilePath C:\TRPolicyMerged.xml

    Dieser TechNet-Artikel beschreibt die Eigenschaften von „Merge-CIPolicy“:

    https://technet.microsoft.com/en-us/library/mt634485.aspx

  • UEFI firmware Version 2.3.1 oder höher
  • Virtualisierungskomponenten (Intel VT-x oder AMD-V) und Second Level Address Translation (SLAT)
  • Firmware lock (Die Firmware verhindert in diesem Fall den Boot von anderen Betriebssystemen und Veränderungen in der UEFI Firmware. Zudem sollten alle anderen Bootoptionen deaktiviert werden.)
  • X64 System Architektur
  • IOMMU (Inout/output memory management unit) Komponente (Intel VT-d oder AMD-Vi)
  • Secure firmware update process

Warum sollte ich Device Guard einsetzen und warum nicht?

Der Device Guard bietet dem Unternehmen eine richtliniengesteuerte Möglichkeit sich vor Malware zu schützen. Traditionelle Methoden zum Schutz vor Malware waren zumeist signaturgesteuert, was allerdings keinen hundertprozentigen Schutz bietet. Microsoft hat mit dem Release vom Device Guard eine Möglichkeit bereitgestellt, mit der der Administrator exakt festlegt, welcher Code auf den Maschinen ausgeführt werden darf.

Ob man nun auf jedem System in seinem Unternehmen den Device Guard nutzen möchte, steht jedem frei. Der Device Guard ist nicht unbedingt empfehlenswert für Clients mit Konfigurationsaufwand und häufig wechselnden Softwareständen. Auf Kiosk Rechnern oder ATM’s sollte man allerdings den Einsatz in Betracht ziehen.

Funktionsweise

  • Der Systemstart wird durch UEFI Secure Boot geschützt. Diese Funktion schützt das System davor, dass Bootkits ausgeführt werden bevor Windows 10 gestartet wurde.
  • Nachdem die Windows 10 Bootkomponenten geladen wurden, werden die Hyper-V Sicherheitsbestandteile geladen. In Kombination mit „Kernel Mode Code Integrity“ (KMCI) wird der Systemkern (Kernel), die Treiber und die Anti-Malware Komponenten vor dem Befall von Schadcode geschützt, welcher in einem frühen Stadium des Bootprozesses, oder im Kernel, ausgeführt werden könnte.
  • Device Guard verhindert durch „User Mode Code Integrity“ (UMCI), dass sich Schadcode im Nutzerkontext (einschließlich Administrative User) ausführen lässt. Ausschließlich Code, welcher als vertrauenswürdig definiert wurde, kann geladen werden. Universal Apps werden von Windows 10 als sicher eingestuft. Um diese zu blockieren, kann man auf den AppLocker zurückgreifen.
  • Mit Hilfe der „Virtual Based Security” (VBS) und dem TPM wird eine virtuelle Instanz erzeugt (Isolated User Mode), welche besonders sicherheitskritische Komponenten des Systems schützt. Dazu zählen unter anderem Zertifikate und die Credentials (Credential Guard).

Konfiguration

Aktivierung der benötigten Windows Features

Die benötigten Betriebssystemkomponenten, welche aktiviert werden müssen, sind „Isolated User Mode“ und Hyper-V Hypervisor.

Natürlich lässt sich das Feature auch über die Kommandozeile aktivieren:

1
2
3
dism.exe /NoRestart /Online /Enable-Feature:IsolatedUserMode /All
dism.exe /NoRestart /Online /Enable-Feature:Microsoft-hyper-v-hypervisor /ALL

Konfiguration der Code Integritäts / Secure Boot Features

Man hat an dieser Stelle die Möglichkeit die Features über Group Policy oder Local über die Registry zu konfigurieren.

Deployment via Group-Policy

Deployment via Registry

Die folgenden Keys müssen in der Registry eingetragen werden:

HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard“

  • EnableVirtualizationBasedSecurity
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
  • RequirePlatformSecurityFeatures
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 2 /f
  • HypervisorEnforcedCodeIntegrity
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
Deployment via Configuration Manager

Um die Device Guard Settings via Configuration Manager an die Clients zu verteilen, erstellt man z.B. eine Task Sequenz:

  • Enable Isolated User Mode:
1
dism.exe /NoRestart /Online /Enable-Feature:IsolatedUserMode /All
  • Enable Virtualization Based Security:
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
  • Require Platform Security Features:
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 2 /f
  • Hypervisor Enforced Code Integrity:
1
reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
  • copy CI-Policy:
1
Kopieren der CI-Policy: Ziel %WinDir%\System32\CodeIntegrity
  • Restart Computer
Anzeige der Device Guard Systeme im Configuration Manager

Um Clients, die die Device Guard Settings aktiviert haben, muss man zunächst in der Configuration Manager Konsole die Client Settings bearbeiten und die „Hardware Discovery Settings“ anpassen. Dazu sind folgende Schritte nötig:

Zu Testzwecken kann man die Default Client Settings nutzen, in produktiven Systemen nutzt man eigenständige Client Settings.

Öffnen der Eigenschaften der Default Client Settings

Hardware Inventory –> Set Classes –> ADD

Klick „Connect“

  • Computer name:            System mit Windows 10 eintragen
  • WMI namespace:           root\Microsoft\Windows\DeviceGuard

Mit einem Klick auf Connect wird eine Verbindung zu der Maschine hergestellt. Bei Bedarf müssen noch Username und Kennwort angegeben werden.

An dieser Stelle den Eintrag „Win32_DeviceGuard“ anhaken und auf OK klicken.

Jetzt die Settings speichern.

Nachdem die geänderten Settings nun auf den Clients angewendet wurden, kann man nun im Ressource Explorer die DeviceGuard Konfiguration einsehen.

Als nächstes muss eine Collection angelegt werden. Diese zeigt die Clients an, welche die Settings anzeigt.

Edit Query Settings –> Show Query Language

An dieser Stelle folgende Query eintragen:

1
2
3
4
5
SELECT SMS_R_SYSTEM.ResourceID, SMS_R_SYSTEM.ResourceType, SMS_R_SYSTEM.Name, SMS_R_SYSTEM.SMSUniqueIdentifier, SMS_R_SYSTEM.ResourceDomainORWorkgroup, SMS_R_SYSTEM.Client
FROM SMS_R_System
INNER JOIN SMS_G_System_DEVICE_GUARD ON SMS_G_System_DEVICE_GUARD.ResourceId = SMS_R_System.ResourceId
WHERE (SMS_G_System_DEVICE_GUARD.AvailableSecurityProperties like "%1%"
 and SMS_G_System_DEVICE_GUARD.AvailableSecurityProperties like "%3%")

Die in der Query verwendeten Klasseneigenschaften von Win32_DeviceGuard werden in diesem Artikel beschrieben:

https://technet.microsoft.com/en-us/library/mt463091(v=vs.85).aspx#configure_hardware#

Konfiguration der Code Integritäts Richtlinien

Erstellung eines „Golden Systems“

Um eine Code Integritäts Richtlinie zu erstellen, nutzt man eine Maschine, die den aktuellen Softwarebestand besitzt. Zudem sollten keine Device Guard Komponenten aktiviert sein.

Die Erstellung erfolgt ausschließlich über PowerShell Commandlets, welche mit Windows 10 released wurden.

  • Erstellen einer Schattenkopie von Laufwerk C:
1
2
3
4
$s1 = (gwmi -List Win32_ShadowCopy).Create("C:\","ClientAccessible")
$s2 = gwmi Win32_ShadowCopy | ? { $_.ID -eq $s1.ShadowID }
$d  = $s2.DeviceObject + "\"
cmd /c mklink /d C:\shadowcopy_of_c "$d"

 

  • Auf Basis dieser Kopie wird die Code Integrity Policy erstellt und als xml Datei abgelegt:
1
New-CIPolicy -level PcaCertificate –fallback hash -filepath C:\CIPolicy.xml -scanpath C:\shadowcopy_of_c –u

Dieser TechNet-Artikel beschreibt die Eigenschaften von „New-CIPolicy“:

https://technet.microsoft.com/en-us/library/mt634473.aspx

  • Innerhalb der Policy sollte zu Debuggingzwecken der Audit Modus aktiviert werden:
1
Set-RuleOption –option 3 –FilePath C:\CIPolicy.xml

Dieser TechNet-Artikel beschreibt die Eigenschaften von „Set-RuleOption“:

https://technet.microsoft.com/en-us/library/mt634483.aspx

  • Das XML File muss nun in ein BIN File konvertiert werden:
1
ConvertFrom-CIPolicy C:\CIPolicy.xml C:\CIPolicy.bin
  • Der Installationsvorgang ist ein einfacher CopyJob:
1
Copy-Item -Path C:\CIPolicy.bin -Destination c:\Windows\System32\CodeIntegrity\SIPolicy.p7b
  • Neustart des Systems

Nach dem Neustart kann man auf dem Testsystem die Policy testen. Dazu öffnet man den Event Viewer. Unter „Applications and services log“ –> „Microsoft“ –> „Windows“ –> „CodeIntegrity“ lassen sich die Informationen ablesen.

Zu Testzwecken wurde eine Applikation gestartet, welche zuvor nicht im Golden System vorhanden war und aufgrund dessen nicht gestartet werden darf. Im Eventviewer findet sich nun folgender Eintrag:

1
2
3
Code Integrity determined that a process
(\Device\HarddiskVolume2\temp\npp.6.8.8.Installer.exe) attempted to load \Device\HarddiskVolume2\Users\administrator.BORLAB\AppData\Local\Temp\nsr1071.tmp\LangDLL.dll that did not meet the Enterprise signing level requirements or violated code integrity policy. However,
due to code integrity auditing policy, the image was allowed to load.

Falls man nun den Audit Mode deaktiviert, wird die Anwendung nicht gestartet. Zur Deaktivierung des Audit Modes muss die vorhandene XML Datei bearbeitet werden.

  • Nachdem alle Tests abgeschlossen sind kann man den Audit Mode entfernen (Delete Parameter).
1
Set-RuleOption -FilePath C:\ CIPolicy.xml -Option 3 -Delete
  • Convert XML to Binary
1
ConvertFrom-CIPolicy -XmlFilePath C:\ CIPolicy.xml -BinaryFilePath C:\ CIPolicy.bin
  • Copy Binary
1
Copy-Item -Path C:\ CIPolicy.bin -Destination c:\Windows\System32\CodeIntegrity\SIPolicy.p7b

Nach einem Neustart wird die Anwendung erneut gestartet:

Um eine bestehenden „Golden Image“ Richtlinie zu aktualisieren, muss nicht unbedingt erneut ein vollständiger Systemscan ausgeführt werden, es können auch Policies zusammengefasst werden.

Um also diese App in die Policy aufzunehmen, kann man nun auf Basis des Audit Logs eine neue Policy erstellen.

1
2
3
New-CIPolicy -Audit -Level Hash -FilePath C:\TRPolicy_Audit.xml –UserPEs 3> C:\CIPolicylog.txt
Merge-CIPolicy -PolicyPaths C:\TRPolicy.xml, C:\TRPolicy_Audit.xml -OutputFilePath C:\TRPolicyMerged.xml

Dieser TechNet-Artikel beschreibt die Eigenschaften von „Merge-CIPolicy“:

https://technet.microsoft.com/en-us/library/mt634485.aspx