Des scientifiques de l’UCL (University College of London), Stanford Engineering, Google, Chalmers et Mozilla Research ont construit un nouveau système qui protège la vie privée des utilisateurs d’Internet, tout en augmentant la flexibilité pour les développeurs web de créer des applications pour Internet qui combinent des données provenant de différents sites Web, améliorant considérablement la sécurité de la navigation sur le web.
Le système, «Confinement with Origin Web Labels » ou COWL, fonctionne avec Firefox de Mozilla et la version open-source les navigateurs Chrome de Google et empêche le code malveillant dans un site Web de récupérer des informations sensibles vers des tiers non autorisés, tout en permettant qu’un code dans un site Web affiche du contenu provenant de divers sites Web – une fonction essentielle pour les applications modernes, riches en fonctionnalités Web.
La sécurité sur Internet
Des tests de prototypes de COWL pour les navigateurs Chrome et Firefox montrent que le système fournit une sécurité renforcée sans ralentir sensiblement la vitesse de chargement des pages web. Suite à son annonce d’aujourd’hui, COWL sera disponible gratuitement au téléchargement et à son utilisation dès 15 Octobre à partir de http://cowl.ws.
L’équipe qui l’a développé, y compris deux doctorants de Stanford (en collaboration avec Mozilla Research) et un doctorat récemment diplômé de l’UCL, espère que COWL sera largement adopté par les développeurs web.
Actuellement, la vie privée des utilisateurs du Web peut être compromise par du code JavaScript malveillant caché dans les sites Web apparemment légitimes. L’exploitant du site web peut avoir incorporé le code obtenu par ailleurs dans son site Web sans se rendre compte que le code contient des bugs ou est malicieux. Ce code peut accéder à des données sensibles dans les mêmes ou autres onglets du navigateur, permettant aux parties non autorisées d’obtenir ou de modifier des données à l’insu de l’utilisateur.
COWL permet à la fois d’assurer la vie privée de l’utilisateur et la flexibilité pour le développeur d’applications Web. La réalisation de ces deux objectifs, qui sont souvent en opposition dans de nombreux designs de système, est l’un des principaux défis de la recherche sur la sécurité des systèmes informatiques.
Pour le professeur Brad Karp, co-auteur de cette solution : «Le nouveau système fournit une propriété appelée« confinement »qui est connue depuis les années 1970, mais s’avère difficile à réaliser dans des systèmes pratiques comme les navigateurs web. COWL confine les programmes JavaScript qui s’exécutent dans le navigateur, comme dans des onglets distincts.
Si un programme JavaScript intégré au sein d’un site Web lit les informations fournies par un autre site web – légitimement ou non – COWL permet aux données d’être partagées, mais restreint par la suite, l’application qui reçoit l’information de communiquer les données vers des tiers non autorisés. Par conséquent, le site qui partage des données maintient un contrôle sur elles, même après le partage des informations dans le navigateur « .
Co-auteur de la solution, le professeur David Mazières (Université de Stanford Computer Science) précise: «Les mécanismes de sécurité pour le Web doivent s’adapter à l’évolution rapide d’Internet. Les mesures actuelles, telles que la politique de l’origine même (SOP : Some Origin Policy), fonctionne en arrêtant les programmes JavaScript intégrés dans un site Web – ou malveillants – de lire les données hébergées par un site Web distinct.
Cette approche fragile ne fonctionne pas pour les applications modernes dits «mashup» qui combinent l’information à partir de plusieurs sites Web. Essentiellement, le SOP ne s’adapte pas face au nombre de sites web qui sont construits aujourd’hui. Et les tentatives antérieures d’affaiblir le SOP pour permettre ce genre de partage, comme avec le CORS (Cross-Origin Resource Sharing), sont inopérantes face au code malveillant qui récupèrent des données sensibles vers des tiers non autorisés. «
Lors de la construction d’un site web moderne, les développeurs Web intègrent le code de la bibliothèque JavaScript écrite par des auteurs tiers aux intentions peu avouables. L’étude cite des mesures qui indiquent que 59% du 1er million des meilleurs de sites Web et 77% des meilleurs 10000 sites web intègrent une bibliothèque JavaScript écrit par un tiers. L’équipe dit qu’une telle inclusion de bibliothèques JavaScript est dangereuse, car bien que le code inclue des fonctionnalités que les développeurs de sites Web veulent, il pourrait également contenir du code malveillant qui vole les données de l’utilisateur du navigateur. Dans de tels cas, SOP ne peut pas protéger les données sensibles, dès lors que la bibliothèque fournie est hébergé par le même site Web à l’origine.
Pour le professeur Karp: «En bloquant la construction d’applications Web qui synthétisent le contenu de plusieurs sites web, le SOP oblige effectivement les développeurs web à faire des choix de conception qui menace la vie privée des utilisateurs. C’est un problème que nous avons résolu avec COWL.
« Par exemple, une application Web utile serait de permettre aux utilisateurs de vérifier qu’ils ne sont pas surchargés d’articles qu’ils ont commandés sur Amazon. L’application devrait être capable de récupérer de l’information du compte bancaire du client et d’Amazone, concilier les deux, et présenter le résultat dans le navigateur. Pour ce faire, un développeur web aurait besoin d’écrire du code qui intègre les données à partir du site Web de la banque avec des données à partir du site Web d’Amazon, mais le SOP bloquerait cela, dès lors que les deux sources de données sont hébergés par des noms de domaine différents.
Les développeurs de sites Web d’aujourd’hui contournent cela en écrivant une application qui demande à l’utilisateur les identifiants de leur banque et ceux pour la connexion sur Amazon, de sorte qu’ils peuvent se connecter à la fois aux services et recueillir des informations comme si c’était l’utilisateur. Cela compromet clairement la vie privée de l’utilisateur, car le fournisseur de l’application accèdent complètement au système de banque en ligne de l’utilisateur et à son compte sur Amazon « .
Pour Deian Stefan, étudiant doctorant sur le projet à Stanford: «Ce que nous avons accompli avec COWL est un système qui permet aux développeurs web de créer des applications riches en fonctionnalités qui combinent des données provenant de différents sites Web sans demander que les utilisateurs partagent leurs informations de connexion directement avec les applications Web de parties tierces, tout en assurant que les données sensibles de l’utilisateur vues par une telle demande ne quitte pas le navigateur. Les développeurs web et les utilisateurs y gagnent. «
L’équipe de recherche a montré comment utiliser COWL pour bâtir quatre applications auparavant impossibles à atteindre avec une forte vie privée, y compris un éditeur chiffré de document, une application mashup tiers, un gestionnaire de mot de passe, et un site Web qui inclut toute une bibliothèque de partie tierce non approuvée.
http://www.ucl.ac.uk/news/news-articles/1014/061014_COWL