Citrix ADC

Prise en charge des en-têtes de réponse Content Security Policy pour Citrix Gateway et réponses générées par le serveur virtuel

À partir de la version 13.0-76.29 de Citrix ADC, l’en-tête de réponse CSP (Content-Security-Policy) est pris en charge pour Citrix Gateway et les réponses générées par le serveur virtuel d’authentification.

L’en-tête de réponse CSP (Content-Security-Policy) est une combinaison de stratégies utilisées par le navigateur pour éviter les attaques CSS (Cross Site Scripting). L’en-tête de réponse HTTP CSP permet aux administrateurs de sites Web de contrôler les ressources que l’agent utilisateur est autorisé à charger pour une page donnée. À quelques exceptions près, les stratégies impliquent principalement la spécification des origines du serveur et des points de terminaison de script. Cela permet de se prémunir contre les attaques de scripts intersites. L’en-tête CSP est conçu pour modifier la façon dont les navigateurs affichent les pages, et donc pour protéger contre diverses injections intersites, y compris le CSS. Il est important de définir correctement la valeur de l’en-tête, de manière à ne pas empêcher le bon fonctionnement du site Web. Par exemple, si l’en-tête est défini pour empêcher l’exécution de JavaScript en ligne, le site Web ne doit pas utiliser de JavaScript en ligne dans ses pages.

Voici les avantages de l’en-tête de réponse CSP.

  • La fonction principale d’un en-tête de réponse CSP est de prévenir les attaques CSS.
  • En plus de restreindre les domaines à partir desquels le contenu peut être chargé, le serveur peut spécifier quels protocoles peuvent être utilisés. Par exemple (et idéalement, du point de vue de la sécurité), un serveur peut spécifier que tous les contenus doivent être chargés à l’aide de HTTPS.
  • CSP aide à sécuriser Citrix ADC contre les attaques par script intersite en sécurisant des fichiers tels que “tmindex.html” et « homepage.html ». Le fichier “tmindex.html” est lié à l’authentification et le fichier “homepage.html” est lié aux applications/liens publiés.

Configuration de l’en-tête Content-Security-Policy pour Citrix Gateway et les réponses générées par le serveur virtuel d’authentification

Pour activer l’en-tête CSP, vous devez configurer votre serveur Web pour renvoyer l’en-tête HTTP CSP.

Points à noter

  1. Par défaut, l’en-tête CSP est désactivé.
  2. Lors de l’activation/de la désactivation de la stratégie CSP par défaut, il est recommandé d’exécuter la commande suivante. Flush cache contentgroup loginstaticobjects
  3. Pour modifier la stratégie CSP pour tmindex.html, homepage.html, etc., il est recommandé de la modifier httpd.conf. Pour modifier httpd.conf, ouvrez httpd.conf dans n’importe quel éditeur XML, faites défiler jusqu’à la balise DirectoryMatch et recherchez les répertoires suivants, « /netscaler/ns_gui/vpns », « /netscaler/ns_gui/epa », puis modifiez « Header set Content-Security-Policy ».

Pour configurer CSP pour le serveur virtuel d’authentification et les réponses générées par Citrix Gateway à l’aide de l’interface de ligne de commande, tapez la commande suivante à l’invite de commandes :

set aaa parameter -defaultCSPHeader <ENABLE/DISABLE>

Pour configurer CSP pour Citrix Gateway et les réponses générées par le serveur virtuel d’authentification à l’aide de l’interface graphique.

  1. Accédez à Citrix Gateway > Paramètres globaux, cliquez sur Modifier les paramètres AAA d’authentification sous Paramètres d’authentification.

    CSP Global-1

  2. Sur la page Configurer les paramètres AAA, sélectionnez le champ En-tête CSP par défaut .

    CSP Global-2

Exemple de personnalisation des en-têtes Content-Security-Policy

Voici un exemple de personnalisation des en-têtes CSP pour inclure des images et des scripts uniquement provenant des deux sources spécifiées suivantes, respectivement, https://company.fqdn.com, https://example.com.

Exemple de configuration

add rewrite action modify_csp insert_http_header Content-Security-Policy "\"default-src 'self'; script-src 'self' https://company.fqdn.com 'unsafe-inline' 'unsafe-eval'; connect-src 'self'; img-src http://localhost:* https://example.com 'self' data: http: https:; style-src 'self' 'unsafe-inline'; font-src 'self'; frame-src 'self'; child-src 'self' com.citrix.agmacepa://* citrixng://* com.citrix.nsgclient://*; form-action 'self'; object-src 'self'; report-uri /nscsp_violation/report_uri\""

add rewrite policy add_csp true modify_csp

bind authentication vserver auth1 -policy add_csp -priority 1 -gotoPriorityExpression NEXT -type AAA_RESPONSE
Prise en charge des en-têtes de réponse Content Security Policy pour Citrix Gateway et réponses générées par le serveur virtuel