1 points par GN⁺ 2024-01-16 | 1 commentaires | Partager sur WhatsApp
  • KB5034441 pour Windows 10 est une mise à jour de sécurité destinée à bloquer une vulnérabilité de contournement de BitLocker, mais l’installation échoue à l’étape d’installation sur certains PC
  • Au cœur du problème se trouve la partition de récupération WinRE : dans un environnement standard d’installation de Windows 10, la taille de la partition peut être insuffisante pour traiter la mise à jour
  • En cas d’échec de l’installation, 0x80070643 peut s’afficher, mais la cause réelle peut être un échec du service de l’environnement de récupération correspondant à CBS_E_INSUFFICIENT_DISK_SPACE
  • La solution temporaire de Microsoft consiste à désactiver WinRE dans une invite de commandes administrateur puis à supprimer et recréer la partition de récupération, ce qui est risqué pour les utilisateurs ordinaires
  • Les utilisateurs réagissent en disant que cette procédure est « trop technique et effrayante », et les critiques se multiplient pour que Microsoft publie lui-même un correctif

Échec de l’installation de KB5034441 et problème de partition de récupération

  • Microsoft a déployé KB5034441 le 9 janvier 2024 pour Windows 10 21H2 et 22H2
    • L’objectif est de bloquer une vulnérabilité permettant de contourner le chiffrement BitLocker via Windows Recovery Environment, c’est-à-dire WinRE
  • Certains utilisateurs rencontrent l’erreur 0x80070643 pendant l’installation de la mise à jour
    • Ce code correspond plutôt à un message générique d’échec d’installation et, selon Microsoft, il peut ne pas indiquer précisément la cause réelle en raison d’une « erreur dans la routine de traitement du code d’erreur »
  • La véritable cause peut être un manque d’espace sur la partition de récupération
    • Le message d’erreur réel présenté par Microsoft est Windows Recovery Environment servicing failed. (CBS_E_INSUFFICIENT_DISK_SPACE)
    • Il est possible que la partition de récupération des PC Windows 10 installés selon la configuration standard ne soit pas assez grande pour traiter cette mise à jour

Une procédure de contournement manuelle risquée

  • Microsoft demande aux utilisateurs confrontés à ce problème d’espace disque d’ajuster eux-mêmes la partition de récupération en suivant KB5028997
    • Il faut ouvrir une invite de commandes avec les droits administrateur
    • Il faut désactiver WinRE, puis exécuter des commandes pour supprimer et recréer la partition de récupération
    • C’est une procédure dans laquelle les utilisateurs peu familiers peuvent facilement faire des erreurs
  • Sur les réseaux sociaux, le problème semble largement répandu et les utilisateurs hésitent à appliquer la méthode de contournement proposée par Microsoft
    • Certains décrivent la procédure comme « trop technique et effrayante »
    • D’autres estiment qu’il s’agit d’« un problème que Microsoft doit corriger lui-même »
    • Un autre utilisateur affirme que les clients n’ont pas à réparer les erreurs de Microsoft et qu’en reportant la mise à jour, Microsoft finira par publier un correctif
  • Microsoft a mis à jour la documentation publique concernée le 16 janvier
    • Toutefois, le guide lui-même n’a pas changé
    • L’entreprise indique qu’elle « travaille sur une solution et fournira une mise à jour dans une prochaine version »

1 commentaires

 
GN⁺ 2024-01-16
Avis sur Hacker News
  • Lors de l’installation de la mise à jour, certains utilisateurs voient l’erreur 0x80070643 ; d’après Microsoft, à cause d’une « erreur dans la routine de traitement des codes d’erreur », il ne s’agit peut-être pas d’une erreur réelle
    En somme, le code de code d’erreur pour une erreur affiche mal le code d’erreur de l’erreur à cause d’une erreur
    Je me demande à quelle fréquence ils touchent au code de traitement des codes d’erreur pour qu’une erreur qui n’a pas été corrigée depuis longtemps soit encore là. À la base, ça ressemble au genre de chose qu’on écrit une fois puis qu’on oublie ; si c’était là depuis longtemps sans être remarqué, il devait aussi y avoir une erreur dans l’assurance qualité du code des codes d’erreur

    • C’est pour ça que, quand j’écris ou relis du code qui traite les exceptions et les chemins d’erreur, je suis plus strict et méticuleux
      Je pense qu’il doit être plus simple que le code du chemin nominal, absurdement facile à comprendre et faiblement couplé. Pas d’héritage ni d’abstraction, et un arbre de dépendances peu profond
      J’ai vu trop souvent des systèmes tomber à cause de bugs dans la gestion des exceptions. Les chemins d’exception sont souvent peu testés, voire pas du tout, et les exceptions, par définition, ont une forte tendance à surgir là où on ne les attend pas
    • Ça trahit mon âge, mais une ancienne build d’OS/2 que j’utilisais affichait parfois « Ce message d’erreur a été supprimé »
    • Un bug dont je me suis occupé il y a environ un an était finalement dû à une exception dans le code de logging
      Le code de logging lançait à nouveau une exception précisément dans le cas où il devait enregistrer l’exception levée par le code de gestion des exceptions. Comme c’était un outil interne, je me suis amusé à rédiger l’entrée du changelog de façon délibérément aussi déroutante que possible
    • Mon message préféré était « Something Happened » en petits caractères, puis encore « Something Happened »
  • J’ai suivi les instructions, et je comprends aussi que cela puisse paraître assez intimidant pour certains utilisateurs
    Au lieu de la ligne de commande, j’ai réduit la partition et créé l’espace nécessaire avec Windows Disk Management
    Je suis surpris qu’il n’y ait pas de script pour ce processus, mais ça semble justement indiquer que c’est complexe et qu’il y a beaucoup de place pour l’erreur. C’est aussi pour ça, à mon avis, qu’il n’existe pas de simple script à double-cliquer : l’opération elle-même est délicate
    Difficile d’être optimiste sur le correctif Windows Update rapide que beaucoup attendaient, mais je pense que des développeurs tiers vont bientôt publier des scripts ou programmes qui automatisent ce processus

    • Les modifications automatiques de disque et de partitions semblent présenter un risque assez élevé de perte de données grave
    • Il semble qu’un script PowerShell soit désormais disponible, mais on dirait qu’il ne redimensionne pas la partition. Je me demande si quelqu’un l’a essayé
      https://support.microsoft.com/en-us/topic/kb5034957-updating...
  • Il y a cette partie : « une vulnérabilité qui permettrait à un attaquant d’utiliser Windows Recovery Environment (WinRE) pour contourner le chiffrement BitLocker ». Ça m’a toujours paru étrange, parce que depuis longtemps l’environnement de récupération semblait donner un accès avec les droits SYSTEM au disque système automatiquement déchiffré
    C’était comme ça depuis des années, et on pouvait aussi s’en servir pour dumper le contenu d’une machine dont on avait perdu le mot de passe de connexion. Ce n’était probablement pas le comportement prévu à l’origine

    • Ce n’est vrai que si l’on n’utilise pas de PIN TPM, ou si le TPM est antérieur à la version 2.0
      Avec le mode TPM de BitLocker associé à un PIN, il n’y a aucun moyen de connaître la clé du disque dur sans interroger le TPM, et le TPM exige le PIN. La protection contre le brute force et le verrouillage sont aussi intégrés
    • Dans mon souvenir, WinRE ne demande-t-il pas le mot de passe administrateur local avant les opérations de récupération ?
      C’est pourquoi le « déverrouillage automatique » est généralement une fonctionnalité assortie de grosses réserves, et l’une des raisons pour lesquelles on recommande, si possible, un PIN, un mot de passe ou le déverrouillage réseau. L’inconvénient, en revanche, est qu’à chaque mise à jour il faut surveiller l’ordinateur portable et le déverrouiller à chaque redémarrage
  • Microsoft ne pourrait-il pas reconstituer un vrai service d’assurance qualité au lieu de s’en remettre à des Insiders non rémunérés ? On dirait qu’ils dépendent de gens qui ont bu le Flavor-Aid et croient que Microsoft ne peut pas mal écrire une seule ligne de code

    • Quand on regarde les communautés de feedback, décrire tous les Insiders de cette façon ne semble pas exact
      Cela dit, cela fait maintenant presque dix ans qu’ils ont supprimé le service d’assurance qualité traditionnel, et ce service faisait bien plus que s’appuyer sur la validation par des utilisateurs externes. Honnêtement, il est difficile de dire que Windows casse plus souvent que durant les dix années précédentes, mais j’aimerais voir les chiffres réels sur les incidents provoqués par des problèmes de correctifs dans des systèmes comme ceux du secteur médical au cours des vingt dernières années
  • Même si la méthode de correction fait peur, je leur sais quand même gré d’avoir proposé quelque chose
    Quand une mise à jour, il y a quelques années, a cassé les arrays ReFS d’un nombre non négligeable de personnes, nous n’avons eu aucune solution à part revenir en arrière ; puis cette mise à jour est devenue obligatoire, impossible à désinstaller, et il a fallu recréer les arrays depuis zéro

    • Ils ont bien proposé quelque chose, mais ça reste un gros incident
      Ce n’est pas parce qu’on nous jette quelques miettes dans un produit payant qu’il faut en être reconnaissant. Désolé si je lis ton intention de travers
      Microsoft doit être tenu responsable d’avoir cassé l’installation et d’avoir fourni un correctif à moitié fini. Même si le problème est complexe, quand on est le leader du marché des OS de bureau et qu’on gagne énormément d’argent avec, on doit faire mieux
  • Le problème, c’est qu’il n’y a pas de partition de récupération, ou qu’elle n’est pas assez grande
    Dans une machine virtuelle Win10, je n’avais pas besoin de partition de récupération et je l’ai supprimée après l’installation ; maintenant, cette installation ne peut plus être mise à jour

    • J’ai suivi les instructions pour désactiver la partition de récupération, et je crois que je ne lui avais pas alloué d’espace dès le départ
      Après redémarrage, j’ai pu passer à Windows 11, et j’espère ne pas avoir de plus gros problèmes plus tard. Je ne voulais vraiment pas toucher à l’étape suivante indiquée, le redimensionnement de la partition système
      Les cas varient sans doute, mais c’est amusant que ce bug sur lequel je suis tombé par hasard soit arrivé en une de Hacker News
  • On dit parfois : « J’utilise Windows parce que je n’ai pas envie de passer par la ligne de commande juste pour corriger un petit problème » ; en réalité, on faisait déjà partie du club
    Il y a quelques années, Windows a soudain décidé qu’il n’avait pas les droits d’accès à mon répertoire utilisateur, et je me suis retrouvé avec un système où Explorer et la barre des tâches étaient bizarrement cassés
    Pour réparer, il fallait ouvrir une console administrateur, créer un nouvel utilisateur, déplacer les fichiers de l’ancien compte vers le nouveau, puis modifier la propriété et les permissions. Donc l’idée que Windows serait facile parce qu’il est graphique, c’est du grand n’importe quoi
    Si, de toute façon, je finis dans un mode de panne bizarre à devoir taper des commandes pour m’en sortir, je vais simplement continuer à utiliser Linux et NetBSD

  • En tant qu’ancien développeur Windows, j’ai le souvenir d’avoir été fortement agacé par les mises à niveau de Windows
    Il n’était plus possible d’écrire de façon fiable dans le dossier d’installation ; on nous a poussés à écrire dans le registre, puis à répartir les données entre un dossier de données et d’autres emplacements. Il fallait donc découper l’installation en « dix morceaux » pour gérer l’emplacement des données, manipuler HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, etc., puis demander une élévation de privilèges pour l’installation
    Je garde aussi un vague souvenir d’avoir débogué un bug où, après suppression d’un fichier dans le dossier d’installation, Windows restaurait en arrière-plan une ancienne version de ce fichier. c:\program files était virtualisé et ne se comportait plus comme un vrai répertoire

    • Le fait qu’on ne puisse plus écrire de façon fiable dans le dossier d’installation est probablement un changement arrivé avec Windows XP, et je pense que c’était une bonne chose
      Laisser des programmes utilisateur écrire dans un dossier rempli d’exécutables est catastrophique du point de vue de la sécurité
  • On peut aussi estimer qu’il vaut mieux ne pas installer toutes les mises à jour dès leur publication

    • Sur macOS et iOS, je fonctionne en attendant un peu, mais je n’ai pas trouvé comment expliquer à Windows que je ne veux pas de mises à jour automatiques
      C’est particulièrement gênant quand une mise à jour se lance au milieu de calculs qui tournent toute la nuit
    • Microsoft a-t-il changé cela, ou Windows 10 Home force-t-il encore l’utilisateur à installer immédiatement les dernières mises à jour ?
    • Microsoft teste-t-il d’abord ces mises à jour en interne, comme Google le fait avec Android et Chrome OS ?
  • Si le journaliste avait essayé Linux, il saurait qu’il affiche des messages d’erreur bien meilleurs que des codes d’erreur ressemblant à des nombres aléatoires

    • N’est-ce pas littéralement un cas où le mauvais message d’erreur a été affiché ?
      D’après Microsoft, « en raison d’une erreur dans la routine de gestion des codes d’erreur », cette erreur pourrait ne pas être la bonne
    • Ce qui rend Windows agréable à utiliser, ce ne sont pas les messages d’erreur, mais la résolution en un clic
    • Code de sortie 139, hum
    • C’est vrai, mais parfois le message utile ne se trouve que dans dmesg