Offre Durée limitée : -10% sur tout le site* avec le code WELCOME10

CVE-2026-97631 : faille UEFI critique dans le boot PXE, exécution de code avant Secure Boot

Publié le 29 octobre 2026 14 min de lecture 12 sections

Le 22 octobre 2026, TianoCore a publié un advisory de sécurité critique pour EDK II, l'implémentation UEFI de référence utilisée par la quasi-totalité des firmwares de serveurs physiques (AMI, Insyde, Phoenix) et par le firmware virtuel OVMF des machines virtuelles Proxmox, VMware ESXi et QEMU/KVM. La vulnérabilité CVE-2026-97631, classée CVSS v4.0 9.5/10 (critique), est un buffer overflow dans le driver de boot réseau PXE (UefiPxeBcDxe). Un attaquant présent sur le réseau local envoie un paquet ICMP surdimensionné vers l'adresse IP d'une machine serveur en cours de démarrage PXE et exécute du code arbitraire en mémoire RAM avant même que Secure Boot ne s'active. Un proof-of-concept public existe déjà. Tout administrateur de serveur dédié utilisant le boot réseau, ou de serveurs virtuels Proxmox avec firmware OVMF, doit vérifier son exposition et appliquer le correctif ou le contournement décrits ci-dessous.

Source : advisory TianoCore GHSA-99cj-7hg9-mp4m (22 octobre 2026).

Comprendre la faille CVE-2026-97631

Le composant vulnérable est le driver PXE Base Code (NetworkPkg/UefiPxeBcDxe), chargé par le firmware UEFI lorsqu'une machine serveur tente un démarrage par le réseau (PXE boot). Ce driver écoute les messages d'erreur ICMP pendant le boot réseau et les copie dans un champ fixe de 504 octets (Mode.IcmpError) en RAM. Le problème se situe dans deux fonctions :

  • PxeBcIcmpErrorDpcHandle pour IPv4 ;
  • PxeBcIcmp6ErrorDpcHandle pour IPv6.

La vérification de la taille est défectueuse : le pointeur de destination avance selon la longueur cumulée des fragments reçus, et non selon la longueur individuelle de chaque fragment. Un message ICMP dépassant 504 octets provoque une écriture hors limites (out-of-bounds write) dans la mémoire RAM de la phase DXE, la phase d'initialisation du firmware qui précède le chargement du système d'exploitation. Les faiblesses associées sont CWE-120 (copie sans vérification de taille), CWE-131 (calcul incorrect de la taille du buffer) et CWE-787 (écriture hors limites).

Les conséquences sont doubles. Un attaquant sans authentification, positionné sur le même segment réseau, peut :

  • Déni de service : corrompre la mémoire RAM du firmware, provoquer une exception sur le processeur et bloquer le démarrage de la machine. La machine serveur ne boot plus tant que le PXE reste actif dans le BIOS.
  • Exécution de code pré-boot : avec une connaissance du firmware cible (version du BIOS, agencement mémoire), planter du code en ring 0 sur le processeur dans la phase DXE, avant que Secure Boot ou le Measured Boot (TPM) n'ait vérifié ou mesuré le moindre composant du système d'exploitation. C'est une compromission root en dessous de toute protection logicielle : le firewall du système, les droits sudo, le chiffrement de l'espace disque ne servent à rien si l'attaquant contrôle le firmware.

La faille est présente dans EDK II depuis plus de seize ans. La fenêtre d'exploitation est limitée à la durée du boot PXE : l'attaque ne fonctionne que pendant que la machine démarre activement par le réseau.

Tableau comparatif : environnements exposés et non exposés

Tous les types de serveurs ne sont pas concernés de la même manière. Le tableau ci-dessous résume l'exposition selon l'environnement que vous administrez :

EnvironnementFirmwarePXE actif par défautExposéAction
Serveur dédié bare-metal (Dell, HPE, Supermicro)UEFI basé EDK II (AMI, Insyde, Phoenix)Souvent ouiOuiDésactiver le PXE dans le BIOS ou attendre la mise à jour firmware du constructeur
Machine virtuelle Proxmox (OVMF)OVMF (EDK II)Non, sauf si net0 dans l'ordre de bootOui si PXE actifRetirer net0 du boot order, mettre à jour pve-edk2-firmware
Machine virtuelle VMware ESXi (UEFI)OVMF/EFI VMware (basé EDK II)Non par défautOui si PXE actifDésactiver le PXE dans les options VM, appliquer le patch ESXi
Machine virtuelle avec SeaBIOS (BIOS legacy)SeaBIOS (non EDK II)VariableNonAucune action requise pour cette CVE
VPS Linux ou VPS Windows (hébergement mutualisé ou VPS classique)Géré par l'hébergeurNonNon directementL'hébergeur gère le hardware et le firmware
Serveur en housing (data center)UEFI basé EDK IISouvent oui (provisioning)OuiConfigurer le BIOS : désactiver le PXE après déploiement
Cluster de provisioning PXEUEFI basé EDK IIOui (par conception)OuiSegmenter le réseau PXE, planifier la migration firmware

Qui est concerné : serveurs dédiés, Proxmox, VMware et environnements PXE

Quatre profils d'administrateurs sont directement exposés :

  • Serveurs physiques avec boot PXE actif : les serveurs dédiés en data center utilisent souvent le boot PXE pour le déploiement automatisé (installation du système d'exploitation via le réseau, re-provisioning). Si le firmware UEFI de la machine serveur est basé sur EDK II (ce qui est le cas de la majorité des cartes mères avec processeurs Intel Xeon ou AMD EPYC), le driver PXE est vulnérable. Le vecteur d'attaque est le réseau local du data center : un paquet ICMP envoyé vers l'adresse IP de la machine pendant le boot suffit.
  • Machines virtuelles Proxmox avec firmware OVMF : sur un serveur dédié sous Proxmox VE, les VM configurées avec le firmware OVMF (UEFI) au lieu de SeaBIOS sont concernées si le boot PXE est actif dans l'ordre de démarrage de la machine virtuelle. Le paquet pve-edk2-firmware fournit le firmware OVMF sur Proxmox. Chaque serveur virtuel utilisant OVMF doit être vérifié.
  • VMware ESXi et vSphere : les machines virtuelles configurées en mode UEFI sur un hôte VMware ESXi utilisent également un firmware dérivé d'EDK II. Si le boot PXE est actif dans les options de la VM, la faille s'applique. VMware publie ses propres correctifs via les bulletins de sécurité vSphere. Les administrateurs doivent consulter les advisories VMware et configurer le boot de chaque VM pour retirer le PXE inutilisé.
  • Tout environnement PXE : serveurs bare-metal avec iDRAC, iLO ou IPMI configurés pour le boot réseau, clusters de provisioning, salles serveur en housing avec infrastructure de déploiement PXE dans le data center.

Les serveurs VPS Linux et les VPS Windows en hébergement standard ne sont en général pas concernés directement : le firmware du VPS est géré par l'hébergeur, et la plupart des VPS ne démarrent pas en PXE en production. Il en va de même pour l'hébergement mutualisé et les offres d'infogérance : le hardware et le firmware sont sous la responsabilité du prestataire. Toutefois, si vous administrez l'infrastructure de virtualisation elle-même (l'hôte Proxmox ou ESXi), le firmware OVMF de vos machines virtuelles est sous votre responsabilité.

Ce qu'un attaquant peut compromettre sur le serveur

Une exécution de code au niveau du firmware, avant le chargement du système d'exploitation, donne à l'attaquant un accès root invisible à tout ce qui tourne sur la machine serveur. Contrairement à une faille applicative, il n'y a aucun log, aucune alerte et aucun firewall capable de détecter ou bloquer l'intrusion. Voici ce qui est en danger :

  • Serveur web et applications : Apache, Nginx, reverse proxy, l'ensemble de la pile applicative. Un attaquant pré-boot peut modifier les binaires du serveur web ou injecter un backdoor avant même le premier accès.
  • Bases de données : MySQL, MariaDB, PostgreSQL. Les données clients, les comptes utilisateurs, les sauvegardes (backup) stockées sur l'espace disque local sont exposées.
  • Services réseau : serveur DNS, serveur FTP, VPN (WireGuard, OpenVPN). Un détournement DNS au niveau firmware peut rediriger le trafic des noms de domaine hébergés vers un serveur tiers sans laisser de trace dans les journaux système.
  • Clés et certificats : les clés SSH, les certificats TLS, les secrets d'API stockés sur le serveur. L'attaquant peut voler les clés avant que le chiffrement de l'espace disque ne soit déverrouillé.
  • Machines virtuelles co-hébergées : sur un hôte de virtualisation, une compromission firmware permet potentiellement d'accéder à la RAM de toutes les VM hébergées sur le même serveur physique, quelle que soit leur isolation logicielle.

En résumé : si vous faites tourner un serveur dédié qui héberge des services critiques (serveur web, bases de données, noms de domaine, VPN), une compromission firmware rend caduques toutes les protections logicielles que vous avez configurées, du firewall au chiffrement en passant par les droits sudo.

Vérifier la version d'OVMF sur Proxmox

Sur un hôte Proxmox, le firmware OVMF est fourni par le paquet pve-edk2-firmware. Connectez-vous en SSH à l'hôte Proxmox (pas à une machine virtuelle) et vérifiez la version installée :

dpkg -l pve-edk2-firmware

Notez le numéro de version affiché. Vérifiez ensuite si une mise à jour est disponible dans les dépôts Proxmox :

sudo apt update && apt list --upgradable 2>/dev/null | grep edk2

Si une version plus récente apparaît, elle intègre potentiellement le correctif. Pour confirmer, consultez le changelog du paquet :

apt changelog pve-edk2-firmware 2>/dev/null | head -30

Recherchez une mention de CVE-2026-97631 ou de la correction du buffer overflow dans UefiPxeBcDxe. Au moment de la publication de cet article (29 octobre 2026), le correctif a été fusionné dans la branche de développement d'EDK II par TianoCore le 15 octobre 2026, mais aucune release stable d'EDK II ne l'intègre encore. Les distributeurs (Proxmox, Debian, Ubuntu) publient leurs propres paquets selon leur calendrier de sécurité.

Pour identifier quelles machines virtuelles utilisent le firmware OVMF sur votre hôte :

grep -rl "ovmf" /etc/pve/qemu-server/*.conf

Les fichiers retournés correspondent aux VM avec firmware UEFI/OVMF. Vérifiez dans chaque fichier de configuration si le boot PXE est actif :

grep "boot:" /etc/pve/qemu-server/*.conf

Une ligne contenant n dans l'ordre de boot (par exemple boot: order=scsi0;net0 ou boot: cdn dans l'ancien format) indique que le boot réseau est actif pour cette machine virtuelle. Notez aussi la quantité de RAM allouée à chaque VM (memory:) : une VM avec beaucoup de RAM offre un espace plus large pour l'exploitation du buffer overflow.

Vérifier l'exposition sur VMware ESXi

Sur un hôte VMware ESXi ou vSphere, les machines virtuelles configurées en mode UEFI (par opposition au BIOS legacy) utilisent un firmware dérivé d'EDK II. Pour vérifier si une VM a le boot PXE actif, ouvrez les paramètres de la VM dans le client vSphere, puis Boot Options. Si "EFI Network" ou "PXE" figure dans l'ordre de démarrage, la VM est exposée.

En ligne de commande sur l'hôte ESXi, listez les fichiers de configuration des VM :

find /vmfs/volumes/ -name "*.vmx" -exec grep -l "firmware.*efi" {} \;

Puis, pour chaque fichier VMX retourné, vérifiez le paramètre de boot réseau :

grep "bios.bootOrder\|ethernet.*pxe" /vmfs/volumes/datastore1/ma-vm/ma-vm.vmx

VMware publie ses correctifs firmware via les bulletins de sécurité vSphere. Consultez le portail VMware Security Advisories pour suivre la disponibilité du patch. En attendant, la migration du boot de chaque machine virtuelle vers le disque local uniquement constitue le meilleur contournement.

Appliquer le correctif EDK2

Le correctif modifie les deux fonctions de traitement ICMP pour vérifier correctement les limites du buffer avant chaque copie. Les paquets ICMP surdimensionnés sont désormais tronqués proprement lorsque le buffer de 504 octets est plein, empêchant toute écriture hors limites en RAM.

Sur Proxmox VE : dès que le paquet pve-edk2-firmware corrigé est disponible dans les dépôts, appliquez la mise à jour :

sudo apt update && sudo apt upgrade -y pve-edk2-firmware

Après la mise à jour du paquet, le nouveau firmware OVMF ne sera chargé que lors du prochain démarrage de chaque machine virtuelle. Un arrêt complet suivi d'un redémarrage de la VM est nécessaire (un simple reboot depuis l'intérieur de la VM ne recharge pas le firmware UEFI). Planifiez cette opération en dehors des heures de pointe. La flexibilité de Proxmox permet de redémarrer les VM une par une, sans interrompre le serveur physique.

Sur un serveur physique : le correctif doit être intégré par le fabricant de la carte mère dans une mise à jour du BIOS/UEFI. Consultez le site du constructeur (Dell, HPE, Supermicro, Lenovo) pour vérifier si un nouveau firmware est disponible pour votre modèle de hardware. Avant toute mise à jour, faites un backup complet de vos données et configurations. Si vous administrez un serveur dédié, documentez la version actuelle du BIOS, les processeurs installés et planifiez la migration firmware dans votre calendrier de maintenance.

Sur VMware ESXi : surveillez les bulletins de sécurité VMware. La mise à jour du firmware des VM UEFI passe par un patch ESXi ou une mise à jour du bundle OVMF fourni par VMware. Après application, un cycle complet arrêt/démarrage (pas un simple reboot) de chaque machine virtuelle concernée est nécessaire.

Contournement : désactiver le boot PXE inutilisé

La mitigation la plus simple et la plus efficace consiste à désactiver le boot PXE sur toute machine qui n'en a pas besoin. La majorité des serveurs en production démarrent depuis un disque local (SSD, NVMe) : le boot réseau n'est utilisé que pendant le provisioning initial. Désactiver un service inutilisé est une bonne pratique de sécurité indépendamment de cette CVE : chaque composant hardware ou logiciel actif au démarrage élargit la surface d'attaque.

Sur Proxmox (VM OVMF) : retirez l'interface réseau de l'ordre de démarrage de la machine virtuelle. Dans l'interface web Proxmox, sélectionnez la VM, puis Options, puis Boot Order. Décochez net0 (ou tout périphérique réseau) et ne conservez que le disque local. En ligne de commande :

qm set <vmid> --boot order=scsi0

Remplacez <vmid> par l'identifiant de votre machine virtuelle et scsi0 par le nom de votre disque de boot. Cette modification prend effet au prochain démarrage de la VM.

Sur un serveur physique (BIOS/UEFI) : accédez au setup UEFI du serveur (généralement F2 ou Suppr au démarrage, ou via l'interface iDRAC/iLO/IPMI à distance) et désactivez le boot PXE (appelé aussi "Network Boot", "PXE Boot" ou "UEFI Network Stack") pour toutes les interfaces réseau. Configurez l'ordre de boot pour démarrer uniquement depuis le disque local. Si vous avez besoin du boot PXE ponctuellement pour réinstaller un serveur, activez-le uniquement le temps du déploiement, puis désactivez-le immédiatement après.

Sur VMware ESXi : dans les paramètres de chaque machine virtuelle, éditez les Boot Options et retirez "EFI Network" de la séquence de démarrage. Ne conservez que le disque virtuel.

Cette mesure supprime complètement le vecteur d'attaque : si le driver PXE n'est pas chargé au démarrage, la faille ne peut pas être exploitée. Réduire la surface d'attaque fait partie des premiers réglages à appliquer sur tout serveur dédié.

Mesures complémentaires pour sécuriser votre infrastructure

Au-delà de cette CVE, les bonnes pratiques de sécurité limitent l'exposition aux failles firmware sur les serveurs physiques et les serveurs virtuels :

  • Segmentation réseau et firewall : isolez le réseau de provisioning PXE du réseau de production avec un firewall dédié. Sur un serveur dédié avec pfSense dans une VM Proxmox, configurez un VLAN dédié au déploiement PXE, inaccessible depuis les VM de production. Le réseau PXE ne doit jamais être exposé sur le même segment que le serveur web, le serveur DNS ou le VPN.
  • VPN pour l'administration : accédez à vos consoles d'administration (Proxmox, ESXi, iDRAC) uniquement via un tunnel VPN ou un proxy d'accès sécurisé, jamais directement depuis Internet. Cela limite la surface d'attaque réseau.
  • Mises à jour automatiques : automatisez les mises à jour de sécurité sur vos serveurs pour appliquer les correctifs dès que votre distribution les publie.
  • Backup avant mise à jour firmware : avant toute migration de version BIOS ou OVMF, sauvegardez vos données et configurations vers un serveur distant. Incluez les fichiers de configuration des VM, les dumps MySQL et les exports DNS.
  • Inventaire hardware et firmware : documentez les versions de BIOS, d'OVMF et les modèles de processeurs de chaque serveur physique et machine virtuelle. Un inventaire à jour permet de réagir rapidement quand un correctif est publié. Notez aussi la RAM installée, l'espace disque et la configuration réseau (adresses IP, VLAN).
  • Bare-metal vs VPS : si vous hésitez entre administrer votre propre hardware ou opter pour un VPS ou un serveur dédié, gardez en tête que la gestion firmware (BIOS, UEFI, OVMF) fait partie intégrante de la responsabilité d'un serveur physique. Sur un VPS, cette couche est gérée par l'hébergeur.

Chronologie et crédits

DateÉvénement
~2010Introduction du code vulnérable dans EDK II (driver PXE Base Code)
15 octobre 2026Correctif fusionné dans la branche de développement d'EDK II
22 octobre 2026Publication de l'advisory GHSA-99cj-7hg9-mp4m et attribution du CVE-2026-97631
29 octobre 2026Aucune release stable d'EDK II ne contient encore le correctif

La vulnérabilité a été découverte et signalée par Alex Matrosov (Anthropic) et Dan Holmes-Mitra (Google).

Questions fréquentes sur CVE-2026-97631

Retrouvez ci-dessous les réponses aux questions les plus courantes des administrateurs de serveurs dédiés et de machines virtuelles concernant cette faille UEFI.

Conclusion

CVE-2026-97631 est une faille critique du firmware UEFI qui permet l'exécution de code avant Secure Boot sur toute machine démarrant en PXE avec un firmware basé sur EDK II. Que vous administriez un serveur physique en data center, des serveurs virtuels sous Proxmox ou des VM sous VMware ESXi, l'enjeu est le même : un attaquant qui compromet le firmware accède à tout ce qui tourne sur le serveur, du serveur web aux bases de données MySQL en passant par le DNS et le VPN, sans que le firewall ou les protections logicielles ne puissent intervenir.

Le correctif a été fusionné dans le dépôt edk2 mais n'est pas encore disponible dans une release stable. En attendant les mises à jour de firmware de votre constructeur ou du paquet pve-edk2-firmware pour Proxmox, la mesure la plus efficace est de configurer chaque machine pour désactiver le boot PXE inutilisé. Si vous hébergez des services critiques sur un serveur dédié ou une infrastructure Proxmox, vérifiez l'exposition de vos machines avec les commandes décrites dans cet article et appliquez le contournement sans délai.

FAQ

Qu'est-ce que CVE-2026-97631 ?

CVE-2026-97631 est une vulnérabilité critique (CVSS v4.0 9.5) dans le driver PXE Base Code d'EDK II, l'implémentation UEFI de référence. Un buffer overflow dans le traitement des messages d'erreur ICMP pendant le boot réseau permet à un attaquant sur le réseau local d'exécuter du code arbitraire dans la RAM du firmware (phase DXE), avant que Secure Boot ne s'active. Cette faille touche les serveurs physiques et les machines virtuelles utilisant un firmware basé sur EDK II.

Mon serveur dédié est-il concerné par cette faille ?

Votre serveur dédié est concerné si son firmware UEFI est basé sur EDK II (ce qui est le cas de la majorité des cartes mères avec processeurs Intel Xeon ou AMD EPYC) et si le boot PXE est activé dans le BIOS. Si votre machine serveur démarre depuis un disque local (SSD, NVMe) et que le boot réseau est désactivé, la faille ne peut pas être exploitée car le driver PXE n'est pas chargé.

Un VPS ou un hébergement mutualisé est-il vulnérable ?

Un VPS standard ou un hébergement mutualisé n'est pas directement vulnérable car le firmware et le hardware sont gérés par l'hébergeur ou le prestataire d'infogérance. Toutefois, si vous administrez un hôte Proxmox ou VMware ESXi et que vos serveurs virtuels utilisent le firmware OVMF avec le boot PXE actif, ces machines virtuelles sont exposées. La mise à jour du paquet pve-edk2-firmware sur l'hôte Proxmox corrigera le firmware.

Comment vérifier la version d'OVMF sur Proxmox ?

Connectez-vous en SSH à l'hôte Proxmox et exécutez sudo dpkg -l pve-edk2-firmware pour afficher la version installée. Vérifiez ensuite les mises à jour disponibles avec sudo apt update && apt list --upgradable | grep edk2. Consultez le changelog du paquet pour confirmer la présence du correctif CVE-2026-97631.

Le correctif est-il déjà disponible ?

Le correctif a été fusionné dans la branche de développement d'EDK II le 15 octobre 2026, mais aucune release stable d'EDK II ne le contient encore au 29 octobre 2026. Les distributeurs (Proxmox, Debian, Ubuntu) et les fabricants de cartes mères publient leurs propres correctifs selon leur calendrier. Surveillez les mises à jour de pve-edk2-firmware pour Proxmox et les bulletins de sécurité VMware pour ESXi.

Comment désactiver le boot PXE dans Proxmox ?

Dans l'interface web Proxmox, sélectionnez la VM, puis Options, puis Boot Order, et décochez tout périphérique réseau (net0). En ligne de commande : qm set VMID --boot order=scsi0. Cette modification prend effet au prochain démarrage de la machine virtuelle et supprime complètement le vecteur d'attaque.

Faut-il redémarrer les VM après la mise à jour du firmware OVMF ?

Oui. Le firmware UEFI est chargé au démarrage de la machine virtuelle. Un simple reboot depuis l'intérieur de la VM ne recharge pas le firmware. Il faut un arrêt complet (shutdown) suivi d'un redémarrage (start) de la VM depuis Proxmox ou ESXi pour que le nouveau firmware OVMF soit pris en compte.

L'attaque fonctionne-t-elle si la machine n'est pas en train de booter en PXE ?

Non. La faille ne peut être exploitée que pendant la phase de boot PXE, lorsque le driver UefiPxeBcDxe est actif et écoute les messages ICMP sur le réseau. Une fois le système d'exploitation chargé, le driver PXE n'est plus en mémoire RAM et la faille n'est plus accessible. La fenêtre d'exploitation est limitée à la durée du démarrage réseau.

Les VM sous VMware ESXi sont-elles aussi concernées ?

Oui. Les machines virtuelles configurées en mode UEFI sur un hôte VMware ESXi utilisent un firmware dérivé d'EDK II. Si le boot PXE est actif dans les options de la VM, la faille s'applique. Configurez chaque VM pour démarrer uniquement depuis le disque virtuel et surveillez les bulletins de sécurité VMware pour la disponibilité du correctif.

Mon serveur web Apache ou MySQL est-il en danger ?

Si votre serveur web Apache, Nginx ou vos bases de données MySQL tournent sur une machine physique ou une machine virtuelle vulnérable (firmware EDK II avec PXE actif), oui. Une compromission pré-boot donne un accès root à l'ensemble du serveur : le firewall, les droits sudo et le chiffrement de l'espace disque ne protègent pas contre un attaquant qui contrôle le firmware. Faites un backup de vos données et configurez le boot pour désactiver le PXE.

Comment protéger un cluster de serveurs en data center ?

Pour un cluster de serveurs physiques en data center, segmentez le réseau PXE dans un VLAN dédié avec un firewall strict, inaccessible depuis le réseau de production. Planifiez la migration firmware vers une version corrigée dès qu'elle sera disponible. Documentez les adresses IP, les versions de BIOS et les processeurs de chaque machine serveur dans un inventaire centralisé.

Sous Windows Server, la faille est-elle aussi présente ?

La faille concerne le firmware UEFI, pas le système d'exploitation. Un serveur sous Windows Server est donc vulnérable exactement de la même manière qu'un serveur Linux si son firmware UEFI est basé sur EDK II et que le boot PXE est actif. Le contournement est identique : configurez le BIOS pour désactiver le boot réseau et démarrer uniquement depuis le disque local.