Sécurité : Rust s’invite dans le multimédia de Firefox 48

Rust, le langage de programmation de nouvelle génération de Mozilla, arrive dans Firefox. À la clé, une meilleure sécurité.

Firefox 48 proposera le premier composant écrit avec le langage de programmation Rust. Il se chargera de gérer les documents multimédias affichés par la version desktop du navigateur web.

Rappelons que Rust se veut une alternative au classique C++, capable de faciliter la mise en place de code exploitant tous les cœurs d’un processeur, et en mesure d’améliorer la sécurité des applications, via des techniques empêchant les dépassements de tampon et autres erreurs liées à la gestion de la mémoire vive.

1,1 milliard de vidéos déjà lues avec succès

« Chaque fois qu’un navigateur web joue une vidéo apparemment inoffensive, il lit des données livrées dans un format complexe et créé par quelqu’un que vous ne connaissez pas. Et il se trouve que ces formats de médias sont connus pour avoir été utilisés pour tromper les décodeurs en exposant des failles de sécurité qui exploitent les bugs de gestion de la mémoire présents dans les navigateurs web », explique Dave Herman, chercheur principal et directeur de la stratégie au sein de Mozilla Research.

Avec Rust, ces problèmes potentiels s’envolent, sans qu’il soit nécessaire d’utiliser des techniques comme l’ajout d’un bac à sable à l’application. Dave Herman note que le code Rust propose des résultats identiques à ceux obtenus en C++. Les données de télémétrie de la version de test de Firefox 48 montrent que sur plus d’un milliard de lectures de vidéos en MP4, toutes ont été décodées avec succès par ce nouveau composant.

Il est donc déclaré bon pour le service et sera présent dans la mouture définitive de Firefox 48, dont la sortie est programmée pour le 2 août 2016.

Rust 1.10 livré aux développeurs

Sur le front du langage de programmation Rust, une nouvelle version vient d’être présentée, la 1.10. Avec 1276 correctifs intégrés, pour plus de stabilité et de performances.

Quelques nouveautés sont également de la partie. Une option permet de stopper l’application lorsqu’un évènement panic! est rencontré. « Rappelez-vous que panic! est réservé aux problèmes inattendus, rappellent les développeurs. Pour de nombreuses applications, avorter est alors un choix raisonnable. Avec un abandon, moins de code est généré, ce qui signifie que le binaire est plus petit et le temps de compilation plus court. » Le poids du code généré et le temps de compilation sont tous deux réduits d’environ 10 % grâce à cette option.

Autre avancée, le type cdylib, un format de librairie qui permettra de faciliter la création de code Rust destiné à être utilisé par un autre langage de programmation. Un élément qui favorisera la réécriture de pans de code C++ en Rust et qui devrait donc rendre de grands services aux développeurs de Firefox.

Rappelons que Rust 1.0 avait été présenté mi-mai 2015. Voir à ce propos notre précédent article « Rust 1.0 : le langage de programmation des projets critiques ».

Source silicon.fr

Publicités

Servo de Mozilla arrive en test

Mozilla en parlait depuis plusieurs mois. Son navigateur de « nouvelle génération » arrive enfin, pour l’instant en version de test.

Le nouveau Firefox se dévoile petit à petit avec cette version démo qui allie le moteur de rendu Servo à l’interface Browser.html.

On ne compte plus les améliorations au rendez-vous. Cette nouvelle mouture de Firefox tire mieux profit des systèmes multi-cœurs, ce qui améliore grandement ses performances et l’utilisation du langage Rust permet d’améliorer sa sécurité.

Même si tout n’est pas encore opérationnel, l’équipe de Firefox a souhaité publier rapidement afin d’en faire profiter le public. Toujours en test donc, cette version est disponible pour Linux et Mac OS X, pas encore pour Windows ni Android.

Pour la version Android, il reste quelques bugs important encore, alors que pour Windows, la version devrait être disponible assez rapidement.

Liens :

L’annonce
Téléchargement
La page de Servo

Source toolinux.com

Le support multicœur au menu de Firefox 48

Interface utilisateur et rendu des pages web fonctionneront dans deux threads séparés sous Firefox 48. Une avancée soumise toutefois au bon vouloir des extensions.

Firefox 48 est maintenant accessible en version bêta. La prochaine mouture majeure du navigateur web de la Fondation Mozilla devrait intégrer certaines technologies issues du projet Electrolysis (e10s).

Le butineur sera capable d’utiliser en partie la puissance des machines multicœurs, en séparant le rendu de son interface utilisateur de celui des pages web. Une solution qui permettra d’améliorer les performances, mais aussi le niveau de sécurité de l’application, en isolant les pages web du reste de Firefox. Ceci aura toutefois un prix en matière de besoins en mémoire vive, estimé entre +10 % et +20 %.

La technologie Electrolysis sera activée par défaut sur un certain nombre de configurations jugées compatibles : 1 % pour Firefox 48, puis 100 % pour Firefox 49. Les configurations compatibles sont celles n’utilisant pas de modules complémentaires ou les fonctions d’accessibilité, ce qui limitera l’application de ce paramètre dans la pratique.

De sérieuses limitations

Il sera possible de forcer l’utilisation de cette fonctionnalité sur les configurations utilisant des modules complémentaires. Attention toutefois, car elle pourra être automatiquement désactivée lorsque des extensions incompatibles sont installées. Ce site propose une liste de modules complémentaires courants et leur degré de compatibilité avec e10s.

Notez que Firefox utilise d’ores et déjà certaines fonctionnalités issues d’e10s pour exploiter la puissance des configurations multicœurs. C’est ainsi le cas avec les greffons (comme Adobe Flash) et le rendu de vidéos (par exemple en VP9).

Source silicon.fr

Plus de sécurité pour Firefox 46

Firefox 46 vient d’être dévoilé par Mozilla et cette version dispose de plusieurs nouveautés intéressantes, dont une meilleure sécurité pour Javascript, et le passage à GTK3 pour la version Linux.

Firefox 46 est désormais disponible pour Windows, Mac OS X et Linux, ainsi que pour Android. La principale nouveauté est l’amélioration du moteur Javascript, qui permettra de protéger le code just-in-time, et qui permet également l’utilisation de page mémoire en lecture seule pour éviter l’insertion de code par des pirates.

Autre évolution, des gains en performance ainsi qu’en stabilité avec des corrections sur WebRTC. Sous Linux, afin de mieux s’intégrer au bureau, GTK3 a été intégré. Avec cette version, il ne sera désormais plus possible d’utiliser Firefox Sync 1.1 pour synchroniser ses différents périphériques, il faudra obligatoirement obtenir un compte Firefox Account.

La version mobile a aussi été revue, en améliorant notamment l’accès à certaines fonctionnalités directement depuis la page d’accueil.

Plusieurs outils pour développeurs permettent d’analyser l’utilisation de la mémoire, avec la vue Dominator, ou encore Allocations.

Liens :

Le site de Firefox
Les notes de version
La page de téléchargements

Source toolinux.com

Firefox 3.0 pour iOS protège le gestionnaire de mots de passe avec Touch ID

image dediée
 

Mozilla vient de publier la version 3.0 de Firefox pour iOS. Outre plusieurs améliorations bienvenues, le navigateur mobile sait maintenant protéger son gestionnaire de mots de passe avec Touch ID. si aucun lecteur d’empreintes n’est présent, un code sera utilisé.

Mozilla paraît définitivement sérieux au sujet de son petit navigateur pour iOS. Firefox 3.0 capitalise sur les améliorations rapides apportées déjà récemment par les moutures 2.0 et 2.1. Pas le temps de se reposer : la nouvelle mouture vient combler un manque important en termes de sécurité, la protection du gestionnaire de mots de passe.

Le gestionnaire permet pour rappel de concentrer l’ensemble des identifiants et mots de passe utilisés. Si un compte Firefox est présent, il rapatrie automatiquement tous ceux qui ont été utilisés sur d’autres appareils, notamment les ordinateurs. Le gestionnaire peut donc contenir une véritable mine, que n’importe qui saisissant le smartphone de l’utilisateur pouvait aller consulter.

La protection du gestionnaire passe idéalement par Touch ID, le capteur d’empreintes digitales que l’on trouve sur les iPhone 5s, 6, 6 Plus, 6s, 6s Plus et SE, ainsi que les iPad Air 2, mini 3, mini 4 et Pro. Le fonctionnement est celui qu’on imagine : on active l’option dans les paramètres, puis on définit un code de 4 chiffres avant de cocher « Utiliser Touch ID ». Le code servira en cas de problème de reconnaissance de l’empreinte, ou tout simplement si l’on ne possède aucun capteur. Ensuite, chaque consultation du gestionnaire demandera un déverrouillage.

firefox ios touch idfirefox ios touch idfirefox ios touch idfirefox ios touch id

Pour le reste, et outre l’arrivée d’une version danoise, quelques autres nouveautés sont à noter. Par exemple, Firefox 3.0 doit beaucoup mieux gérer les liens profonds vers des applications internes comme Plans dans iOS, ou vers des applications tierces telles que Twitter. Les cinq vignettes suggérées par défaut se basent maintenant sur le Top 5 d’Alexa, mais il est également possible de les supprimer. Enfin, l’autocomplétion dans le champ d’adresse inclut les domaines par défaut.

Comme d’habitude, la version se récupère depuis l’App Store. Mozilla en maîtrise manifestement toujours le poids puisque l’application ne dépasse pas les 34 Mo.

Télécharger Firefox 3.0 pour iOS

Source nextinpact.com

Firefox : la Developer Edition 47 prépare l’arrivée des WebExtensions

image dediée

Mozilla a mis à disposition la Developer Edition 47 de Firefox. Au programme, la possibilité d’émuler un user agent sur n’importe quelle page, ou encore des améliorations pour l’inspecteur de stockage et les thèmes.

La nouvelle Developer Edition de Firefox est proposée au téléchargement depuis hier soir. Estampillée 47, il s’agit pour rappel d’une Nightly spécifique, accompagnée de nombreux outils dédiés au développement web.

De l’émulation pour les user agents

Comme toujours avec ce type de version, les nouveautés se concentrent sur la facilité pour les développeurs de faire leur travail. Mozilla a donc ajouté la possibilité d’émuler n’importe quel user agent sur une page web. Un champ spécifique « Custom User Agent » est maintenant disponible, permettant par exemple d’inscrire celui d’un navigateur mobile, afin d’en tester le rendu.

Parmi les autres nouveautés, signalons un renforcement de la « dominator view » pour traquer plus efficacement les éventuelles fuites mémoire, l’arrivée dans l’inspecteur de stockage de la gestion du cache storage et d’un champ de recherche pour filtrer les résultats, plusieurs modification globales de l’interface des outils pour les rendre plus agréables d’utilisation, ou encore un déplacement de l’outil réseau en haut pour le rendre plus accessible.

Une interface mieux adaptée pour les WebExtensions

Cette version 47 prépare également le terrain des WebExtensions. Les popups de débogage sont donc plus visibles, avec la possibilité de les verrouiller pour ne pas qu’elles disparaissent une fois qu’elles ont été cliquées. Cette fonctionnalité s’active dans la boite d’outils du navigateur, via une icône représentant quatre carrés, située en haut à droite.

Enfin, deux composants disparaissent : la vue 3D et l’inspecteur de polices. Le premier est tout simplement retiré car il entrait en conflit avec les processus multiples, activés désormais dans la Developer Edition (voir notre actualité à ce sujet). Le second peut par contre être affiché à nouveau en cherchant la préférence « devtools.fontinspector.enabled » dans le « about:config ».

Télécharger Firefox Developer Edition 47

Source nextinpact.com