Windows 11 KB5050009 : corriger l’erreur 0x80070005 (Access is denied) — WDAC, SFC/DISM, installation hors ligne

La mise à jour cumulative KB5050009 de Windows 11 échoue avec le code 0x80070005 (“Access is denied”). Ce guide explique pourquoi, comment diagnostiquer la cause (souvent WDAC) et propose des correctifs fiables pour postes domestiques et environnements gérés.

Sommaire

Vue d’ensemble du problème

Sur plusieurs PC Windows 11, le téléchargement de la mise à jour KB5050009 reste figé à 0 % puis l’installation se termine par 0x80070005 : Access is denied. Le code 0x80070005 correspond à un refus d’accès : Windows Update, le service TrustedInstaller ou l’installeur CBS/Servicing ne parvient pas à manipuler un fichier (lecture, écriture, renommage, remplacement) nécessaire à la phase de staging ou de commit du package.

Causes identifiées

Dans les cas remontés, trois origines expliquent la majorité des échecs :

Origine probableIndications relevées
Politiques d’intégrité de code (WDAC) – fichiers .cip dans C:\Windows\System32\CodeIntegrity\CiPolicies\ActiveEntrées « STATUS_ACCESS_DENIED » dans CBS.log ou événements Code Integrity au moment du staging
Privilèges administrateur insuffisants ou ACL corrompuesCommandes takeown/icacls refusées, opérations du service de maintenance bloquées
Services Windows Update / connectivité instableTéléchargement bloqué à 0 % puis échec systématique

Avant de commencer : prérequis et bonnes pratiques

  • Sauvegardez les données critiques (image système, fichiers utilisateurs).
  • Ouvrez une session administrateur locale ou compte Azure AD ayant les droits d’administrateur.
  • Vérifiez l’espace disque : 8–10 Go libres sur le lecteur système minimisent les risques de rollback.
  • Assurez la stabilité réseau : éviter VPN instables / proxy filtrant pendant l’installation.
  • Notez la date et l’heure ; synchronisez l’horloge (control timedate.cpl > Internet).

Checklist rapide (si vous devez aller droit au but)

  1. Pause/Reprise de Windows Update + redémarrage.
  2. Lecture de C:\Windows\Logs\CBS\CBS.log : chercher « Access is denied ».
  3. Si des .cip sont cités : neutraliser la politique WDAC locale (poste non géré), redémarrer.
  4. sfc /scannow puis DISM /Online /Cleanup-Image /RestoreHealth.
  5. Arrêt/redémarrage de BITS et Windows Update et renommer SoftwareDistribution.
  6. Tester l’installation hors ligne du package .msu.
  7. En entreprise : passer WDAC en mode Audit via Intune/GPO, relancer l’installation.

Procédure détaillée de diagnostic et de résolution

Redémarrer Windows Update proprement

Cette simple séquence débloque souvent les PC domestiques :

  1. Paramètres > Windows Update > Mettre en pause les mises à jour.
  2. Redémarrer le PC.
  3. Annuler la pause et cliquer sur Rechercher des mises à jour.

Analyser les journaux CBS et Code Integrity

Repérez les refus d’accès et les fichiers impliqués.

  • CBS : C:\Windows\Logs\CBS\CBS.log
  • Journaux Code Integrity : Observateur d’événements > Applications and Services Logs > Microsoft > Windows > CodeIntegrity > Operational

Filtrer rapidement les lignes pertinentes :

findstr /c:"Access is denied" /c:"STATUS_ACCESS_DENIED" "C:\Windows\Logs\CBS\CBS.log"

Neutraliser une politique WDAC fautive (poste non géré)

Uniquement si la machine n’est pas soumise à une stratégie centrale (Intune/GPO) : un fichier .cip actif peut bloquer la maintenance. L’idée est de renommer provisoirement ce fichier pour laisser l’installeur opérer.

  1. Ouvrir Invite de commandes (Admin).
  2. Lancer :
cd /d C:\Windows\System32\CodeIntegrity\CiPolicies\Active
takeown /f {GUID}.cip
icacls {GUID}.cip /grant administrators:F
ren {GUID}.cip {GUID}.cip.old

Remarques importantes :

  • Remplacez {GUID} par le nom exact du fichier listé dans CBS.log ou visible dans le dossier.
  • Redémarrez puis relancez la recherche de mises à jour.
  • Après l’installation réussie, restaurez la politique si nécessaire (renommez .cip.old en .cip) et vérifiez qu’elle n’empêche plus les mises à jour.
  • En entreprise, ne pas court-circuiter une politique de sécurité : utilisez plutôt le mode Audit (voir plus bas).

Réparer l’image système

Ces deux commandes corrigent fichiers système et magasin de composants (component store) :

sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

Si DISM ne trouve pas les sources, montez un ISO de la même version de Windows 11 et indiquez la source :

DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:1 /LimitAccess

Désactiver temporairement l’antivirus tiers et tester en démarrage minimal

  • Désactivez l’AV tiers (ex. Avast) le temps de l’installation.
  • Démarrage minimal : msconfig > Démarrage sélectif, désactivez les éléments non Microsoft dans Services, puis redémarrez.

Réinitialiser les composants Windows Update

Procédure standard : arrêter les services, renommer les caches, relancer.

net stop wuauserv
net stop bits
net stop cryptsvc
net stop msiserver

ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old

net start msiserver
net start cryptsvc
net start bits
net start wuauserv

Astuce : si un service refuse l’arrêt, utilisez tasklist/taskkill pour fermer l’application bloquante, puis réessayez.

Installer KB5050009 hors ligne

Quand Windows Update échoue mais que le système est sain, l’installation locale du package corrige souvent la situation.

  1. Téléchargez le fichier .msu correspondant à votre édition et architecture.
  2. Exécutez-le ou utilisez wusa :
wusa.exe "C:\Chemin\KB5050009.msu" /quiet /norestart

En cas d’échec, extrayez le .cab et injectez-le avec DISM :

expand -F:* "C:\Chemin\KB5050009.msu" C:\Temp\KB5050009
DISM /Online /Add-Package /PackagePath:"C:\Temp\KB5050009\*.cab"

Cas des environnements gérés (Intune/GPO)

Si WDAC, AppLocker ou d’autres contrôles d’application sont déployés :

  • Identifier la stratégie : Intune (Endpoint security > Application control) ou GPO (AppLocker / WDAC).
  • Placer WDAC en mode Audit le temps de l’installation : la politique journalise sans bloquer.
  • Déployer la mise à jour (anneau pilote, puis généralisation).
  • Repasser en mode Enforced après validation.
  • Vérifier BitLocker : s’assurer que la protection ne bloque pas l’accès aux fichiers temporaires pendant la maintenance (rare, mais à contrôler sur postes à disque saturé).

Pourquoi WDAC peut provoquer 0x80070005

WDAC (Windows Defender Application Control) applique des règles d’exécution basées sur l’intégrité de code. Pendant l’installation d’une mise à jour cumulative :

  • Le moteur CBS met en staging des binaires signés et des catalogues (.cat).
  • Le service TrustedInstaller remplace des fichiers en mode protégé.
  • Si une politique WDAC/CI restrictive est active (fichier .cip), certaines opérations de remplacement/chargement peuvent être refusées, générant « Access is denied ».

D’où l’efficacité des approches : mode Audit en géré, ou renommage temporaire du .cip en non géré.

Signes typiques dans les journaux

SymptômeJournalInterprétation
Téléchargement figé à 0 %WindowsUpdate.log (via Get-WindowsUpdateLog)Problème BITS/proxy/cache. Passer en installation hors ligne ou réinitialiser WU.
Lignes « Access is denied »CBS.logBogue d’ACL, TrustedInstaller bloqué, politique WDAC active, fichier verrouillé.
Événements CodeIntegrityObservateur > CodeIntegrityBlocages d’exécution liés à WDAC (mode Enforced).

Méthodes avancées (au besoin)

Installer le package depuis WinRE ou en mode sans échec

Si un pilote ou un agent verrouille des fichiers système, le mode minimal aide :

  1. Démarrer en mode sans échec réseau.
  2. Lancer l’installation hors ligne (wusa ou DISM /Add-Package).

Réparer des ACL corrompues

Réinitialisez les autorisations par défaut sur les emplacements critiques :

icacls C:\Windows\SoftwareDistribution /reset /t /c
icacls C:\Windows\servicing /reset /t /c
icacls C:\Windows\WinSxS /reset /t /c

Puis assurez-vous que TrustedInstaller est propriétaire des répertoires sensibles :

icacls C:\Windows\servicing /setowner "NT SERVICE\TrustedInstaller" /t /c
icacls C:\Windows\WinSxS /setowner "NT SERVICE\TrustedInstaller" /t /c

Nettoyage du cache de packages

Sur des systèmes très anciens/patchés, un cleanup aide :

DISM /Online /Cleanup-Image /StartComponentCleanup /ResetBase

Proxy/SSL et réseau

Si l’accès Internet passe par un proxy strict, purgez la config WinHTTP :

netsh winhttp reset proxy

Videz également DNS et cache WinINET :

ipconfig /flushdns
rundll32 inetcpl.cpl,ClearMyTracksByProcess 8

Playbook selon le contexte

ContexteActions prioritairesCritère de succès
PC domestiquePause/reprise WU → SFC/DISM → Réinit WU → Installation hors ligneMise à jour s’installe, plus d’erreur 0x80070005
Poste non géré avec WDAC localeRenommer .cip → redémarrer → installer → restaurer si besoinInstallation réussie, système stable
Entreprise (Intune/GPO)WDAC en Audit → déployer KB → rebasculer en Enforced après validationAnneau pilote ok, déploiement généralisé

Validation post-correctif

  • Paramètres > Windows Update : statut « À jour », KB affichée dans l’historique.
  • Commande : wmic qfe list | find "KB5050009" (ou Get-HotFix en PowerShell).
  • Journaux : plus d’« Access is denied » dans CBS.log après l’installation.
  • Redémarrages : aucun rollback, boot normal.

FAQ rapide

Renommer un fichier .cip est-il sûr ?
Sur un poste non géré, oui si c’est temporaire et documenté. Remettez la politique après installation. En entreprise, préférez le mode Audit.

Quelle différence entre WDAC et AppLocker ?
AppLocker contrôle des applications par règles plus « haute » (éditeur, chemins). WDAC applique une intégrité de code plus profonde. Une politique WDAC stricte peut bloquer des opérations de maintenance système.

Pourquoi 0x80070005 apparaît-il sur un seul poste ?
ACL locales, cache WU corrompu, agent tiers, ou une politique CI résiduelle. Les étapes de réinitialisation et l’installation hors ligne isolent la cause.

Dois-je désinstaller l’antivirus ?
Non. Désactivez-le temporairement pour tester. Réactivez-le dès la mise à jour terminée.

Tableau « pense-bête » des commandes

ObjectifCommande
Rechercher « Access is denied »findstr /c:"Access is denied" "C:\Windows\Logs\CBS\CBS.log"
Réparer fichiers systèmesfc /scannow
Réparer magasin de composantsDISM /Online /Cleanup-Image /RestoreHealth
Réinitialiser WUnet stop wuauserv & net stop bits & ren %systemroot%\SoftwareDistribution SoftwareDistribution.old & net start bits & net start wuauserv
Installer hors ligne (silencieux)wusa.exe "C:\Chemin\KB5050009.msu" /quiet /norestart
Neutraliser WDAC localetakeown /f {GUID}.cip & icacls {GUID}.cip /grant administrators:F & ren {GUID}.cip {GUID}.cip.old

Bonnes pratiques pour éviter le retour de l’erreur

  • Documentez les politiques de sécurité (WDAC/AppLocker) et leur mode (Audit vs Enforced).
  • Surveillez l’espace disque et mettez en place une alerte sur le volume système.
  • Programmez un nettoyage périodique du component store si vos images sont pérennes.
  • Validez en anneau pilote les mises à jour avant de les généraliser (entreprise).
  • Contrôlez les services Windows Modules Installer (TrustedInstaller) et BITS : démarrage et permissions corrects.

Conclusion

Dans la majorité des cas, l’échec d’installation de KB5050009 avec 0x80070005 provient d’une politique WDAC trop stricte, d’ACL défaillantes ou d’un cache Windows Update corrompu. En appliquant la démarche ci‑dessus — pause/reprise WU, analyse des journaux, neutralisation ciblée de WDAC (ou passage en Audit), SFC/DISM, réinitialisation des composants WU et installation hors ligne — vous restaurez la capacité de mise à jour et résorbez durablement l’erreur 0x80070005. Sur poste domestique, la solution est souvent immédiate ; en entreprise, la coordination avec l’équipe sécurité et l’usage du mode Audit permettent un déploiement maîtrisé.


Résumé exécutable

  • Scénario domestique : la pause/reprise de Windows Update ou le renommage du fichier .cip suffit généralement.
  • Scénario entreprise : la mise à jour s’installe dès que les politiques WDAC bloquantes sont levées ou ajustées (mode Audit), puis rebasculées après validation.

Ces étapes devraient restaurer l’installation de la KB5050009 et supprimer l’erreur 0x80070005.

Sommaire