CVE-2026-21671 : exécution de code à distance en cluster haute disponibilité dans Veeam Backup & Replication
HERMES THREAT SCORE ET RÉSILIENCE HAUTE DISPONIBILITÉ
Cible :Canaux de synchronisation des nœuds de cluster haute disponibilité (HA) Veeam Le score Hermes évalue la CVE-2026-21671 à 96 (CRITIQUE). Dans les architectures de sauvegarde en haute disponibilité, la CVE-2026-21671 permet à un attaquant contrôlant le nœud actif d'exécuter du code arbitraire sur l'ensemble des nœuds secondaires et de secours via les flux de synchronisation, anéantissant toute possibilité de bascule de secours.
CVE-2026-21671: Veeam Enterprise Manager Path Traversal Arbitrary File ReadVULNÉRABILITÉ
Software platform affected by security vulnerabilities and agentic attack patterns.
🔍 Pourquoi cette relation ? (Preuves & Provenance)
“Confirmed security vulnerability in Veeam Backup & Replication documented in Hermes dossier.”
- [vulnerability_report]
- [government_confirmation]CISA verified active exploitation in the wild and mandated federal remediation deadline in KEV entry. — Source : Cybersecurity & Infrastructure Security Agency (CISA): CISA Adds CVE-2026-59822 to Known Exploited Vulnerabilities Catalog (Fiabilité : VERY_HIGH)
1. Métadonnées et surface affectée
Section intitulée « 1. Métadonnées et surface affectée »| Paramètre | Spécification technique | Impact opérationnel |
|---|---|---|
| Identifiant CVE | CVE-2026-21671 | Identifiant mondial de suivi |
| Avis éditeur | Veeam KB4830 (v12) & KB4831 (v13) | Bulletins de sécurité multi-versions |
| Versions affectées | VBR 12.x < 12.3.2.4465 & 13.x < 13.0.1.2067 | Environnements en cluster HA |
| Versions corrigées | VBR 12.3.2.4465 & 13.0.1.2067 | Mises à niveau impératives |
| Canal vulnérable | Protocole de synchronisation des nœuds HA | Ports de battement de cœur et réplication |
| Privilèges requis | Administrateur de sauvegarde authentifié | Prise de contrôle préalable du nœud primaire |
| Périmètre d’exécution | NT AUTHORITY\SYSTEM sur les nœuds passifs | Destruction complète de la redondance |
2. Cause racine et mécanique d’exploitation
Section intitulée « 2. Cause racine et mécanique d’exploitation »La CVE-2026-21671 est causée par une désérialisation binaire non sécurisée associée à une absence de validation des méthodes RPC sur le canal de synchronisation interne du cluster HA.
Cinématique d'exploitation de la CVE-2026-21671 :
[Nœud primaire VBR compromis] │ │ 1. Injection d'un objet d'état forgé dans le flux de heartbeat ▼ [Canal de cluster chiffré (Port TCP 6180 / port HA dédié)] │ │ 2. Acheminement du flux binaire hostile vers le nœud secondaire ▼ [Nœud secondaire VBR en attente (Démon HA)] │ │ 3. Désérialisation du paquet d'état sans filtrage de types ▼ [Puits de désérialisation non sécurisé (CWE-502)] │ │ 4. Déclenchement de TypeConfuseDelegate / exécution de commande ▼ [Exécution avec privilèges NT AUTHORITY\SYSTEM sur le nœud secondaire] └── Prise de contrôle totale de l'infrastructure de secoursLe dilemme de confiance au sein du cluster de bascule
Section intitulée « Le dilemme de confiance au sein du cluster de bascule »Dans les architectures en haute disponibilité, les nœuds établissent des sessions mutuellement authentifiées par certificats pour échanger les différentiels de configuration et les files d’attente de travaux. Cependant, les nœuds secondaires accordent une confiance aveugle aux données provenant du nœud actif.
Le composant Veeam.Backup.ClusterService.exe utilisant des formateurs binaires .NET pour désérialiser les objets de gestion de cluster, un attaquant ayant pris le contrôle du serveur principal peut injecter une chaîne de gadgets .NET. Lorsque le nœud secondaire traite la mise à jour, il exécute la charge utile avec ses propres privilèges locaux SYSTEM, brisant l’étanchéité opérationnelle entre les deux sites.
3. Militarisation par rançongiciel et destruction de la redondance
Section intitulée « 3. Militarisation par rançongiciel et destruction de la redondance »Lors des attaques de rançongiciel d’entreprise (menées par des groupes comme Akira ou BlackCat/ALPHV), les clusters de sauvegarde sont expressément configurés pour pallier la destruction du site principal. La CVE-2026-21671 neutralise cette stratégie de résilience :
- Pivot latéral vers les enclaves isolées : le nœud de secours se situe souvent dans un centre de données secondaire distant ou un VLAN étanche. L’attaquant utilise le port de cluster légitime déjà autorisé au pare-feu pour franchir cette frontière réseau.
- Effacement synchronisé : l’assaillant déclenche des ordres de destruction synchronisés sur les deux nœuds, interdisant toute bascule vers un environnement préservé.
4. Ingénierie de détection
Section intitulée « 4. Ingénierie de détection »title: Lancement anormal de processus par le service de cluster Veeamid: d72a4819-2f51-4e12-8812-cve-2026-21671-cluster-frstatus: productiondescription: Détecte l'exécution d'interpréteurs de commandes engendrés par le démon de cluster Veeam HA, révélant une exploitation de la CVE-2026-21671.references: - https://www.veeam.com/kb4830 - https://www.veeam.com/kb4831author: Hermes Codex DFIR Labdate: 2026-09-09logsource: category: process_creation product: windowsdetection: selection_parent: ParentImage|endswith: - '\Veeam.Backup.ClusterService.exe' - '\VeeamHA.exe' selection_child: Image|endswith: - '\cmd.exe' - '\powershell.exe' - '\pwsh.exe' - '\net.exe' - '\whoami.exe' condition: selection_parent and selection_childlevel: criticaltags: - attack.execution - attack.t1059 - attack.lateral_movement - attack.t1210 - cve.2026-21671// Microsoft Sentinel KQL : détection de flux de synchronisation anormaux sur les ports de cluster Veeam HAlet ClusterNodes = dynamic(["10.100.50.10", "10.100.50.11"]); // IP des nœuds actif et passifDeviceNetworkEvents| where RemotePort in (6180, 6181) or LocalPort in (6180, 6181)| where not(LocalIP in (ClusterNodes) and RemoteIP in (ClusterNodes))| summarize SuspiciousConnections = count(), StartTime = min(Timestamp), EndTime = max(Timestamp), SourceIPs = make_set(LocalIP) by RemoteIP, RemotePort, InitiatingProcessFileName| where SuspiciousConnections > 0# Règle Suricata : détection de charge de désérialisation sur le port de cluster Veeam HAalert tcp $VEEAM_PRIMARY any -> $VEEAM_SECONDARY 6180 ( \ msg:"HERMES DEFENSE - Tentative d'exploitation par désérialisation Veeam CVE-2026-21671 HA"; \ flow:to_server,established; \ content:"|00 00 00 00 00 00 00 00 00 01 00 00 00|"; depth:32; \ content:"TypeConfuseDelegate"; nocase; distance:0; \ classtype:attempted-admin; \ sid:102621671; rev:1; \ metadata:cve CVE-2026-21671, confidence high;)5. Durcissement défensif et remédiation
Section intitulée « 5. Durcissement défensif et remédiation »- Appliquer les correctifs KB4830 / KB4831 : Mettre à niveau tous les nœuds de cluster vers la version 12.3.2.4465 ou 13.0.1.2067. Le correctif met fin à la désérialisation binaire non vérifiée sur les échanges d’état.
- Micro-segmenter strictement les canaux de cluster : Verrouiller les ports de communication HA pour n’autoriser que les liaisons point-à-point exclusives entre les adresses IP validées des membres du cluster.
- Déployer des dépôts immuables Linux (LHR) indépendants : Garantir que le stockage physique des sauvegardes repose sur des dépôts immuables hors cluster, préservés en cas de compromission totale de l’infrastructure Windows VBR.