Sécuriser votre déploiement StoreFront

Cet article dresse la liste des domaines susceptibles d’avoir un impact sur la sécurité du système lors du déploiement et de la configuration de StoreFront.

Configurer Microsoft Internet Information Services (IIS)

Vous pouvez configurer StoreFront avec une configuration IIS limitée. Veuillez noter qu’il ne s’agit pas de la configuration IIS par défaut.

Extensions de nom de fichier

Vous pouvez interdire les extensions de nom de fichier non répertoriées.

StoreFront requiert les extensions de nom de fichier suivantes dans le Filtrage des demandes :

  • . (extension vierge)
  • .appcache
  • .aspx
  • .cr
  • .css
  • .dtd
  • .gif
  • .htm
  • .html
  • .ica
  • .ico
  • .jpg
  • .js
  • .png
  • .svg
  • .txt
  • .xml

Si le téléchargement ou la mise à niveau de l’application Citrix Workspace est activé(e) pour Citrix Receiver pour Web, StoreFront requiert également ces extensions de nom de fichier :

  • .dmg
  • .exe

Si l’application Citrix Workspace pour HTML5 est activée, StoreFront requiert également ces extensions de nom de fichier :

  • .eot
  • .ttf
  • .woff

Types MIME

Vous pouvez supprimer les types MIME correspondant aux types de fichiers suivants :

  • .exe
  • .dll
  • .com
  • .bat
  • .csh

Filtrage des demandes

StoreFront requiert les verbes HTTP suivants dans le Filtrage des demandes : Vous pouvez interdire les verbes non répertoriés.

  • GET
  • POST
  • HEAD

Autres paramètres de Microsoft IIS

StoreFront ne nécessite pas :

  • Filtres ISAPI
  • Extensions ISAPI
  • Programmes CGI
  • Programmes FastCGI

Important :

  • Ne configurez pas les règles d’autorisation IIS. StoreFront prend en charge l’authentification directement et n’utilise pas ou ne prend pas en charge l’authentification IIS.
  • Ne sélectionnez pas Certificats clients : Exiger dans les paramètres SSL du site StoreFront. L’installation de StoreFront configure les pages appropriées du site StoreFront avec ce paramètre.
  • StoreFront requiert l’activation des cookies. Le paramètre Utiliser les cookies doit être sélectionné. N’activez pas le paramètre Sans cookie/Utiliser URI.
  • StoreFront requiert l’approbation Confiance totale. Ne définissez pas le niveau de confiance .NET global sur Élevé ou Moyen.
  • StoreFront ne prend pas en charge un pool d’applications distinct pour chaque site. Ne modifiez pas ces paramètres de site. Toutefois, vous pouvez définir le délai d’inactivité du pool d’applications et la quantité de mémoire virtuelle qu’un pool d’applications utilise.

Configurer les droits des utilisateurs

Remarque :

Microsoft IIS est activé dans le cadre de l’installation de StoreFront. Microsoft IIS accorde le droit de connexion Ouvrir une session en tant que tâche et le privilège Emprunter l’identité d’un client après l’authentification au groupe IIS_IUSRS intégré. Il s’agit d’un comportement normal d’installation de Microsoft IIS. Ne modifiez pas ces droits d’utilisateur. Reportez-vous à la documentation de Microsoft pour plus de détails.

Lorsque vous installez StoreFront, le droit d’ouverture de session Ouvrir une session en tant que service et les privilèges Ajuster les quotas de mémoire pour un processus, Générer des audits de sécurité et Remplacer un jeton de niveau processus sont accordés à ses pools d’applications. Il s’agit d’un comportement d’installation normal lorsque des pools d’applications sont créés. Les pools d’applications sont Citrix Configuration Api, Citrix Delivery Services Resources, Citrix Delivery Services Authentication et Citrix Receiver pour Web.

Vous n’avez pas besoin de changer ces droits d’utilisateur. Ces privilèges ne sont pas utilisés par StoreFront et sont automatiquement désactivés.

L’installation de StoreFront crée les services Windows suivants :

  • Citrix Configuration Replication (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Cluster Join (NT SERVICE\CitrixClusterService)
  • Citrix Peer Resolution (NT SERVICE\Citrix Peer Resolution Service)
  • Citrix Credential Wallet (NT SERVICE\CitrixCredentialWallet)
  • Citrix Subscriptions Store (NT SERVICE\CitrixSubscriptionsStore)
  • Citrix Default Domain Services (NT SERVICE\CitrixDefaultDomainService)

Si vous configurez la délégation Kerberos StoreFront contrainte pour XenApp 6.5, le service Transition du protocole Citrix StoreFront est créé (NT SERVICE\SYSTEM). Ce service requiert un privilège qui n’est pas normalement accordé aux services Windows.

Configurer les paramètres du service

Les services Windows StoreFront répertoriés ci-dessus dans la section « Configurer les droits des utilisateurs » sont configurés pour ouvrir une session avec l’identité NETWORK SERVICE. Le service de transition du protocole Citrix StoreFront ouvre une session en tant que SYSTEM. Ne modifiez pas cette configuration.

Configurer l’appartenance aux groupes

Lorsque vous configurez un groupe de serveurs StoreFront, les services suivants sont ajoutés au groupe de sécurité Administrateurs :

  • Citrix Configuration Replication (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Cluster Join (NT SERVICE\CitrixClusterService). Ce service n’est visible que sur les serveurs qui font partie d’un groupe et ne s’exécute que lorsque la jointure est en cours.

Ces appartenances de groupe sont requises pour que StoreFront fonctionne correctement, pour :

  • Créer, exporter, importer et supprimer des certificats et définir les autorisations d’accès
  • Lire et écrire dans le registre Windows
  • Ajouter et supprimer des assemblys Microsoft .NET Framework dans Global Assembly Cache (GAC)
  • Accéder au dossier Program Files\Citrix\<StoreFrontLocation>
  • Ajouter, modifier et supprimer des identités de pool d’applications IIS et des applications Web IIS
  • Ajouter, modifier et supprimer des groupes de sécurité locaux et des règles de pare-feu
  • Ajouter et supprimer des services Windows et des composants enfichables PowerShell
  • Enregistrer des points de terminaison Microsoft Windows Communication Framework (WCF)

Dans les mises à jour de StoreFront, cette liste d’opérations peut être modifiée sans préavis.

L’installation de StoreFront crée également les groupes de sécurité locaux suivants :

  • CitrixClusterMembers
  • CitrixCWServiceReadUsers
  • CitrixCWServiceWriteUsers
  • CitrixDelegatedAuthenticatorUsers
  • CitrixDelegatedDirectoryClaimFactoryUsers
  • CitrixPNRSUsers
  • CitrixStoreFrontPTServiceUsers
  • CitrixSubscriptionServerUsers
  • CitrixSubscriptionsStoreServiceUsers
  • CitrixSubscriptionsSyncUsers

StoreFront conserve l’appartenance de ces groupes de sécurité. Ils sont utilisés pour le contrôle d’accès dans StoreFront et ne sont pas appliqués aux ressources Windows, telles que les fichiers et les dossiers. Ne modifiez pas ces appartenances de groupe.

Certificats dans StoreFront

Certificats de serveur

Les certificats de serveur sont utilisés pour l’identification des machines et la sécurité du transport TLS dans StoreFront. Si vous choisissez d’activer la signature de fichier ICA, StoreFront peut également utiliser des certificats pour signer numériquement les fichiers ICA.

Pour activer la découverte de compte basée sur une adresse e-mail pour les utilisateurs qui installent l’application Citrix Workspace sur un appareil pour la première fois, vous devez installer un certificat de serveur valide sur le serveur StoreFront. La chaîne complète du certificat racine doit également être valide. Pour la meilleure expérience utilisateur possible, installez soit un certificat avec une entrée Objet ou Autre nom de l’objet de discoverReceiver.domaine, où domaine est le domaine Microsoft Active Directory contenant les comptes de messagerie de vos utilisateurs. Bien que vous puissiez utiliser un certificat générique pour le domaine contenant les comptes de messagerie de vos utilisateurs, vous devez d’abord vous assurer que le déploiement de tels certificats est autorisé par votre stratégie de sécurité d’entreprise. D’autres certificats pour le domaine contenant les comptes de messagerie de vos utilisateurs peuvent également être utilisés, mais les utilisateurs apercevront une boîte de dialogue d’avertissement de certificat lorsque l’application Citrix Workspace se connecte d’abord au serveur StoreFront. La découverte de compte par e-mail ne peut pas être utilisée par d’autres identités de certificat. Pour de plus amples informations, consultez la section Configurer la découverte de compte basée sur une adresse e-mail.

Si vos utilisateurs configurent leurs comptes en entrant des adresses URL de magasin directement dans l’application Citrix Workspace et n’utilisent pas la découverte de compte par e-mail, le certificat du serveur StoreFront doit uniquement être valide pour ce serveur et posséder une chaîne valide vers le certificat racine.

Certificats de gestion des jetons

Les services d’authentification et les magasins requièrent chacun des certificats pour la gestion des jetons. StoreFront génère un certificat auto-signé lors de la création d’un service d’authentification ou d’un magasin. Les certificats auto-signés générés par StoreFront ne doivent pas être utilisés dans un quelconque autre but que ce soit.

Certificats Citrix Delivery Services

StoreFront conserve un certain nombre de certificats dans un magasin de certificats Windows personnalisé (Citrix Delivery Services). Les services Citrix Configuration Replication Service, Citrix Credential Wallet Service et Citrix Subscriptions Store Service utilisent ces certificats. Chaque serveur StoreFront dans un cluster dispose d’une copie de ces certificats. Ces services ne dépendent pas de TLS pour sécuriser les communications et ces certificats ne sont pas utilisés comme certificats de serveur TLS. Ces certificats sont créés lorsqu’un magasin StoreFront est créé ou que StoreFront est installé. Ne modifiez pas le contenu de ce magasin de certificats Windows.

Certificats de signature de code

StoreFront comprend un certain nombre de scripts PowerShell (.ps1) dans le dossier <Répertoired’installation>\Scripts. L’installation de StoreFront par défaut ne peut pas utiliser ces scripts. Ils simplifient les étapes de configuration des tâches spécifiques ou non fréquentes. Ces scripts sont signés, ce qui permet à StoreFront de prendre en charge la stratégie d’exécution PowerShell. Nous recommandons la stratégie AllSigned. (La stratégie Restreint n’est pas prise en charge car elle empêche l’exécution des scripts PowerShell.) StoreFront ne modifie pas la stratégie d’exécution de PowerShell.

Bien que StoreFront n’installe pas de certificat de signature de code dans le magasin Éditeurs approuvés, Windows peut automatiquement y ajouter le certificat de signature de code. Cela se produit lorsque le script PowerShell est exécuté avec l’option Toujours exécuter. (Si vous sélectionnez l’option Ne jamais exécuter, le certificat est ajouté au magasin Certificats non autorisés, et les scripts PowerShell StoreFront ne seront pas exécutés.) Une fois que le certificat de code de signature a été ajouté au magasin Éditeurs approuvés, sa date d’expiration n’est plus vérifiée par Windows. Vous pouvez supprimer ce certificat du magasin Éditeurs approuvés après que les tâches StoreFront ont été effectuées.

Communications StoreFront

Dans un environnement de production, Citrix vous recommande d’utiliser Internet Protocol Security (IPsec) ou le protocole HTTPS pour sécuriser le transfert des données entre StoreFront et vos serveurs. IPsec est un ensemble d’extensions standard du protocole Internet qui garantit des communications authentifiées et cryptées avec intégrité des données et protection contre la relecture. IPsec étant un ensemble de protocoles de couches réseau, les protocoles d’un niveau plus élevé peuvent l’utiliser sans modification. HTTPS utilise les protocoles SSL (Secure Sockets Layer) et TLS (Transport Layer Security) pour fournir un chiffrement fort des données.

Le Relais SSL peut être utilisé pour sécuriser le trafic de données entre StoreFront et les serveurs Citrix Virtual Apps. Le relais SSL est un composant par défaut de Citrix Virtual Apps qui assure l’authentification hôte et le cryptage de données.

Citrix recommande de désactiver la prise en charge de TLS 1.0 et 1.1 dans le serveur Web hébergeant StoreFront. Vous devriez appliquer cette désactivation via des objets de stratégie de groupe, qui créent les paramètres de registre nécessaires sur le serveur StoreFront pour désactiver les protocoles plus anciens comme TLS 1.0 et TLS 1.1. Consultez également la rubrique Microsoft Paramètres TLS/SSL.

Citrix vous recommande de sécuriser les communications entre StoreFront et les machines des utilisateurs à l’aide de Citrix Gateway et du protocole HTTPS. Pour utiliser le protocole HTTPS, StoreFront requiert que l’instance Microsoft Internet Information Services (IIS) hébergeant le service d’authentification et les magasins associés soit configurée pour HTTPS. En l’absence de la configuration IIS appropriée, StoreFront utilise le protocole HTTP pour les communications. Citrix vous recommande de ne pas autoriser les connexions utilisateur non sécurisées à StoreFront dans un environnement de production.

Séparation de la sécurité de StoreFront

Si vous déployez des applications Web dans le même domaine Web (nom de domaine et de port) en tant que StoreFront, tout risque ayant trait à la sécurité dans ces applications Web peut potentiellement réduire la sécurité de votre déploiement StoreFront. Lorsqu’un degré plus important de séparation de la sécurité est nécessaire, Citrix recommande de déployer StoreFront dans un domaine Web distinct.

Signature de fichier ICA

StoreFront permet de signer numériquement les fichiers ICA à l’aide d’un certificat spécifié sur le serveur, afin que les versions de l’application Citrix Workspace qui prennent en charge cette fonctionnalité puissent vérifier que le fichier provient d’une source approuvée. Les fichiers ICA peuvent être signés en utilisant n’importe quel algorithme de hachage pris en charge par le système d’exploitation s’exécutant sur le serveur StoreFront, et notamment SHA-1 et SHA-256. Pour de plus amples informations, consultez la section Activer la signature de fichier ICA.

Mot de passe modifié par l’utilisateur

Vous pouvez autoriser les utilisateurs de sites Receiver pour Web qui ouvrent une session avec des informations d’identification de domaine Active Directory à modifier leurs mots de passe, à tout moment ou uniquement lorsqu’ils ont expiré. Toutefois, cela expose des fonctions de sécurité sensibles à toute personne pouvant accéder aux magasins qui utilisent ce service d’authentification. Si votre organisation possède une stratégie de sécurité qui restreint les fonctions de modification des mots de passe utilisateur à un usage interne uniquement, vous devez vous assurer qu’aucun des magasins ne sont accessibles depuis l’extérieur de votre réseau interne. Lorsque vous créez le service d’authentification, la configuration par défaut empêche les utilisateurs de sites Receiver pour Web de modifier leurs mots de passe, même s’ils ont expiré. Pour de plus amples informations, consultez la section Optimiser l’expérience utilisateur.

Modifier l’URL de base du serveur StoreFront HTTP et la remplacer par HTTPS

Pour utiliser le protocole HTTPS de manière à sécuriser les communications entre StoreFront et les machines des utilisateurs, vous devez configurer Microsoft Internet Information Services (IIS) pour HTTPS. Si vous installez et configurez Citrix StoreFront sans installer et configurer au préalable un certificat SSL, StoreFront utilise HTTP pour les communications.

Si vous installez et configurez un certificat SSL ultérieurement, procédez comme suit pour vous assurer que StoreFront et ses services utilisent des connexions HTTPS.

Exemple :

Alt text

Avant de modifier l’URL de base et la remplacer par HTTPS :

Alt text

Après avoir modifié l’URL de base et l’avoir remplacée par HTTPS :

Alt text

  1. Configurez Microsoft Internet Information Services (IIS) pour HTTPS sur le serveur StoreFront :

    1. Utilisez la console Gestionnaire des services Internet (IIS) pour importer un certificat de serveur SSL signé par votre autorité de certification de domaine Microsoft Active Directory.
    2. Ajoutez une liaison IIS via HTTPS (443) au site Web par défaut.

    Pour obtenir des instructions détaillées, consultez la section CTX200292.

  2. Dans la console de gestion Citrix StoreFront, dans le panneau de gauche, sélectionnez Groupe de serveurs.
  3. Dans le panneau Actions, sélectionnez Changer l’URL de base.
  4. Tapez l’URL de base et cliquez sur OK.

Personnalisations

Pour renforcer la sécurité, n’écrivez pas de personnalisations destinées à charger du contenu ou des scripts depuis des serveurs n’étant pas sous votre contrôle. Copiez le contenu ou le script dans le dossier personnalisé du site Citrix Receiver pour Web sur lequel vous effectuez les personnalisations. Si StoreFront est configuré pour des connexions HTTPS, assurez-vous que les liens vers le contenu ou les scripts personnalisés utilisent également le protocole HTTPS.

Informations supplémentaires sur la sécurité

Remarque :

Ces informations peuvent changer à tout moment, sans préavis.

Votre organisation peut vouloir effectuer des analyses de sécurité de StoreFront pour des raisons réglementaires. Les options de configuration précédentes peuvent aider à éliminer certaines détections dans les rapports d’analyse de sécurité.

S’il existe une passerelle entre l’analyseur de sécurité et StoreFront, certains résultats peuvent être liés à la passerelle plutôt qu’à StoreFront lui-même. Les rapports d’analyse de sécurité ne distinguent généralement pas ces résultats (par exemple, configuration TLS). Pour cette raison, les descriptions techniques contenues dans les rapports d’analyse de sécurité peuvent être trompeuses.

Lors de l’interprétation des rapports d’analyse de sécurité, notez ce qui suit :

  • Les pages HTML de StoreFront peuvent ne pas inclure de protection contre le détournement de clic (par la stratégie de sécurité du contenu ou les en-têtes de réponse X-Frame-Options). Cependant, ces pages HTML sont constituées uniquement de contenu statique, et par conséquent, les attaques de détournement de clic ne sont pas pertinentes.

  • La version de Microsoft IIS et l’utilisation d’ASP.NET sont visibles dans les en-têtes HTTP. Cependant, cette information est déjà évidente par la présence de StoreFront lui-même, car il repose sur ces technologies.

  • Lors du lancement d’applications et de bureaux, StoreFront utilise un jeton pour se protéger contre la falsification de requêtes inter-sites (CSRF). Ce jeton est envoyé en tant que cookie dans une réponse sans être marqué comme Secure ou HttpOnly. Lorsqu’il est envoyé ultérieurement dans une requête, le jeton est inclus dans la chaîne de requête d’une URL. Cependant, StoreFront ne s’appuie pas sur ce mécanisme pour authentifier les requêtes HTTP.

  • StoreFront utilise le composant open source jQuery. Une version utilisée est jQuery 1.3.2. Selon le projet open source jQuery, une modification a été apportée dans jQuery 1.12.0 pour atténuer les vulnérabilités potentielles dans une forme spécifique de requête inter-domaines. Ce changement n’était pas une atténuation d’une vulnérabilité dans jQuery même ; c’était une atténuation de l’utilisation abusive potentielle par la logique d’application. La logique d’application Citrix concernée, dans la fonctionnalité Receiver pour Web partagée par NetScaler et StoreFront, n’utilise pas cette forme spécifique de requête inter-domaines, n’est pas affectée par cette vulnérabilité et n’a pas bénéficié de cette atténuation.

    Cette atténuation a ensuite été supprimée dans jQuery 1.12.3 pour des raisons de compatibilité. Étant donné que la logique d’application Citrix n’a pas bénéficié de cette atténuation, cette suppression n’a aucun impact matériel sur les versions de NetScaler et StoreFront utilisant jQuery 1.12.4.