Corriger l'erreur 0x80070643 de la mise à jour KB5034441 de Windows 10
Les utilisateurs de Windows 10 rencontrent une erreur énigmatique empêchant l'installation d'une récente mise à jour de sécurité. En attendant la publication d'un correctif officiel, Microsoft propose une solution pour forcer l'installation du patch.
La première mise à jour de l'année pour Windows 10 et 11 est arrivée ce mardi, avec le Patch Tuesday de janvier 2024. Sans apporter de changements majeurs au système d'exploitation, cette livraison se concentre sur la correction bugs et de failles de sécurité. Malheureusement, l'une des composantes du patch, la mise à jour de sécurité KB5034441, rencontre un problème et de nombreux utilisateurs de Windows 10 version 22H2 se retrouvent dans l'impossibilité de l'installer.
Pour ne rien arranger, l'utilitaire de gestion des mises à jour Windows Update ne renvoie qu'un code d'erreur cryptique lors de l'échec de l'installation, peu utile pour comprendre l'origine du problème. Heureusement, suite aux nombreuses remontées des utilisateurs, Microsoft a pu identifier le dysfonctionnement et a même publié une série d'instructions, complètes et en français, pour contourner le problème et permettre l'installation de la mise à jour de sécurité.
Cependant, la marche à suivre s'avère complexe et nécessite une série de lignes de commande pas forcément à la portée de tous et toutes. Par ailleurs, d'après les premiers retours de certains utilisateurs, la méthode de contournement proposée par Microsoft ne semble pas fonctionner systématiquement, la mise à jour continuant de refuser à s'installer même après son application.
Que signifie le code erreur 0x80070643 lors de la mise à jour KB5034441 ?
Le Patch Tuesday pour Windows, publié ce mardi 9 janvier 2024, apporte toute une série de corrections de bugs et de failles de sécurité. Dans le lot, la mise à jour de sécurité numérotée KB5034441 corrige une vulnérabilité identifiée par la CVE-2024-20666, qui permettait à un attaquant de contourner la fonction de chiffrement BitLocker de Windows, et d'avoir accès en clair aux données chiffrées présentes sur le dispositif de stockage de l'ordinateur.
Malheureusement, sur les PC équipés de Windows 10, l'installation de la mise à jour KB5034441 échoue et retourne un message d'erreur pour le moins obscur et peu susceptible d'aider les utilisateurs confrontés au problème.
Dans une note d'aide dédiée à ce problème, Microsoft indique que le gestionnaire de mises à jour Windows Update devrait normalement renvoyer un message d'erreur plus explicite, indiquant "Windows Recovery Environment servicing failed. (CBS_E_INSUFFICIENT_DISK_SPACE)". Cependant, un autre problème affectant la routine de gestion des codes d'erreur de Windows Update entraîne une mauvaise reconnaissance de l'incident et l'affichage du fameux code "0x80070643 - ERROR_INSTALL_FAILURE".
Une fois cette première énigme levée, que nous apprennent le message d'erreur normalement prévu et la note de Microsoft ? Pour corriger la vulnérabilité affectant BitLocker, la mise à jour KB5034441 doit créer une nouvelle version de Windows Recovery Environnement (WinRE), sur la partition de récupération de Windows. Cette partition est un espace de stockage réservé sur le disque dur ou le SSD de l'ordinateur lors de l'installation du système d'exploitation, et qui sert lors des opérations de réparation ou de restauration en cas de problème.
Toutefois, la partition de récupération créée automatiquement par Windows 10 lors de son installation est d'une taille insuffisante pour accepter la nouvelle version de Windows Recovery Environnement (WinRE), d'où le message d'erreur "Windows Recovery Environment servicing failed. (CBS_E_INSUFFICIENT_DISK_SPACE)" qui devrait normalement s'afficher en lieu et place du code 0x80070643, et qui indique clairement un problème d'espace de stockage.
À titre d'exemple, sur un ordinateur avec Windows 10 22H2 installé, nous trouvons une partition de récupération d'un volume de 549 Mo, ce qui semble donc insuffisant pour accueillir la nouvelle version de WinRE.
Pour remédier au problème, il suffirait donc d'augmenter la taille de la partition de récupération, mais cette opération n'est pas si simple. Contrairement aux autres partitions de l'espace de stockage, qui peuvent être redimensionnées via l'outil de gestion des disques de Windows, la partition de récupération est créée lors de l'installation du système d'exploitation, et il faut se tourner vers des outils en ligne de commande pour la manipuler.
Comment résoudre l'erreur 0x80070643 lors de la mise à jour KB5034441 ?
Pour permettre aux utilisateurs de Windows 10 d'installer la mise à jour KB5034441, Microsoft propose donc de procéder à un redimensionnement manuel de la partition de récupération. Vous trouverez les instructions détaillées et en français sur cette page.
Avant de se lancer dans cette opération un brin complexe et risquée, il faut en évaluer la pertinence et l'opportunité. En effet, la vulnérabilité affectant BitLocker, aussi inquiétante soit-elle, est d'une portée somme toute limitée. Pour l'exploiter, un attaquant doit disposer d'un accès physique à l'ordinateur ciblé, un cas de figure assez spécifique qui concerne davantage les ordinateurs d'entreprise contenant des données sensibles que les PC des particuliers. Par ailleurs, un correctif permettant d'installer facilement et automatiquement la mise à jour KB5034441 sera sûrement déployé par Microsoft assez rapidement. La majorité des utilisateurs, compte tenu de la dangerosité relative de la faille de sécurité, auront certainement meilleur compte d'attendre sa publication que de se lancer dans des acrobaties à base de ligne de commande.
Néanmoins, si vous vous sentez l'esprit aventureux et que vous avez un besoin impérieux de corriger la vulnérabilité de BitLocker sans attendre, voici la marché à suivre. Notez toutefois que nous avons testé par nous-même la méthode de contournement proposée par Microsoft, et qu'elle n'a pas permis d'installer la mise à jour, car il semble manquer une étape permettant d'étendre effectivement le volume de la partition de récupération.
► Ouvrez une invite de commande en tant qu'administrateur. Pour cela, ouvrez le menu Démarrer, tapez les lettres "cmd", puis faites un clic-droit sur le résultat Invite de commandes et cliquez enfin sur Exécuter en tant qu'administrateur.
► Pour vérifier si WinRE est installé, écrivez la commande reagentc /info et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
reagentc /info
► Si WinRE est correctement installé, vous devriez obtenir un résultat similaire à la capture d'écran ci-dessous, avec "Emplacement WinRE : \\?\GLOBALROOT\device\harddisk0\partition5\Recovery\WindowsRE". Dans ce chemin, les numéros après "harddisk" et "partition" correspondent aux index du disque et de la partition de WinRE. Notez-le, vous en aurez besoin pour les prochaines commandes.
► Ensuite, il faut désactiver WinRE. Écrivez la commande reagentc /disable et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
reagentc /disable
► Il faut ensuite réduire la partition du système d'exploitation pour libérer de l'espace supplémentaire pour la partition de récupération. Écrivez la commande diskpart et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
diskpart
► Écrivez ensuite la commande list disk et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
list disk
► Pour sélectionner le disque, écrivez la commande sel disk <OS disk index>, en remplaçant la partie entre <> par le numéro du disque obtenu lors de la première commande, 0 dans le cas présent. Validez en appuyant sur Entrée. Vous pouvez copiez-coller la commande ci-dessous dans votre terminal et y ajouter l'index du disque manuellement :
sel disk
► Écrivez ensuite la commande list part et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
list part
► Dans la liste, repérez le numéro de la partition principale. Dans le cas présent, il s'agit du numéro 3. Écrivez ensuite la commande sel part <OS partition index>, en remplaçant la partie entre <> par le numéro de la partition système. Vous pouvez copiez-coller la commande ci-dessous dans votre terminal et y ajouter l'index de la partition manuellement :
sel part
► Une fois la partition sélectionnée, écrivez la commande shrink desired=250 minimum=250 et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
shrink desired=250 minimum=250
► Il faut ensuite sélectionnez et supprimer la partition WinRE. Écrivez la commande sel part <WinRE partition index> en remplaçant la partie entre <> par le numéro de la partition obtenu lors de la première commande, après le texte "partition" dans le chemin d'accès de WinRE. Dans le cas présent, il s'agit du numéro 5. Si vous avez le moindre doute, reportez-vous à la commande reagentc /info au début de ce pas-à-pas, car vous vous apprêtez à supprimer une partition, il convient donc de ne pas se tromper ! Vous pouvez copiez-coller la commande ci-dessous dans votre terminal et y ajouter l'index de la partition manuellement :
sel part
► Enfin, pour supprimer la partition de récupération, écrivez la commande delete partition override et validez en appuyant sur Entrée. Vous pouvez copier-coller la commande ci-dessous directement dans le terminal :
delete partition override
Il faut ensuite créer une nouvelle partition de récupération. Avant cela, vous devez déterminer si le type de partition de votre stockage est GUID Partition Table (GPT) ou Master Boot Record (MBR).
► Exécutez la commande list disk comme précédemment. Dans la liste des résultats, regardez si la ligne du disque concerné, le 0 dans notre cas, contient un astérisque * dans la colonne GPT. Attention, la valeur de la ligne peut-être décalé par rapport à l'en-tête de la colonne, comme sur la capture d'écran ci-dessous, regardez-donc bien si la ligne se termine par un astérisque *.
list disk
Si le disque concerné contient un astérisque * dans la colonne GPT, il est de type GPT. Sinon, il est de type MBR. La prochaine commande à exécuter dépend du type de disque, soyez donc attentif au moment de l'écrire.
► Si votre disque est de type GPT, écrivez d'abord la commande create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac et valider en appuyant sur Entrée, puis écrivez la commande gpt attributes =0x8000000000000001 et validez en appuyant sur Entrée.
create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac gpt attributes =0x8000000000000001
► Si votre disque est de type MBR, écrivez la commande create partition primary id=27 et validez en appuyant sur Entrée.
create partition primary id=27
► Dans les deux cas, formatez la partition en écrivant la commande format quick fs=ntfs label="Windows RE tools" et validez en appuyant sur Entrée.
► Pour vérifier que la nouvelle partition WinRE a bien été créée, écrivez la commande list vol et validez en appuyant sur Entrée. Une liste avec un volume nommé Windows RE devrait apparaître.
list vol
► Pour quitter l'outil DiskPart, écrivez la commande exit et vaidez en appuyant sur Entrée.
exit
► Enfin, pour réactiver WinRE, écrivez la commande reagentc /enable et validez en appuyant sur Entrée.
reagentc /enable
► Pour terminer, vous pouvez vérifier que WinRE est correctement réinstallé. Ecrivez la commande reagentc /info et validez en appuyant sur Entrée.
reagentc /info
Une fois ces longues manipulations terminées, vous pouvez tenter de réinstaller la mise à jour KB5034441 et redémarrez votre ordinateur. Gardez toutefois à l'esprit que, comme indiqué précédemment, cette méthode n'a pas fonctionné pour de nombreux utilisateurs, et qu'il vous faudra peut-être malgré tout patienter jusqu'à la publication du correctif officiel par Microsoft.