Nous recommandons de conserver activées les mises à jour automatiques pour tous les déploiements de Firefox afin de vous assurer que les derniers correctifs de sécurité sont appliqués et toutes les fonctionnalités disponibles, mais les spécificités de votre environnement peuvent empêcher les mises à jour automatiques.
Les versions RR (Rapid Release) et ESR (Extended Support Release) de Firefox peuvent toutes deux être utilisées dans vos environnements d’entreprise. Si les mises à jour importantes et fréquentes vous préoccupent, nous vous recommandons de consulter l’article Choisir le canal de mise à jour de Firefox pour en savoir plus sur Firefox ESR.
| Fréquence de mise à jour majeure | Portée de mise à jour majeure | Fréquence de mise à jour mineure | Portée de mise à jour mineure | |
|---|---|---|---|---|
| ESR | Chaque année | Nouvelles fonctionnalités publiées et bogues réglés depuis les 12 derniers mois. | Toutes les 2 semaines ou en cas de nécessité | Correctifs critiques de sécurité ou de stabilité |
| RR | Toutes les deux semaines | Nouvelles fonctionnalités publiées et bogues réglés dans les 2 dernières semaines. | Quand nécessaire entre deux versions majeures | Correctifs critiques de sécurité ou de stabilité |
Désactiver les mises à jour de Firefox
Les mises à jour automatiques sont activées par défaut, mais vous pouvez les désactiver en utilisant la stratégie de désactivation des mises à jour DisableAppUpdate.
Lorsque des mises à jour sont activées, elles peuvent être installées silencieusement sans approbation de l’utilisateur ou de l’utilisatrice en activant la stratégie de mise à jour automatique de l’application AppAutoUpdate.
Résolution des problèmes de mise à jour de Firefox
Si un poste de travail ne reçoit pas les mises à jour de Firefox, les vérifications PowerShell suivantes peuvent aider à identifier la cause profonde.
Vérifier les clés de registre de la stratégie de groupe (Group Policy ou GPO) locale
Exécutez la commande suivante :
Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Mozilla\Firefox" |
Select-Object DisableAppUpdate, AppAutoUpdate
Valeurs attendues :
| Valeur de registre | Valeur attendue |
|---|---|
DisableAppUpdate
| 0 |
AppAutoUpdate
| 1 |
Si ces valeurs ne sont pas définies comme attendu, les mises à jour de Firefox peuvent être désactivées par une stratégie de groupe locale ou de domaine.
Vérifier la version de Firefox installée
Exécutez la commande PowerShell suivante :
Get-ChildItem -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" |
Where-Object { $_.PSChildName -like "Mozilla Firefox*" } |
ForEach-Object {
Get-ItemProperty $_.PsPath |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate
}
Comparez la version installée avec la dernière version de Firefox ESR disponible sur le site web de Mozilla.
Vérifier la tâche planifiée
Firefox s’appuie sur une tâche planifiée en arrière-plan pour télécharger et appliquer les mises à jour.
Exécutez la commande PowerShell suivante :
Get-ScheduledTask |
Where-Object { $_.TaskName -like "*Firefox Background Update*" } |
ForEach-Object { Get-ScheduledTaskInfo $_ }
→ Assurez-vous que :
- La tâche existe.
- La tâche est activée.
- La tâche s’exécute avec succès et sans erreur.
Vérifier le Mozilla Maintenance Service
Sous Windows, les mises à jour de Firefox peuvent nécessiter que le Mozilla Maintenance Service soit installé et en cours d’exécution. Ce service permet à Firefox d’appliquer les mises à jour sans nécessiter de privilèges d’administration.
Vérifier si le service existe et son état
Exécutez la commande PowerShell suivante :
Get-Service -Name MozillaMaintenance -ErrorAction SilentlyContinue |
Select-Object Name, DisplayName, Status, StartType
→ Comportement attendu :
- Le service existe.
- L’état est
Running(en cours d’exécution) (ouStopped(arrêté), mais capable de démarrer). -
StartTypeest défini surAutomatic(automatique) ouManual(manuel). - Si le service est manquant, il est possible que Firefox ne puisse pas appliquer les mises à jour automatiquement.
Démarrer le service manuellement (si nécessaire)
Si le service existe mais n’est pas en cours d’exécution, essayez de le démarrer. Exécutez la commande PowerShell suivante :
Start-Service -Name MozillaMaintenance
Vérifiez à nouveau que le service démarre sans erreur.
Réinstaller le Mozilla Maintenance Service
Si le service est manquant ou corrompu, il peut être réinstallé à l’aide du programme d’installation de Firefox :
- Téléchargez le programme d’installation de Firefox correspondant à votre déploiement (version ESR ou standard).
- Exécutez le programme d’installation en tant qu’administrateur.
- Assurez-vous que l’option Installer le Service de maintenance Mozilla est bien sélectionnée.
Après l’installation, vérifiez à nouveau l’état du service.
Invite de l’UAC demandant les identifiants d’administration lors des mises à jour
Sur certains postes de travail, une mise à jour déclenche une invite de l’UAC intitulée Firefox Updater Software demandant les identifiants d’administration, même si le Mozilla Maintenance Service est installé et fonctionnel. Les utilisateurs et utilisatrices standard ne peuvent pas terminer la mise à jour et l’invite réapparaît à chaque lancement de Firefox.
Cause
Avant d’utiliser le service de maintenance, le programme de mise à jour de Firefox vérifie la configuration de l’UAC du poste de travail (test IsUnpromptedElevation dans le code source du programme de mise à jour). Si l’UAC est configuré pour une élévation silencieuse, Firefox suppose que l’élévation se produira sans aucune invite – comme ce serait le cas pour un administrateur ou une administratrice – et ignore le service de maintenance. Mais si la personne connectée n’est pas réellement administratrice, l’élévation n’est pas silencieuse et Windows affiche à la place une invite d’identification de l’UAC.
Cela ne se produit que lorsque les trois conditions suivantes sont réunies :
-
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\ConsentPromptBehaviorAdminest défini sur0(option de sécurité Contrôle de compte d’utilisateur : comportement de l’invite d’élévation pour les administrateurs en mode d’approbation administrateur = Élever sans demander d’autorisation ; la valeur par défaut de Windows est5) -
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\PromptOnSecureDesktopest défini sur0(option de sécurité Contrôle de compte d’utilisateur : basculer vers le Bureau sécurisé lors d’une invite d’élévation = Désactivé ; la valeur par défaut de Windows est1) - L’utilisateur ou l’utilisatrice connecté·e dispose d’un jeton filtré UAC : membre d’un groupe privilégié (Administrateurs, Opérateurs de sauvegarde, Utilisateurs avec pouvoir, etc.), y compris les groupes marqués deny-only (refuser uniquement), ou titulaire de privilèges sensibles (tels que
SeBackupPrivilegeouSeDebugPrivilege) accordés par une stratégie de groupe. Notez que le filtrage basé sur les privilèges n’est pas visible danswhoami /groups.
Diagnostic
Vérifiez le journal du programme de mise à jour pour la signature suivante :
Get-Content "C:\ProgramData\Mozilla-1de4eec8-1241-4177-a864-e594e8d1fb38\updates\*\updates\0\update.log"
...
After checking IsUnpromptedElevation, useService=false
Elevating via a UAC prompt
Writing status to file: failed: 9
...
La ligne useService=false après la vérification IsUnpromptedElevation confirme cette cause (l’erreur 9 signifie que l’utilisateur ou l’utilisatrice a annulé l’invite de l’UAC). Note : après un premier échec, les journaux suivants affichent useService=false dès la première ligne, sans les lignes After checking... (état résiduel, voir la solution).
Vérifiez ensuite les valeurs de l’UAC et l’état de la mise à jour en attente :
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop
Get-Content "C:\ProgramData\Mozilla-1de4eec8-1241-4177-a864-e594e8d1fb38\updates\*\updates\0\update.status"
Valeurs possibles pour update.status :
| Valeur | Signification |
|---|---|
pending-service
| Mise à jour téléchargée, le service de maintenance sera utilisé (normal) |
pending
| Firefox a abandonné le service de maintenance pour cette mise à jour (état résiduel après un échec) |
applied-service
| Mise à jour appliquée avec succès via le service de maintenance |
Solution
- Fermez Firefox.
- Exécutez les commandes suivantes dans une session PowerShell avec élévation de privilèges :
- Restaurer le comportement par défaut de l’invite d’élévation de l’UAC pour les administrateurs
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 5 /f
- Réactiver le Bureau sécurisé pour les invites d’élévation
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop /t REG_DWORD /d 1 /f
- Effacer l’état résiduel de la mise à jour (sinon l’invite apparaît une dernière fois)
Remove-Item "C:\ProgramData\Mozilla-1de4eec8-1241-4177-a864-e594e8d1fb38\updates\*\*" -Recurse -Force
- Restaurer le comportement par défaut de l’invite d’élévation de l’UAC pour les administrateurs
- Démarrez Firefox, allez dans Aide > À propos de Firefox et attendez Redémarrer pour mettre à jour Firefox.
- Redémarrez Firefox : la mise à jour doit être appliquée sans aucune invite de l’UAC.
→ Remarques :
- La restauration de l’une ou l’autre des deux valeurs de l’UAC suffit à corriger la condition défectueuse ; la restauration des deux ramène le poste de travail aux valeurs par défaut de Windows.
- Si ces valeurs de l’UAC sont appliquées par une stratégie de groupe de domaine, elles seront réinitialisées lors du prochain rafraîchissement de la stratégie (vérifiez avec
gpupdate /force) — le correctif doit alors être appliqué au niveau de la GPO. - Alternativement, supprimer l’utilisateur ou l’utilisatrice du groupe privilégié (puis se déconnecter et se reconnecter) résout également le problème.
Vérification
Après la mise à jour, le nouveau fichier update.log contient After checking IsUnpromptedElevation, useService=true et update.status affiche applied-service.
Vérifier les transferts BITS (Background Intelligent Transfer Service)
Firefox utilise BITS pour télécharger les mises à jour en arrière-plan.
Exécutez la commande PowerShell suivante :
Get-BitsTransfer |
Where-Object { $_.DisplayName -match 'mozilla' -or $_.RemoteName -match 'mozilla' } |
ForEach-Object {
$job = $_
foreach ($file in $job.FileList) {
[PSCustomObject]@{
DisplayName = $job.DisplayName
JobState = $job.JobState
BytesTransferredMB = [math]::Round($file.BytesTransferred / 1MB, 2)
BytesRemainingMB = [math]::Round(($file.BytesTotal - $file.BytesTransferred) / 1MB, 2)
ProgressPercent = if ($file.BytesTotal -gt 0) {
[math]::Round(($file.BytesTransferred / $file.BytesTotal * 100), 2)
} else { 0 }
RemoteURL = $file.RemoteName
LocalPath = $file.LocalName
}
}
}
→ Les éléments à vérifier
- JobState indique l’état actuel du transfert (transfert en cours, suspendu, terminé ou erroné).
- ProgressPercent indique la progression du téléchargement.
- RemoteURL indique l’URL utilisée par Firefox pour récupérer la mise à jour.
→ En cas de blocage du téléchargement
Si la progression n’avance pas ou si la tâche échoue, vérifiez que l’URL affichée dans RemoteURL n’est pas bloquée par votre réseau, votre pare-feu ou votre proxy.
Pour le confirmer, copiez et collez l’URL dans un navigateur et vérifiez si le téléchargement démarre correctement.
Lister les fichiers liés à Firefox dans C:\ProgramData
Les fichiers de mise à jour de Firefox sont téléchargés et stockés à l’emplacement suivant.
Exécutez la commande PowerShell suivante :
Get-ChildItem -Path "C:\ProgramData\Mozilla-*" -Recurse |
Select-Object @{ Name="Path"; Expression={$_.FullName} },
@{ Name="Type"; Expression={ if ($_.PSIsContainer) { "Directory" } else { "File" } } },
@{ Name="Size"; Expression={$_.Length} },
@{ Name="LastModified"; Expression={$_.LastWriteTime}
}
Cette commande permet de vérifier si les fichiers de mise à jour ont été téléchargés et d’identifier les fichiers incomplets ou bloqués.