Aller au contenuAller à l'arborescence
  1. C:
  2. Windows
  3. System32
  4. CodeIntegrity
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.

Mis à jour le Par AltF4 Formation

À 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é.
  • CodeIntegrity fait partie de la chaîne de sécurité : restreignez-en les droits d’écriture.

Commandes utiles

Fenêtre de terminal
# Lister les stratégies de contrôle d'application présentes
Get-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

Signaler une erreur