Multiprocessus, sandbox : Mozilla fait le point sur les évolutions de Firefox

Multiprocessus, sandbox : Mozilla fait le point sur les évolutions de Firefox

Même carcasse, nouveau moteur

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

22/12/2016 6 minutes
29

Multiprocessus, sandbox : Mozilla fait le point sur les évolutions de Firefox

Les trois dernières versions de Firefox ont installé Electrolysis chez bon nombre d’utilisateurs, mais beaucoup ne l’ont pas encore. Mozilla fait le point et détaille un peu plus ses ambitions pour les prochaines moutures, la route étant encore longue.

Electrolysis est le nom donné au projet de Mozilla pour la séparation du processus monobloc de Firefox en deux. Dans l’un, on trouve le moteur de rendu Gecko et l’ensemble des opérations servant à afficher une page. Dans l’autre, tout le reste, notamment tout ce qui touche à l’interface. La réactivité de Firefox est donc en hausse et le chargement est plus rapide, avec des pointes à 400 et 700 % de mieux dans certains cas.

Pour autant, on savait que ce projet allait prendre du temps et serait diffusé petit à petit, à cheval sur plusieurs versions. Pourquoi ? Parce que séparer ainsi les calculs en plusieurs processus posait de gros problèmes initialement aux extensions. Il a fallu donc faire évoluer les habitudes des développeurs pour préparer le terrain.

La montée en puissance du multiprocessus

Ainsi, Firefox 48 n’a activé Electrolysis que chez un nombre restreint d’utilisateurs au début, avant d’apparaître progressivement chez l’ensemble des personnes n’ayant aucune extension. Il s’agissait en effet de la cible prioritaire pour Mozilla, puisque la fonctionnalité ne pouvait alors pas être entravée. Environ la moitié de la masse totale des utilisateurs était alors concernée, montrant par la même occasion que l’utilisation des extensions n’est pas une règle systématique sur Firefox.

Firefox 49 est allé un cran plus loin en permettant d’activer Electrolysis sur les configurations possédant quelques extensions triées sur le volet. Mozilla indique que la télémétrie récupérée pendant les semaines suivantes a permis d’établir que tout se passait bien. Firefox 50 a donc agrandi la liste des extensions déclarées compatibles, continuant ainsi la progression chez le grand public.

Electrolysis chez (presque) tout le monde

Et maintenant ? Electrolysis entre désormais dans une phase plus floue, avec des résultats moins garantis. La prochaine mouture, Firefox 51, va activer la fonctionnalité chez la totalité des utilisateurs restants, à moins que l’une des extensions soit explicitement marquée comme « incompatible ». Auquel cas Electrolysis continuera à dormir en attendant des jours meilleurs sur ce type de configuration.

Mais ce projet, qui a nécessité bien des années pour être mis en place, n’est qu’une première étape. Avec l’annonce du futur moteur de rendu Quantum, on sait que les projets de Mozilla ont désormais une finalité commune. L’éditeur précise en effet que l’isolation des calculs de rendu dans un processus sera suivie d’une nouvelle phase de découpage, peut-être jusqu’à parvenir à un processus par onglet, comme le font Chrome et Edge par exemple.

Mozilla ne nie pas les avantages en termes de réactivité et de sécurité. Les développeurs vont cependant avancer progressivement, en activant très prochainement un deuxième processus de rendu dans les versions Nightly. Avant d’optimiser en effet Firefox pour les calculs parallèles, l’équipe veut déjà observer la répartition des calculs de rendu en deux lots. Des travaux qui doivent permettre à Firefox, en fin d’année prochaine, d’accueillir Quantum, pensé dès le départ pour les calculs parallèles. Gecko, présent depuis les débuts du projet Phoenix, prendrait donc une retraite méritée.

Après le multiprocessus, la nouvelle sandbox

Mais comme le précise l’éditeur, l’évolution vers les processus multiples s’accompagne pour Firefox d’un autre grand chantier : une nouvelle sandbox. Il s’agit pour rappel d’un espace isolé dans la mémoire, dans laquelle s’ébat joyeusement le navigateur en verrouillant tous les accès. Les données qui y sont traitées, affichées et exécutées ne peuvent pas en sortir, à moins d’une faiblesse dans le code, en d’autres termes une faille de sécurité. S’échapper de la sandbox est d’ailleurs devenu l’un des sports favoris des hackers participant à des concours tels que Pwn2Own.

Depuis Firefox 50, une nouvelle sandbox a été intégrée, pour l’instant dans la version Windows uniquement. L’éditeur indique qu’elle est encore « jeune » et continuera donc d’être renforcée au cours des prochains mois, pour la rendre beaucoup plus restrictive. Des versions Mac et Linux seront également ajoutées prochainement. Le travail s’est surtout porté pour l’instant sur les fondations qui permettront un véritable cadre strict.

Une année à examiner de près

2017 devrait être finalement l’année la plus importante pour Firefox depuis ses débuts. Le multiprocessus et la sandbox sont deux mécanismes modernes à côté duquel le navigateur est passé jusqu’à présent, alors que la concurrence les a utilisés comme bases pour leurs produits. Coincé, Mozilla n’a finalement pas eu d’autre choix que de se lancer à corps perdu dans des travaux de grande ampleur, d’autant plus que l’écosystème des extensions participait à cette sclérose.

Évidemment, les utilisateurs de Firefox devraient largement bénéficier de tous ces travaux. D’un autre côté, on peut se demander si les différences techniques entre les navigateurs ne se gomment pas au point d’obtenir pratiquement la même chose d’un produit à un autre. Chrome est passé par là et toute l’industrie s’est mise au diapason. Impossible pour Mozilla de le nier, tant le navigateur de Google a marqué les esprits, qu’il s’agisse d’un cycle de développement ou de simples éléments d’interface.

Il reste une philosophie à part

Mozilla a cependant une vraie carte à jouer, ne serait-ce qu’avec un navigateur open source accompagné par une politique de vie privée bien plus stricte que les gros concurrents de chez Google et Microsoft. Par ailleurs, l’éditeur a dans ses cartons un moteur de rendu flambant neuf, dont il promet des performances largement supérieures à celles de l’actuel Gecko. Les aficionados de Firefox suivront donc probablement ces évolutions de près.

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

La montée en puissance du multiprocessus

Electrolysis chez (presque) tout le monde

Après le multiprocessus, la nouvelle sandbox

Une année à examiner de près

Il reste une philosophie à part

Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

Fermer

Commentaires (29)


Il y a une liste des extensions (in)compatibles quelque part ?


Je me demandais la même chose.

 Ou la possibilité de tester si Electrolysis est activé sur notre navigateur ? En activant/désactivant des extensions on devrait être capable de voir laquelle bloque.


Ça devrait t’intéressè :http://arewee10syet.com/


Via about:support, on peut connaître l’état du multi-processus sur Firefox. Et pour savoir quelles extensions sont compatibles, il y a un site et pour savoir si celles installées le sont, il y a une extension.



Pour finir, Firefox 51 activera (normalement) par défaut le multi-processus, quelque soit les extensions installées.


Yes, uBlock Origin est compatible <img data-src=" />



Merci pour le lien ! Il faudrait l’ajouter à l’article <img data-src=" />


Je n’ai pas suivi l’actualité des navigateurs internet depuis un bon moment. Je ne pensais pas que Firefox était autant largué.


il n’est pas largué il est tout aussi performant que les autres.


En terme de sécurité il est largué depuis des années à tel point qu’il n’est même plus mis en compétition dans les concours de hacking… Pas de sandbox ni de multi-process depuis des années alors que les prémices de ces technologies sont apparu à l’époque d’IE7 sur Vista…



Aujourd’hui Edge a un ensemble de techniques de mitigation : Edge with a shadow stack (RFG), No executable JIT pages (ACG), CI, CFG, isolated in a hypervisor (WDAG) (https://mobile.twitter.com/dwizzzleMSFT/status/809436747310370816?s=01 )



Et la (https://googleprojectzero.blogspot.fr/2016/11/breaking-chain.html?m=1 ) l’une des dernières techniques de Chrome pour verrouiller sa sandbox en limitant les accès à Win32K








Vekin a écrit :



Il y a une liste des extensions (in)compatibles quelque part ?









Bouv a écrit :



Je me demandais la même chose.

&nbsp;Ou la possibilité de tester si Electrolysis est activé sur notre navigateur ? En activant/désactivant des extensions on devrait être capable de voir laquelle bloque.



le module “add-on compatibility reporter” a comme fonction secondaire de t’indiquer quelles extensions sont compatibles ou non et si electrosys est activé.



Ils ont des effort a faire la dessus c’est sur.https://tiptopsecurity.com/what-is-the-most-secure-web-browser/


Il y a encore beaucoup d’extensions incompatibles avec elertrolysis et pas forcément des inoconnus. WOT et disconnect sont 2 exemples d’add-on connus non compatibles avec electrolysis. Je me demande comment ils vont faire pour la 51. Sur les 11 extensions, j’en ai que 6 de compatibles et j’en ai aucune d’exotique très rare.


C’est en terme de respect de la vie privée que ça se corse avec chrome et edge. Je ne sais pas si chromium a les mêmes qualité que chrome niveau sécurité.


A partir du moment où j’utilise Facebook, Twitter et Google je sais déjà que j’ai un profil proposé en pâture au publicitaire alors ce qui compte le plus pour moi ce sont les techniques qu’utilisent Google et Microsoft pour contrer une classe complète d’attaque et pas juste sortir des patchs de sécurité tous les 3 jours sans jamais chercher à régler le problème à la base …


Je n’étais pas dans les 1 % éligibles.



🤕


C’est n’importe quoi. Quelle Mozillaberration !


Moi c’est Tab Mix Plus le problème



Pour Disconnect, tu peut utilisee uBlock Origin et choisir le filtre Disconnect à la place

&nbsp;

&nbsp;Et je te conseille de jeter Wot

&nbsp;

https://www.reddit.com/r/privacy/comments/5ayhkg/wot_web_of_trust_addon_logs_you…








RaoulC a écrit :



&nbsp;

&nbsp;Et je te conseille de jeter Wot

&nbsp;

https://www.reddit.com/r/privacy/comments/5ayhkg/wot_web_of_trust_addon_logs_you…





Plus rapide que moi ^^

WOT a était aussi enlever du FSD.









arno53 a écrit :



A partir du moment où j’utilise Facebook, Twitter et Google je sais déjà que j’ai un profil proposé en pâture au publicitaire alors ce qui compte le plus pour moi ce sont les techniques qu’utilisent Google et Microsoft pour contrer une classe complète d’attaque et pas juste sortir des patchs de sécurité tous les 3 jours sans jamais chercher à régler le problème à la base …





Sauf que je n’utilise pas facebook, twitter et&nbsp; j’utilise google de manière très limitée donc non pour moi le respect de la vie privée a autant d’importance que la sécurité. surtout que firefox ça reste un navigateur sécure.









RaoulC a écrit :



Moi c’est Tab Mix Plus le problème



Pour Disconnect, tu peut utilisee uBlock Origin et choisir le filtre Disconnect à la place

&nbsp;

&nbsp;Et je te conseille de jeter Wot

&nbsp;

https://www.reddit.com/r/privacy/comments/5ayhkg/wot_web_of_trust_addon_logs_you…





J’ai déjà ublock origin avec la liste disconnect en filtre mais disconnect permet de filtrer plus que cette liste donc est utile.



Pour wot je connais le problème mais la question n’est pas là. WOt était là pour souligner qu’encore bon nombre d’extensions ne sont pas compatibles avec electrolysis même les connues.



Malheureusement, je ne peux toujours pas profiter de e10s. Ce n’est pas uBlock Origin qui est en faute visiblement, mais l’extension Mega ou Textarea Cache, je ne sais pas.


Tu peux le forcer dans Firefox.


Avec un risque que ça plante avec une des extensions, non ?


Mais pas “Video DownloadHelper”.


C’est le risque. <img data-src=" />&nbsp;


Est-il prévu que Firefox soit téléchargeable directement à partir du Windows Store ?








mightmagic a écrit :



J’ai déjà ublock origin avec la liste disconnect en filtre mais disconnect permet de filtrer plus que cette liste donc est utile.




Pour wot je connais le problème mais la question n'est pas là. WOt était là pour souligner qu'encore bon nombre d'extensions ne sont pas compatibles avec electrolysis même les connues.







uBlock Origin permet aussi de filtrer les trackers, avec des listes adéquates, aussi je ne voit pas ce qu’il fait de moins que disconnect. Mais jme trompe peut-être :)



C’est cool que tu le saches pour Wot,&nbsp; dans ce cas peut-être ais-je aidé un INpactien qui aurais loupé la nouvelle et qui m’aurait lut, qui sait?&nbsp; <img data-src=" />



En tout cas en forcant e10s j’ai des soucis de compatibilité entre CTR et Tab Mix Plus. Rien de bien grave mais c’est un peu handicapant



Video DownloadHelper est compatible, vérifié à l’instant.


J’attends ça avec impatience, histoire de me remettre sur ce navig.

J’ai arrêté d’utiliser Firefox y a 23 mois pour passer à Opéra (de manière temporaire). Le navigateur devenait vraiment trop largué (et lourd) techniquement… Dommage car quelques features abstentes sur Opéra le sont sur Firefox.


voici les extension que j’ai l’habitude d’utiliser les qu’elles sont incomptabible avec electrotruc ???



http://image.noelshack.com/fichiers/2016/51/1482580711-capture-d-ecran-110.png

http://image.noelshack.com/fichiers/2016/51/1482580711-capture-d-ecran-111.png