DossierRisque : Ne pas toucher
CodeIntegrity C:\Windows\System32\CodeIntegrity
C:\Windows\System32\CodeIntegrity : stratégies App Control (WDAC) appliquées (SiPolicy.p7b, CiPolicies\Active) et fichiers de l'intégrité du code.
À quoi ça sert
CodeIntegrity est le dossier de l’intégrité du code, la fonction qui vérifie les signatures des pilotes et des binaires. C’est là que Windows lit les stratégies App Control for Business (anciennement WDAC) appliquées : SiPolicy.p7b pour une stratégie au format unique, et CiPolicies\Active pour les stratégies au format multiple (fichiers {GUID}.cip).
Ce qu’il contient
SiPolicy.p7b: la stratégie unique, si ce format est utilisé.CiPolicies\Active\{GUID}.cip: les stratégies multiples, au format binaire.- Des copies de stratégies existent aussi sur la partition système EFI.
Risques et bonnes pratiques
- Ne retirez pas une stratégie en supprimant son fichier : suivez la procédure de suppression de Microsoft, faute de quoi le démarrage peut être bloqué. Sur un système récent,
CiTool.exe --remove-policy <GUID>fait le travail. - Déployez les stratégies par GPO, MDM ou
CiTool, et testez-les d’abord en mode audit. - Pour comprendre un blocage, lisez le journal
Microsoft-Windows-CodeIntegrity/Operational: l’événement 3077 signale un blocage appliqué, le 3076 un blocage qu’une stratégie en audit aurait prononcé. CodeIntegrityfait partie de la chaîne de sécurité : restreignez-en les droits d’écriture.
Commandes utiles
# Lister les stratégies de contrôle d'application présentesGet-ChildItem -Force "$env:windir\System32\CodeIntegrity" -Recurse -ErrorAction SilentlyContinue | Select-Object FullName, Length, LastWriteTime
# Lister les stratégies actives avec l'outil CiTool (Windows 11 et versions récentes)CiTool.exe --list-policies
# Blocages (3077) et blocages simulés en audit (3076)Get-WinEvent -FilterHashtable @{ LogName = 'Microsoft-Windows-CodeIntegrity/Operational'; Id = 3076, 3077 } -MaxEvents 20 | Select-Object TimeCreated, Id, Message