IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Mozilla revient sur la panne qui a affecté les modules complémentaires de son navigateur Firefox
Et donne des détails techniques

Le , par Stéphane le calme

268PARTAGES

12  0 
Récemment, Firefox a eu un incident dans lequel la plupart des add-ons ont cessé de fonctionner. Cela était dû à une erreur de Mozilla : la fondation a laissé expirer l'un des certificats utilisés pour signer les add-ons, ce qui a eu pour effet de désactiver la grande majorité des add-ons.

Maintenant que le problème est résolu pour la plupart des utilisateurs et que la plupart des add-ons ont été restaurés, Mozilla a souhaité expliquer en détail ce qui est arrivé et pourquoi ainsi que la façon dont la fondation a corrigé son erreur.

Modules complémentaires et signature de modules complémentaires

Firefox prend en charge un mécanisme d'extension appelé « add-ons » (modules complémentaires). Les modules complémentaires permettent aux utilisateurs d’ajouter à Firefox des fonctionnalités tierces qui étendent les fonctionnalités proposées par défaut. Il existe actuellement plus de 15 000 add-ons Firefox dotés de fonctionnalités allant du blocage d'annonces à la gestion de centaines d'onglets.

Firefox nécessite que tous les add-ons installés soient signés numériquement. Cette exigence vise à protéger les utilisateurs contre les add-ons malveillants en imposant un minimum de révision par le personnel de Mozilla. Avant d'introduire cette exigence en 2015, Firefox avait de sérieux problèmes avec les add-ons malveillants.

La façon dont fonctionne la signature complémentaire est que Firefox est configuré avec un « certificat racine » préinstallé. Cette racine est stockée hors ligne dans un module de sécurité matérielle (HSM - hardware security module). Il est utilisé pour signer un nouveau « certificat intermédiaire » qui est conservé en ligne et utilisé dans le cadre du processus de signature pendant quelques années. Lorsqu'un module complémentaire est présenté à la signature, Mozilla génère un nouveau « certificat d'entité finale » temporaire et le signe à l'aide du certificat intermédiaire. Le certificat d'entité finale est ensuite utilisé pour signer le module complémentaire lui-même. Visuellement, cela ressemble à ceci:


Notez que chaque certificat a un “sujet” (à qui le certificat appartient) et un “émetteur” (le signataire). Dans le cas de la racine, il s'agit de la même entité, mais pour d'autres certificats, l'émetteur d'un certificat est le sujet du certificat qui l'a signé.

Un point important ici est que chaque add-on est signé par son propre certificat d'entité finale, mais presque tous les add-ons partagent le même certificat intermédiaire. C'est ce certificat qui a rencontré un problème : chaque certificat a une période de validité pendant laquelle il est valide. Avant ou après cette fenêtre, le certificat ne sera pas accepté et un add-on signé avec ce certificat ne pourra pas être chargé dans Firefox. Malheureusement, le certificat intermédiaire que Firefox utilisait a expiré le 4 mai et, immédiatement, tous les add-ons signés avec ce certificat ne pouvaient plus être vérifiables, ce qui fait que Firefox n’était plus en mesure de les charger.

« Bien que tous les ajouts aient expiré vers minuit, l’impact de la panne n’a pas été immédiatement ressenti. La raison en est que Firefox ne vérifie pas en permanence la validité des add-ons. Au lieu de cela, tous les add-ons sont vérifiés environ toutes les 24 heures, l'heure de la vérification étant différente pour chaque utilisateur. Le résultat est que certaines personnes ont immédiatement rencontré des problèmes, d’autres seulement beaucoup plus tard. Chez Mozilla, nous avons pris conscience du problème le vendredi 3 mai vers 18 heures, heure du Pacifique. Nous avons immédiatement constitué une équipe chargée de tenter de résoudre le problème ».

Limiter les dommages

Une fois que Mozilla a compris ce à quoi elle étions confrontés, la fondation a pris plusieurs mesures pour éviter que la situation ne s'aggrave.

Tout d’abord, elle a la signature de nouveaux add-ons. C'était raisonnable à ce moment car les signatures étaient effectuées sur Firefox avec un certificat qui était expiré. Rétrospectivement, la fondation reconnaît qu’abandonner les signatures aurait pu fonctionner. Cependant, si elle avait opté pour cette solution, ce chemin allait alors interférer avec une atténuation qu’elle a envisagé plus bas mais n’a finalement pas utilisé).

Ensuite, Mozilla a immédiatement mis en place un correctif qui empêchait de valider à nouveau les signatures sur les add-ons. L’idée ici était d’éviter d’avoir des utilisateurs désemparés parmi ceux qui n’avaient pas encore vu une nouvelle validation de leur certificat. Mozilla l’a fait avant de disposer de tout autre correctif et l'a supprimé dès lors que les correctifs étaient disponibles.

Travailler en parallèle

« En théorie, résoudre un problème comme celui-ci semble simple : créer un nouveau certificat valide et publier à nouveau chaque module complémentaire avec ce certificat. Malheureusement, nous avons rapidement déterminé que cela ne fonctionnerait pas pour plusieurs raisons:

Il existe un très grand nombre d’add-ons (plus de 15 000) et le service de signature n’est pas optimisé pour la signature en bloc. Par conséquent, une nouvelle signature de chaque add-on prendrait plus de temps que nous le souhaitions.
Une fois les add-ons signés, les utilisateurs devraient en obtenir un nouveau. Certains modules complémentaires sont hébergés sur les serveurs de Mozilla et Firefox les mettrait à jour dans les 24 heures, mais les utilisateurs devraient mettre à jour manuellement les modules installés à partir d’autres sources, ce qui ne serait pas très pratique.


« Au lieu de cela, nous nous sommes attachés à essayer de développer un correctif que nous pourrions fournir à tous nos utilisateurs avec une...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 11/05/2019 à 13:34
Citation Envoyé par edrobal Voir le message
Firefox vous empêche d'installer des modules non signés et désactive les modules non signés déjà installés.

C'est cela qui m'insupporte. Qu'on m'informe sur les risques d'accord, que l'on me considère comme inapte à juger, c'est Big Brother. On n'est plus maître de sa machine.
99% des users sont des gens qui n'ont absolument aucune notion de sécurité et l'ensemble des médias leur tomberaient dessus si ils ne mettaient pas ce genre de balises en place.

Ta réaction est parfaitement puérile et les big brothers ce sont les extensions qui sont mises en ligne pour rassembler des datas en background ou miner du bitcoin. En tant qu'utilisateur averti il t'est loisible de désactiver les sécurités et de t'exposer à toutes sortes de merdes mais ne fais pas de ton cas une généralité.
7  1 
Avatar de nerack
Membre à l'essai https://www.developpez.com
Le 10/05/2019 à 21:27
Dire que la plupart des ceux qui trainent sur ces forums sont des devs pros ou non... C'est dément!
3  0 
Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 11/05/2019 à 11:22
Oui bon, ils ont eu un gros bug et ils l'ont réparé, ça arrive, pas la peine non plus d'en faire tout un foin.
2  1 
Avatar de
https://www.developpez.com
Le 10/05/2019 à 23:23
L'équipe Mozilla a très bien réagi et dans un bref délai !
Je pense que beaucoup ne mesure pas l'ampleur de la panne, et forcément difficilement prévisible, un navigateur ça représente tellement de choses à penser..

Merci Firefox ! Merci developpez.net pour résumé tous ces croustillants détails
0  0 
Avatar de Neckara
Inactif https://www.developpez.com
Le 11/05/2019 à 12:38
Il est parfaitement possible d'installer des extensions en dehors du store…
0  0 
Avatar de Neckara
Inactif https://www.developpez.com
Le 11/05/2019 à 13:13
Citation Envoyé par edrobal Voir le message
Je n'ai jamais pu. Firefox bloque. J'ai essayé les solutions proposées et aucune n'a fonctionné.
De manière temporaire, about:debugging marche très bien.
Pour quelque chose de plus durable, tu peux aussi aller faire signer de manière automatique et en quelques secondes une WebExtension sur AMO.

Dans les versions ESR, Developper Edition et Nightly, tu peux aussi désactiver la vérification de la signature dans about:config.
0  0 
Avatar de tes49
Membre confirmé https://www.developpez.com
Le 15/05/2019 à 13:42
Salut

Pour les mécontents, ce n'est pas le choix qui manque en navigateurs web...

Perso, je n'ai pas eu de problème très longtemps avec les extensions (quand je vois qu'il y à une personne qui ne pas savoir ce qu'est une extension !) et même pas eu les extensions désactivées sur de vieilles versions de Firefox, dont la ESR 52* (contrairement à d'autres personnes !).
0  0 
Avatar de sevyc64
Modérateur https://www.developpez.com
Le 20/05/2019 à 22:39
Les personnages et les situations de ce récit étant purement fictifs, toute ressemblance avec des personnes ou des situations existantes ou ayant existé ne saurait être que fortuite.


Ou pas !
0  0 
Avatar de pmisu78
Candidat au Club https://www.developpez.com
Le 24/05/2019 à 18:47
Ca semble mieux fonctionner effectivement
0  0 
Avatar de Picasso11
Nouveau Candidat au Club https://www.developpez.com
Le 11/05/2019 à 9:26
« Nous n'étions pas sûrs que l'un ou l'autre fonctionnerait, nous avons donc décidé de les poursuivre en parallèle et de déployer le premier qui semblait vouloir fonctionner. À la fin, nous avons fini par déployer le deuxième correctif, le nouveau certificat ».
Nous n'étions pas sûrs que l'un ou l'autre fonctionnerait
C'est pas très rassurant ça.
0  1