🇺🇸 🇬🇧 English Version README-ENGLISH.md
CyberArk Hardening Checker est un moteur modulaire permettant de vérifier automatiquement la conformité et le durcissement des différents composants CyberArk :
- 🟦 Windows / Baseline Systèmes
- 🟩 PVWA
- 🟧 CPM
- 🟨 PSM
- 🟪 Vault
Il permet d’automatiser les vérifications issues :
- des scripts de hardening CyberArk,
- des bonnes pratiques Windows Server,
- des recommandations cryptographiques SCHANNEL, IIS, RDP, AppLocker.
Toutes les règles sont sous forme JSON versionnables, faciles à maintenir et à enrichir.
➡️ Voir la documentation complète des règles : RULES.md
Chaque règle est un fichier simple et autonome comme :
{
"id": "CPM-001",
"title": "CPM service running",
"description": "Central Policy Manager service running",
"type": "service",
"appliesTo": ["CPM"],
"severity": "critical",
"serviceName": "CyberArk Central Policy Manager",
"expectedStatus": "Running",
"tags": ["cpm"]
}CyberArkHardeningChecker/
├── src/
│ ├── HardeningChecker.ps1 # Script principal
│ └── RuleEngine.psm1 # Moteur de règles
├── rules/
│ ├── WINDOWS/
│ ├── PVWA/
│ ├── CPM/
│ ├── PSM/
│ └── VAULT/
├── LICENSE
├── RULES.md
└── README.md
git clone https://github.com/PierreChrd/CyberArkHardeningChecker.git
cd CyberArkHardeningChecker/srcGet-ChildItem -Recurse | Unblock-Filepowershell.exe -ExecutionPolicy Bypass -File .\HardeningChecker.ps1./HardeningChecker.ps1 -Output Html,Json./HardeningChecker.ps1 -ListRules./HardeningChecker.ps1 -ListRulesCsv "./rules.csv"./HardeningChecker.ps1 -ComponentProfile PSM./HardeningChecker.ps1 -IncludeTags tls,rdp| Type | Description |
|---|---|
service |
Vérifie état d’un service Windows (Running/Stopped) |
registry |
Vérifie une valeur de registre (SCHANNEL, RDP, LSA…) |
command |
Exécute une expression PowerShell retournant True/False |
iisBinding |
Vérifie présence d’un binding IIS (HTTPS) |
iisAppPool |
Vérifie l’état d’un AppPool |
port |
Vérifie qu’un port est ouvert localement |
(Section en travaux)
[ SCORE GLOBAL : 89% ]
- 8 règles critiques OK
- 2 règles critiques FAIL
- 12 règles medium OK
- 4 règles skipped (non applicables)
Les contributions sont les bienvenues :
✔️ nouvelles rules
✔️ optimisations du moteur
✔️ documentation
Merci de respecter la structure :
- une règle = un fichier JSON
- ID unique (CPM-XXX / PVWA-XXX, etc.)
- tags pertinents
- severité cohérente
Projet sous licence MIT.
✨ Créé par Pierre Chaussard — pour automatiser le durcissement CyberArk.