Firefox ESR ( Extended Support Release )

Cf http://www.ssi.gouv.fr/IMG/pdf/NP_NavigateurSecurise_FireFox.pdf

Mozilla publie une version ESR (Extended Support Release) de Firefox. Chaque version de Firefox ESR est maintenue pendant environ 1 an et n’a pour seules mises à jour que les correctifs de sécurité. Cette version de Firefox est destinée aux entités qui nécessitent un support étendu pour un déploiement en masse, évitant ainsi d’avoir à gérer des évolutions fréquentes du navigateur.
Le pdf indique avantages/desavantages de l'un et l'autre en p 4.

Firefox ne prend pas nativement en charge la configuration par stratégies de groupes (GPO).

Choix des plugin (extensions, moteurs de rch, themes...)

Les plugins Firefox ne peuvent être développés qu’à partir de l’interface de programmation NPAPI (Netscape Plugin Application Programming Interface). Cette architecture, qui date de Netscape, n’est pas sécurisée et exécute les plugins avec le niveau de privilège de l’utilisateur. Bien qu’il soit possible d’exécuter certains plugins dans un processus séparé (le plugin-container), cette séparation ne protège que le processus du navigateur d’un éventuel arrêt brusque de fonctionnement d’un plugin. Une vulnérabilité affectant un plugin permet en revanche de compromettre la session ou le système. Le plugin Flash Player fait toutefois exception en intégrant un mécanisme de bac à sable qui lui est propre (« Mode Protégé de Flash Player pour Firefox »). Le processus Flash Player exécuté dans le plugin-container ne sert alors qu’à instancier des processus enfants auxquels s’appliquent des restrictions de sécurité plus importantes. Le plugin Flash continue toutefois de faire l’objet de vulnérabilités critiques.
L’ajout, la mise à jour, et la suppression de plugins pour Firefox de manière centralisée peut se faire simplement par base de registre et par GPP (Group Policy Preferences).

Le mécanisme d’extension rend possible l’écriture de programmes (extensions) en langage interprété (XUL ou JavaScript entre autres) permettant l’ajout de fonctionnalités ou la personnalisation du
navigateur. Contrairement aux plugins qui sont des programmes compilés, les extensions s’exécutent dans le processus du navigateur et sans système de permission permettant de restreindre les libertés qui leur sont accordées.
L’ajout, la mise à jour et la suppression d’extensions pour Firefox de manière centralisée peut se faire simplement dans la base de registre et par GPP (Group Policy Preferences).

SSL/TLS et certificats

Firefox a comme particularité d’utiliser ses propres bibliothèques de gestion des échanges sécurisés client/serveur développées par la fondation Mozilla (bibliothèques NSS, Network Security Services), ce qui lui permet de disposer par exemple de son propre magasin de certificats et de sa propre liste de CRL (listes de révocations de certificats). Il est ainsi possible d’appliquer des restrictions spécifiques au navigateur sur certains certificats sans que cela ne s’applique au système d’exploitation dans son ensemble, ce qui le différencie d’autres navigateurs.
Il est également possible de restreindre simplement les versions de protocoles SSL/TLS ainsi que les suites cryptographiques utilisées. Cette indépendance vis-à-vis du mécanisme fourni par le système  d’exploitation lui confère une plus grande portabilité et une souplesse dans sa configuration SSL/TLS mais se traduit en contrepartie par une démarche de sécurisation plus complexe.

Désactiver l’utilisation de SSL et n’autoriser que les protocoles TLS v1.1 et supérieures (la v1.0 étant vulnérable). Pour aller plus loin, il est également possible de restreindre les suites cryptographiques utilisables en désactivant celles reposant sur des algorithmes obsolètes comme RC4

Les informations de sécurité relatives aux certificats sont stockées, pour chaque profil firefox, dans 3 fichiers :
cert8.db  (objets accessibles publiquement : certificats, CRLs, enregistrements S/MIME);
key3.db   (clés privées, mots de passe);
secmod.db (informations de configuration des modules de sécurité)

L’accès aux fichiers key3.db et cert8.db non chiffrés d’un profil Firefox permet la récupération et la réutilisation des certificats utilisateurs qu’ils contiennent. Tout compte disposant de droits administrateurs sur un ordinateur a la possibilité de récupérer l’ensemble des fichiers key3.db et cert8.db qui y sont stockés (voire tout utilisateur non privilégié dans le cas d’un système de fichiers FAT32).
La confidentialité des données utilisateurs n’est donc pas assurée dès lors que ces fichiers ne sont pas chiffrés. La définition d’un mot de passe principal déclenche le chiffrement du fichier key3.db par algorithme DES-CBC avec une clé dérivée de ce mot de passe. La sécurité apportée par une telle mesure reste modérée, des outils performants permettent de rapidement retrouver ce mot de passe maître par force brute.

Dès lors que des certificats utilisateurs sont stockés dans les magasins de certificats de Firefox, il est recommandé d’assurer la sécurité de leurs conteneurs de clés privées (fichiers key3.db) par chiffrement

Tout utilisateur de Firefox peut aussi ajouter des certificats serveurs et des autorités de confiance dans son propre magasin de certificats. Selon le contexte d’utilisation du navigateur, il peut donc être important de mettre en œuvre des mesures techniques permettant de maîtriser les magasins de certificats des profils Firefox et de s’assurer de leur conformité vis à vis de la stratégie de l’entité.

Maîtriser les magasins de certificats des profils Firefox et notamment les autorités de certification racines de confiance et les certificats serveurs qui y sont configurés.

Le gestionnaire de mots de passe de Firefox permet de mémoriser les mots de passe saisis dansles formulaires Web (utilisation d’un « mot de passe principal » permet de chiffrer les mots de passe stockés par un algorithme 3DES-CBC avec une clé dérivée du mot de passe principal). Des outils performants permettent de rapidement retrouver ce mot de passe maître par force brut =>

Il est conseillé de désactiver le gestionnaire de mots de passe pour imposer la saisie systématique de ces derniers. L’application d’un tel durcissement est légitime sur un réseau amené à traiter des données sensibles ou confidentielles, mais peut toutefois être difficile à imposer aux utilisateurs sur des réseaux moins sensibles. Sa désactivation pourrait alors s’accompagner du déploiement d’un gestionnaire de mots de passe alternatif et sécurisé.

Confidentialité (infos envoyées à mozilla, voir p 8) : navigation privée peux etre coupée pour intranet.

- Désactiver les divers rapports disponibles de plantage, de performance, etc
- Désactiver le service de synchronisation Firefox Sync
- Activer les fonctionnalités de protection de la confidentialité (anti pistage, navigation privée, suppression des données privées, etc.) lorsque le navigateur n’est pas dédié à une navigation Intranet

Interdire les fonctions de géolocalisation
- Dès lors que la confidentialité des recherches est jugée primordiale, il conviendra d’imposer un moteur de recherche de confiance et de désactiver les fonctionnalités de recherche instantanée ou de suggestion de recherche

Moteur de recherche par défaut:  principalement lorsque le navigateur se trouve dédié à l’Intranet.

Pour des questions de respect de la vie privée, il est conseillé d’imposer un moteur de recherche s’appuyant sur une connexion chiffrée (HTTPS)

Activer les fonctionnalités de filtrage de contenu telles que la navigation sécurisée (protection contre le hameçonnage et les logiciels malveillants) ou la Content Security Policy
Interdire ou, a minima, restreindre les scripts, les contenus mixtes actifs, les cookies tiers...

Si le navigateur est configuré pour restaurer la session précédente, les données ainsi que les cookies de session seront sauvegardés puis restaurés au prochain démarrage du navigateur. Il est alors possible de récupérer ces cookies sauvegardés pour s’authentifier à la place de l’utilisateur sans mot de passe, voire de récupérer une session HTTPS préalablement initiée.

Il est préférable que le navigateur n’enregistre pas les sessions de navigation. Lors du démarrage du navigateur (après un arrêt normal ou brusque), il est en effet conseillé de ne pas restaurer la session précédente de l’utilisateur mais d’afficher une(des) page(s) connue(s) et de confiance

Serveur mandataire (proxy)

Il est primordial de contrôler les flux non seulement en entrée mais également en sortie.
Lorsqu’un individu malveillant atteint en intégrité un poste de travail, il peut ensuite procéder à l’établissement d’un canal de contrôle depuis le poste de travail vers un serveur situé sur Internet. L’utilisation de serveurs mandataires avec authentification peut donc bloquer des connexions sortantes malveillantes

Privilégier l’utilisation de serveurs mandataires avec authentification

Authentification HTTP

Il est possible de durcir la sécurité des authentifications utilisant NTLM (NT Lan Manager) ou SPNEGO sur Firefox dès lors que l’une d’entre elles est utilisée par l’entité qui le déploie. (NTLM n’est pas conseillée, Kerberos à privilégier).

Spécifier la liste des serveurs autorisés à engager une authentification SPNEGO ou une authentification NTLM automatique

Périmètre de navigation

Il est recommandé de restreindre le périmètre de navigation en interdisant certains schémas d’adresses avec les protocol-handlers. Ces listes présentent également un intérêt particulier dans le cadre d’une stratégie de double navigateur.

Interdire a minima le schéma d’adresses file:// pour un navigateur dédié à la navigation sur Internet de manière à éviter des accès arbitraires au système de fichiers. Le schéma ftp://  pourrait également être interdit au profit de l’utilisation d’un client FTP tiers

-> L’utilisation du navigateur Firefox ne sera alors plus possible pour afficher des pages html directement depuis un système de fichiers (CD-ROM, disque local ou distant via un partage réseau, etc.)

 

Install et maj (p 12)

Le télé-déploiement initial de logiciel peut se faire de plusieurs manières :
– au format MSI par GPO (stratégies de groupe pour la gestion centralisée) dans un domaine Microsoft Active Directory. Attention toutefois, puisque Mozilla ne fournit Firefox qu’au format exécutable, il sera donc nécessaire de construire un package Firefox au format MSI. Des éditeurs tiers proposent de tels paquets mais ces éditeurs n’offrent pas de garantie forte de l’intégrité des logiciels qu’ils fournissent. Il est par conséquent préférable que l’organisation utilisatrice génère ses propres fichiers MSI;
– au format exécutable à l’aide d’un outil de gestion de parc ou de tout autre produit tiers prévu à cet effet.

Deux stratégies différentes de mise à jour de Firefox peuvent alors être envisagées :
– la première consiste à simplement laisser la configuration par défaut, le navigateur va alors automatiquement télécharger les mises à jour auprès des serveurs de Mozilla. => s’assurer que les postes de travail sont en mesure d’accéder aux serveurs de mise à jour de Mozilla sur Internet, idéalement au travers du proxy d’entreprise qui pourra notamment mettre en cache les binaires.
– la configuration alternative consiste à remplacer l’URL de mise à jour (à l’aide du paramètre de configuration app.update.url.override) par une URL locale qui mettra les mises à jour à disposition des postes de travail.

 

Cf http://www.ssi.gouv.fr/IMG/pdf/NP_NavigateurSecurise_FireFox.pdf