Windows 10 – Windows 8 – Windows 7 – VISTA

Actualités, astuces et tutoriels sur Windows 10, Windows 8, Windows 7 et Windows Vista

Microsoft Gazelle : un concept de navigateur sécurisé

Publié par chantal11 le lundi 23. février 2009


static_top_graphicMSR, pour Microsoft Research, est une section un peu particulière de l’éditeur de Redmond. Des dizaines de chercheurs y travaillent sur des projets qui ne sont pas viables en tant que tels. Il s’agit plutôt d’électrons libres qui, si le développement avance bien, peuvent se retrouver en incubateur pour donner ensuite de véritables produits. C’est de MSR que sortit par exemple Singularity, un système d’exploitation entièrement neuf. Toute récemment, une équipe a présenté les résultats préliminaires d’un nouveau navigateur baptisé Gazelle.

Un système d’exploitation dans le système d’exploitation

Le fonctionnement de Gazelle est assez particulier. Tout d’abord, le noyau (kernel) de ce navigateur fonctionne dans un espace protégé. Le but de MSR avec ce projet est de considérer le logiciel comme un véritable système d’exploitation au sein d’un système d’exploitation. Disons, pour être plus exact, une machine virtuelle fonctionnant sur le système d’exploitation, puisque toute la structure est isolée. Il n’existe aucun moyen pour le contenu de communiquer avec le système, sauf s’il utilise une série d’appels bien définie.

On le comprend assez vite, Gazelle est focalisé sur la sécurité, pour couper les ponts des interactions entre le Web et le système local. On ne retrouve plus ici que des portes blindées et il faut pour le contenu montrer patte blanche pour les franchir. Dans ce document de Microsoft Reseach, Microsoft analyse les principes d’isolation que l’on trouve dans Chrome et Internet Explorer 8 qui, malgré ce que l’on pourrait penser en surface, ne fonctionnent pas de la même manière.

L’isolation dans Chrome et Internet Explorer 8 : insuffisante

Chrome a, dans les grandes lignes, un système d’isolation par site. Par exemple, si vous avez deux onglets ouverts, l’un sur « www.pcinpact.com » et l’autre sur « www.prixdunet.com », Chrome crée deux processus. Le plantage de l’un ne pourra pas entraîner l’autre. Par contre, si vos deux onglets sont « www.pcinpact.com/actu » et « www.pcinpact.com/forum », il n’y a qu’un seul processus. Pourquoi ? Parce que Chrome se réfère au domaine racine, en l’occurrence « www.pcinpact.com ».

Du côté d’Internet Explorer 8, on trouve aussi une isolation dans des processus, mais par onglet : tout ce que vous chargez dans un onglet unique est isolé dans un processus. On peut se dire ici que le résultat est meilleur, mais en fait pas vraiment : au sein d’un même onglet, si vous vous rendez sur « www.pcinpact.com » puis ensuite sur « www.prixdunet.com », les deux sites ne sont pas isolés l’un de l’autre.

Dans Chrome et Internet Explorer 8, on retrouve de plus un autre problème : les ressources tierces invoquées ou incrustées restent dans le processus en cours. Le problème devient une tentative malveillante volontaire quand le code de la page contient par exemple une balise iframe allant chercher du code depuis un autre site.

gazelle

Gazelle isole par comparaison absolument tout. À la base de la sécurité des navigateurs, on trouve la SOP, c’est-à-dire la « same-origin policy ». Au sein de cette politique de fonctionnement, on trouve un triumvirat : le protocole, le nom de domaine, le port de communication. Si un seul de ces paramètres n’est pas conforme, le DOM (Document Objet Model) n’autorisera par exemple pas les scripts associés à ces pages à fonctionner. La SOP, dans le cas de Gazelle, est étendu à l’intégralité des ressources que peut avoir à gérer le navigateur.

Isoler toutes les ressources

Exemple : une page Web contient un contenu Flash. Que l’on soit dans Chrome ou Internet Explorer 8, le résultat est le même, et le contenu Flash se retrouve isolé dans le même processus que le reste de la page. Dans Gazelle, le Flash est considéré comme une ressource à part qui va donc être isolé du reste de la page. Plus globalement, au sein du code source de la page, tous les éléments <object>, <embed>, <img>, et certains types de <input> sont considérés à la même hauteur qu’un <iframe>.

C’est le principe de base qui constitue le fonctionnement du navigateur. Une toute première version interne a été testée et permet de faire fonctionner correctement 19 des 20 sites les plus visités. Selon les propres termes de Microsoft, les performances sont acceptables, mais l’enjeu n’est pas là pour le moment, puisqu’il s’agit de rendre le concept de « Browser Kernel » viable et utilisable avant d’optimiser les performances.

Tous ceux que le sujet intéresse pourront se rendre sur ce document PDF présenté par Microsoft Research pour y consulter les premiers résultats des travaux entreprises.

PCInpact

Laissez une réponse

XHTML: Vous pouvez utiliser ces tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>