Windows 11-premier laboratoire éducatif pour l'étude de CVE-2025-1974 dans ingress-nginx. Fournit une émulation d'attaque sécurisée et une validation de défense avec un cluster Kubernetes local, une évaluation de version et une génération de rapports pour les travaux pratiques et les démonstrations.
Premier référentiel pédagogique pour Windows 11 dédié à l'étude de CVE-2025-1974 dans un laboratoire ATTAQUE + DÉFENSE sécurisé et non armé. Le projet est conçu pour les travaux universitaires, les démonstrations en équipe et les captures d'écran prêtes pour les rapports. Il met l'accent sur une implémentation en environnement vierge, une validation locale uniquement et une émulation d'attaque de type red-team qui ne devient jamais un véritable exploit.
Ce laboratoire encode la base officielle selon laquelle CVE-2025-1974 affecte ingress-nginx, avec les versions concernées < 1.11.0, 1.11.0 à 1.11.4, et 1.12.0 ; les versions corrigées sont 1.11.5, 1.12.1 et versions ultérieures. Il reflète également l'atténuation temporaire officielle consistant à désactiver le Validating Admission Controller jusqu'à ce qu'une mise à niveau soit effectuée.
Ce dépôt n'implémente, ne porte ni n'opérationnalise intentionnellement pas de code d'exploitation. Au lieu de cela, il fournit un émulateur de flux d'attaque sûr qui démontre les étapes qu'un défenseur raisonnerait :
Le chemin d'attaque est représenté uniquement à l'aide de correctifs assainis, d'état local et de marqueurs d'étape du simulateur. Aucune charge utile malveillante AdmissionReview, charge utile d'exécution de code, shell, injection de configuration ou mécanisme de livraison d'exploit n'est inclus.
flowchart LR
A["PowerShell Wrappers<br/>Windows 11-first UX"] --> B["Python CLI<br/>app.main"]
B --> C["Preflight Checks<br/>Windows, Docker, kubectl, kind, Python 3.11"]
B --> D["Cluster Assessment<br/>kind + kubectl on localhost"]
B --> E["Attack Simulator<br/>sanitized fixtures only"]
B --> F["Mitigation Checks<br/>version + admission state"]
B --> G["Detections<br/>lab-specific simulated indicators"]
E --> H["reports/attack_simulation.log"]
F --> I["reports/defense_scan.json"]
G --> J["reports/timeline.csv + timeline.json"]
H --> K["Markdown Report Writer"]
I --> K
J --> K
K --> L["reports/latest-report.md"]Voie A : Émulation d'attaque
Exécute un simulateur adapté aux captures d'écran qui se comporte comme un flux de travail d'attaquant sans effectuer d'exploitation.Voie B : Validation défensive
Effectue de véritables vérifications locales sur un cluster de laboratoire jetable et évalue la posture de version et d'atténuation.Priorité Windows 11
Chaque flux de travail majeur dispose d'un wrapper PowerShell et d'un équivalent en ligne de commande Python 3.11.Rapports
Génère des transcriptions Markdown, JSON, CSV et console adaptées aux soumissions de cours et aux démonstrations.kubectlkindpwsh ./scripts/setup-win11.ps1
pwsh ./scripts/start-lab.ps1
pwsh ./scripts/run-defend-scan.ps1
pwsh ./scripts/run-attack-sim.ps1
pwsh ./scripts/generate-report.ps1
python -m app.main preflight
python -m app.main defend-scan
python -m app.main attack-sim
python -m app.main report
python -m app.main cleanup
pwsh ./scripts/setup-win11.ps1
pwsh ./scripts/start-lab.ps1
pwsh ./scripts/run-attack-sim.ps1
pwsh ./scripts/run-defend-scan.ps1
pwsh ./scripts/generate-report.ps1
pwsh ./scripts/cleanup.ps1
============================================================
CVE-2025-1974 Windows 11 Attack + Defense Lab
============================================================
[PRECHECK] Windows 11 assumptions .............. PASS
[PRECHECK] Docker Desktop ...................... PASS
[PRECHECK] kubectl ............................. PASS
[PRECHECK] kind ................................ PASS
[PRECHECK] Python 3.11 ......................... PASS
[SCAN] Cluster name: cve-2025-1974-lab
[SCAN] ingress-nginx detected .................. YES
[SCAN] Controller version ...................... 1.11.4
[SCAN] Validating Admission Controller ......... ENABLED
[SCAN] Version assessment ...................... AFFECTED
[SCAN] Risk summary ............................ Upgrade to 1.11.5+ or 1.12.1+ and disable admission until upgraded.
[SIM] ATTACK_PATH_IDENTIFIED
[SIM] VALIDATION_PATH_REACHED
[SIM] DEFENSE_MISSING
[SIM] SIMULATED_RISK_CONFIRMED
[REPORT] Markdown report written to reports/latest-report.md
Le flux d'émulation d'attaque est intentionnellement non armé :
ingress-nginx semble présent.ATTACK_PATH_IDENTIFIED et SIMULATED_RISK_CONFIRMED.MITIGATION_PRESENT, ATTACK_PATH_BLOCKED et UPGRADE_REQUIRED.reports/.Le flux de validation défensive est autorisé à effectuer de véritables vérifications locales :
kind local uniquement nommé cve-2025-1974-lab.ingress-nginx est présent et tenter de déduire la version à partir des images de déploiement.pwsh ./scripts/cleanup.ps1
Cette commande supprime le cluster kind jetable s'il est présent et efface les artefacts de rapport générés tout en préservant la structure du dépôt.
kubectl et l'état local du cluster.Ce projet fait conceptuellement référence au dépôt public zulloper/CVE-2025-1974 par l'utilisateur GitHub @zulloper pour une étude historique/contextuelle uniquement. Aucun code offensif n'a été copié dans ce dépôt.
Remerciements à Nir Ohfeld, Ronen Shustin, Sagi Tzadik et Hillai Ben-Sasson de Wiz pour avoir divulgué les vulnérabilités de manière responsable, comme cela est reconnu dans les documents officiels de Kubernetes.
Ce dépôt est un laboratoire pédagogique indépendant en environnement vierge pour Windows 11 et n'est ni affilié ni approuvé par @zulloper, Wiz, Kubernetes ou les mainteneurs d'ingress-nginx.