ADC

Journaux du Web App Firewall

Le Web App Firewall génère des messages de journal pour le suivi de la configuration, l’appel de stratégie et les détails de violation de contrôle de sécurité.

Lorsque vous activez l’action de journalisation pour les contrôles de sécurité ou les signatures, les messages de journal qui en résultent fournissent des informations sur les demandes et les réponses que le Web App Firewall a observées lors de la protection de vos sites Web et applications. Les informations les plus importantes sont l’action entreprise par le Web App Firewall lorsqu’une signature ou une violation du contrôle de sécurité a été observée. Pour certains contrôles de sécurité, le message de journal peut fournir des informations utiles, telles que l’emplacement de l’utilisateur ou le schéma détecté ayant déclenché une violation. Une augmentation excessive du nombre de messages de violation dans les journaux peut indiquer une augmentation du nombre de requêtes malveillantes. Le message vous avertit que votre application est peut-être attaquée pour exploiter une vulnérabilité spécifique détectée et contrecarrée par les protections du Web App Firewall.

Remarque :

Si vous souhaitez séparer les journaux de NetScaler Web App Firewall des journaux système, vous devez utiliser un serveur SYSLOG externe.

Journaux au format NetScaler (natif)

Le Web App Firewall utilise les journaux au format NetScaler (également appelés journaux au format natif) par défaut. Ces journaux ont le même format que ceux générés par les autres fonctionnalités de NetScaler. Chaque journal contient les champs suivants :

  • Horodatage. Date et heure de la connexion.
  • Gravité. Niveau de gravité du journal.
  • module. Module NetScaler qui a généré l’entrée du journal.
  • Type d’événement. Type d’événement, tel qu’une violation de signature ou une violation du contrôle de sécurité.
  • ID de l’événement. ID attribué à l’événement.
  • Adresse IP du client. Adresse IP de l’utilisateur dont la connexion a été enregistrée.
  • ID de transaction. ID attribué à la transaction à l’origine du journal.
  • ID de session. ID attribué à la session utilisateur à l’origine du journal.
  • Message. Le message du journal. Contient des informations identifiant la signature ou le contrôle de sécurité qui a déclenché l’entrée du journal.

Vous pouvez rechercher n’importe lequel de ces champs ou n’importe quelle combinaison d’informations provenant de différents champs. Votre sélection est limitée uniquement par les fonctionnalités des outils que vous utilisez pour afficher les journaux. Vous pouvez consulter les messages du journal du Web App Firewall dans l’interface graphique en accédant à la visionneuse Syslog NetScaler, ou vous pouvez vous connecter manuellement à l’appliance NetScaler et accéder aux journaux depuis l’interface de ligne de commande, ou vous pouvez accéder au shell et suivre les journaux directement depuis le. /var/log/folder

Exemple de message de journal au format natif

Jun 22 19:14:37 <local0.info> 10.217.31.98 06/22/2015:19:14:37 GMT ns 0-PPE-1 :
default APPFW APPFW_cross-site scripting 60 0 :  10.217.253.62 616-PPE1 y/3upt2K8ySWWId3Kavbxyni7Rw0000
pr_ffc http://aaron.stratum8.net/FFC/login.php?login_name=abc&passwd=
12345&drinking_pref=on&text_area=%3Cscript%3E%0D%0A&loginButton=ClickToLogin&as_sfid=
AAAAAAWEXcNQLlSokNmqaYF6dvfqlChNzSMsdyO9JXOJomm2v
BwAMOqZIChv21EcgBc3rexIUcfm0vckKlsgoOeC_BArx1Ic4NLxxkWMtrJe4H7SOfkiv9NL7AG4juPIanTvVo
%3D&as_fid=feeec8758b41740eedeeb6b35b85dfd3d5def30c Cross-site script check failed for
field text_area="Bad tag: script" <blocked>
<!--NeedCopy-->

Journaux du format d’événement commun (CEF)

Le Web App Firewall prend également en charge les journaux CEF. CEF est une norme de gestion des journaux ouverts qui améliore l’interopérabilité des informations liées à la sécurité provenant de différents périphériques et applications de sécurité et de réseau. Le CEF permet aux clients d’utiliser un format de journal des événements commun afin que les données puissent être facilement collectées et agrégées pour analyse par un système de gestion d’entreprise. Le message de journal est divisé en différents champs afin que vous puissiez facilement analyser le message et écrire des scripts pour identifier les informations importantes.

Analyse du message de journal CEF

Outre la date, l’horodatage, l’adresse IP du client, le format du journal, l’appliance, la société, la version de build, le module et les informations de vérification de sécurité, les messages de journal CEF de Web App Firewall incluent les informations suivantes :

  • src — adresse IP source
  • spt — numéro de port source
  • request — URL de la demande
  • act — action (par exemple bloqué, transformé)
  • msg — message (message concernant la violation du contrôle de sécurité observée)
  • Offset : représente les octets depuis le début du fichier.
  • cn1 — ID d’événement
  • cn2 — ID de transaction HTTP
  • cs1 — nom du profil
  • cs2 — ID PPE (par exemple PPE1)
  • cs3 - ID de session
  • cs4 — Gravité (par exemple INFO, ALERT)
  • CS5 — année de l’événement
  • cs6 - Catégorie de violation de signature
  • method — Méthode (par exemple GET/POST)

Par exemple, considérez le message de journal au format CEF suivant, qui a été généré lorsqu’une violation d’URL de démarrage a été déclenchée :

Jun 12 23:37:17 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0
|APPFW|APPFW_STARTURL|6|src=10.217.253.62 spt=47606 method=GET
request=http://aaron.stratum8.net/FFC/login.html msg=Disallow Illegal URL. cn1=1340
cn2=653 cs1=pr_ffc cs2=PPE1 cs3=EsdGd3VD0OaaURLcZnj05Y6DOmE0002 cs4=ALERT cs5=2015
act=blocked
<!--NeedCopy-->

Le message ci-dessus peut être divisé en différents composants. Reportez-vous au tableau des composants du journal CEP.

Exemple de violation de vérification de demande au format journal CEF : la demande n’est pas bloquée

Jun 13 00:21:28 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|
APPFW_FIELDCONSISTENCY|6|src=10.217.253.62 spt=761 method=GET request=
http://aaron.stratum8.net/FFC/login.php?login_name=abc&passwd=
123456789234&drinking_pref=on&text_area=&loginButton=ClickToLogin&as_sfid
=AAAAAAWIahZuYoIFbjBhYMP05mJLTwEfIY0a7AKGMg3jIBaKmwtK4t7M7lNxOgj7Gmd3SZc8KUj6CR6a
7W5kIWDRHN8PtK1Zc-txHkHNx1WknuG9DzTuM7t1THhluevXu9I4kp8%3D&as_fid=feeec8758b4174
0eedeeb6b35b85dfd3d5def30c msg=Field consistency check failed for field passwd cn1=1401
cn2=707 cs1=pr_ffc cs2=PPE1 cs3=Ycby5IvjL6FoVa6Ah94QFTIUpC80001 cs4=ALERT cs5=2015 act=
not blocked
<!--NeedCopy-->

Exemple d’une violation de vérification de réponse au format CEF : la réponse est transformée

Jun 13 00:25:31 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|
APPFW_SAFECOMMERCE|6|src=10.217.253.62 spt=34041 method=GET request=
http://aaron.stratum8.net/FFC/CreditCardMind.html msg=Maximum number of potential credit
card numbers seen cn1=1470 cn2=708 cs1=pr_ffc cs2=PPE1
cs3=Ycby5IvjL6FoVa6Ah94QFTIUpC80001 cs4=ALERT cs5=2015 act=transformed
<!--NeedCopy-->

Exemple de violation de signature côté requête au format CEF : la demande est bloquée

Jun 13 01:11:09 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|
APPFW_SIGNATURE_MATCH|6|src=10.217.253.62 spt=61141 method=GET request=
http://aaron.stratum8.net/FFC/wwwboard/passwd.txt msg=Signature violation rule ID 807:
web-cgi /wwwboard/passwd.txt access  cn1=140 cn2=841 cs1=pr_ffc cs2=PPE0
cs3=OyTgjbXBqcpBFeENKDlde3OkMQ00001 cs4=ALERT cs5=2015 cs6=web-cgi act=blocked
<!--NeedCopy-->

Exemple de violation du contrôle des réponses au format CEF pour un Offset :

Jan 24 10:00:00 <local0.warn> 10.175.4.47 CEF:0|Citrix|NetScaler|NS13.0|APPFW|APPFW_XML_ERR_NOT_WELLFORMED|4|src=5.31.100.129 spt=20644 method=GET request=https://wifiuae.duwifi.ae/publishApplications/en/5dafe3e74fa8015599009bc1/images/fallback_photo.svg msg=XML Format check failed: Message is not a well-formed XML.Error string is 'unclosed token'. Offset:-517597 cn1=547290214 cn2=974226675 cs1=WIFI_UAE_AppFw cs2=PPE0 cs4=ERROR cs5=2023 act=blocked
<!--NeedCopy-->

Dans cet exemple, la violation XML_ERR_NOT_WELLFORMED s’est produite en raison de unclosed token. Cette violation se trouve à l’emplacement 517597 depuis le début du fichier.

Consigner la géolocalisation dans les messages de violation du Web App Firewall

Les détails du journal identifient l’emplacement d’où proviennent les demandes et vous aident à configurer le Web App Firewall pour un niveau de sécurité optimal. Pour contourner les implémentations de sécurité telles que la limitation de débit, qui reposent sur les adresses IP des clients, les logiciels malveillants ou les ordinateurs malveillants peuvent continuer à modifier l’adresse IP source dans les demandes. L’identification de la région spécifique d’où proviennent les demandes peut aider à déterminer si les demandes proviennent d’un utilisateur valide ou d’un appareil tentant de lancer des cyberattaques. Par exemple, si un nombre excessif de demandes sont reçues d’une zone spécifique, il est facile de déterminer si elles sont envoyées par des utilisateurs ou par une machine non fiable. L’analyse de géolocalisation du trafic reçu peut être utile pour dévier des attaques telles que les attaques par déni de service (DoS).

Le Web App Firewall vous permet d’utiliser facilement la base de données NetScaler intégrée pour identifier les emplacements correspondant aux adresses IP d’où proviennent les demandes malveillantes. Vous pouvez ensuite appliquer un niveau de sécurité plus élevé pour les demandes provenant de ces emplacements. Les expressions de syntaxe par défaut (PI) de NetScaler vous permettent de configurer des stratégies basées sur la localisation qui peuvent être utilisées avec la base de données de localisation intégrée pour personnaliser la protection par pare-feu, renforçant ainsi votre défense contre les attaques coordonnées lancées par des clients malhonnêtes dans une région spécifique.

Vous pouvez utiliser la base de données intégrée de NetScaler ou n’importe quelle autre base de données. Si la base de données ne contient aucune information d’emplacement pour l’adresse IP du client en particulier, le journal CEF affiche la géolocalisation en tant que géolocalisation inconnue.

Remarque :

La journalisation de la géolocalisation utilise le format d’événement commun (CEF). Par défaut, CEF logging et GeoLocationLogging sont désactivés. Vous devez explicitement activer les deux paramètres.

Exemple de message de journal CEF affichant des informations de géolocalisation

June 8 00:21:09 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|
APPFW_STARTURL|6|src=10.217.253.62 geolocation=NorthAmerica.US.Arizona.Tucson.*.*
spt=18655 method=GET request=http://aaron.stratum8.net/FFC/login.html
msg=Disallow Illegal URL. cn1=77 cn2=1547 cs1=test_pr_adv cs2=PPE1
cs3=KDynjg1pbFtfhC/nt0rBU1o/Tyg0001 cs4=ALERT cs5=2015 act=not blocked
<!--NeedCopy-->

Exemple de message de journal indiquant geolocation= Unknown

June 9 23:50:53 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|
APPFW|APPFW_STARTURL|6|src=10.217.30.251 geolocation=Unknown spt=5086
method=GET request=http://aaron.stratum8.net/FFC/login.html msg=Disallow Illegal URL.
cn1=74 cn2=1576 cs1=test_pr_adv cs2=PPE2 cs3=PyR0eOEM4gf6GJiTyauiHByL88E0002
cs4=ALERT cs5=2015 act=not blocked
<!--NeedCopy-->

Configurer l’action du journal et d’autres paramètres de journalisation à l’aide de

Pour configurer l’action de journalisation pour une vérification de sécurité d’un profil à l’aide de la ligne de commande

À l’invite de commandes, tapez l’une des commandes suivantes :

  • set appfw profile <name> SecurityCheckAction ([log] | [none])
  • unset appfw profile <name> SecurityCheckAction

Exemples

set appfw profile pr_ffc StartURLAction log

unset appfw profile pr_ffc StartURLAction

Pour configurer la journalisation CEF à l’aide de la ligne de commande

La journalisation CEF est désactivée par défaut. À l’invite de commandes, tapez l’une des commandes suivantes pour modifier ou afficher le paramètre actuel :

  • set appfw settings CEFLogging on
  • unset appfw settings CEFLogging
  • sh appfw settings | grep CEFLogging

Pour configurer la consignation des numéros de carte de crédit à l’aide de la ligne de commande

À l’invite de commandes, tapez l’une des commandes suivantes :

  • set appfw profile <name> -doSecureCreditCardLogging ([ON] | [OFF])
  • unset appfw profile <name> -doSecureCreditCardLogging

Pour configurer la journalisation de la géolocalisation à l’aide de la ligne de commande

  1. Utilisez la commande set pour activer GeolocationLogging. Vous pouvez activer la journalisation CEF en même temps. Utilisez la commande unset pour désactiver la journalisation de géolocalisation. La commande show affiche les paramètres actuels de tous les paramètres de Web App Firewall, sauf si vous incluez la commande grep pour afficher le paramètre d’un paramètre spécifique.

    • set appfw settings GeoLocationLogging ON [CEFLogging ON]
    • unset appfw settings GeoLocationLogging
    • sh appfw settings | grep GeoLocationLogging
  2. Spécifiez la base de données

    add locationfile /var/netscaler/inbuilt_db/Citrix_netscaler_InBuilt_GeoIP_DB.csv

    ou

    add locationfile <path to database file>

Personnaliser les journaux du Web App Firewall

Les expressions de format par défaut (PI) vous permettent de personnaliser les informations incluses dans les journaux. Vous avez la possibilité d’inclure les données spécifiques que vous souhaitez capturer dans les messages de journal générés par le Web App Firewall. Par exemple, si vous utilisez l’authentification AAA-TM en même temps que les vérifications de sécurité du Web App Firewall et que vous souhaitez connaître l’URL consultée qui a déclenché la violation du contrôle de sécurité, le nom de l’utilisateur qui a demandé l’URL, l’adresse IP source et le port source à partir duquel l’utilisateur a envoyé la demande, vous peut utiliser les commandes suivantes pour spécifier des messages de journal personnalisés qui incluent toutes les données :

> sh version
NetScaler NS12.1: Build 50.0013.nc, Date: Aug 28 2018, 10:51:08   (64-bit)
 Done
<!--NeedCopy-->
> add audit messageaction custom1 ALERT 'HTTP.REQ.URL + " " + HTTP.REQ.USER.NAME + " " + CLIENT.IP.SRC + ":" + CLIENT.TCP.SRCPORT'
Warning: HTTP.REQ.USER has been deprecated. Use AAA.USER instead.
 Done
<!--NeedCopy-->
> add appfw profile test_profile
 Done
<!--NeedCopy-->
> add appfw policy appfw_pol true test_profile -logAction custom1
 Done
<!--NeedCopy-->

Configurer la stratégie Syslog pour séparer les journaux du Web App Firewall

Le pare-feu Web App vous offre la possibilité d’isoler et de rediriger les messages du journal de sécurité du Web App Firewall vers un autre fichier journal. Cela peut être souhaitable si le Web App Firewall génère de nombreux journaux, ce qui rend difficile l’affichage des autres messages du journal NetScaler. Vous pouvez également utiliser cette option lorsque vous souhaitez uniquement afficher les messages du journal du Web App Firewall et que vous ne souhaitez pas voir les autres messages de journal.

Pour rediriger les journaux du Web App Firewall vers un autre fichier journal, configurez une action Syslog pour envoyer les journaux du Web App Firewall à une autre fonction de journalisation. Vous pouvez utiliser cette action lors de la configuration de la stratégie Syslog et la lier globalement pour une utilisation par Web App Firewall.

Remarques :

  • Pour lier globalement les stratégies de Web App Firewall, vous pouvez configurer le paramètre de liaison global, « APPFW_GLOBAL » dans les commandes « audit de liaison SyslogGlobal » et « bind audit NSLogGlobal ». Les stratégies de journal d’audit liées globales peuvent évaluer les messages de journal dans le contexte de journalisation du Web App Firewall.

  • Vous ne pouvez pas séparer les journaux du Web Application Firewall d’un serveur d’audit local ou SYSLOG exécuté sur NetScaler. L’utilisation de la fonction de journalisation local2 permet de recevoir les journaux du Web Application Firewall et de la réputation IP dans le même fichier journal.

Exemple :

  1. Passez au shell et utilisez un éditeur tel que vi pour éditer le fichier /etc/syslog.conf. Ajoutez une nouvelle entrée pour utiliser local2.* pour envoyer les journaux vers un fichier distinct, comme illustré dans l’exemple suivant :

    local2.\* /var/log/ns.log.appfw

  2. Redémarrez le processus Syslog. Vous pouvez utiliser la commande grep pour identifier l’ID de processus Syslog (PID), comme illustré dans l’exemple suivant :

    root@ns\# **ps -A | grep syslog**

    1063 ?? Ss 0:03.00 /usr/sbin/syslogd -b 127.0.0.1 -n -v -v -8 -C

    root@ns# **kill -HUP** 1063

  3. À partir de l’interface de ligne de commande, configurez la stratégie SYSLOG avancée ou classique avec une action et liez-la en tant que stratégie globale de Web App Firewall. Citrix vous recommande de configurer la stratégie SYSLOG avancée.

    Configuration avancée de la stratégie SYSLOG

    add audit syslogAction sysact1 1.1.1.1 -logLevel ALL -logFacility LOCAL2

    add audit syslogPolicy syspol1 true sysact1

    bind audit syslogGlobal -policyName syspol1 -priority 100 -globalBindType APPFW_GLOBAL

    Configuration de la stratégie classique SYSLOG

    add audit syslogAction sysact1 1.1.1.1 -logLevel ALL -logFacility LOCAL2

    add audit syslogPolicy syspol1 ns_true sysact1

    bind appfw global syspol1 100

  4. Toutes les violations du contrôle de sécurité du Web App Firewall seront désormais redirigées vers le fichier /var/log/ns.log.appfw. Vous pouvez suivre ce fichier pour afficher les violations du Web App Firewall qui sont déclenchées pendant le traitement du trafic en cours.

    root@ns# tail -f ns.log.appfw

Remarques :

  • Si vous souhaitez envoyer des journaux vers un autre fichier journal sur l’appliance NetScaler locale, vous pouvez créer un serveur Syslog sur cette appliance NetScaler locale. Ajoutez syslogaction à sa propre adresse IP et configurez l’ADC comme vous le feriez pour un serveur externe. L’ADC agit en tant que serveur pour stocker vos journaux. Deux actions ne peuvent pas être ajoutées avec la même adresse IP et le même port. Dans syslogaction, par défaut, la valeur IP est définie sur 127.0.0.1 et la valeur de port est définie sur 514.

  • Si vous avez configuré la politique Syslog pour rediriger les journaux vers une autre fonction de journalisation, les messages de journal du Web App Firewall n’apparaissent plus dans le fichier /var/log/ns.log.

Envoyer les messages du pare-feu d’application à un serveur SYSLOG distinct

Pour envoyer les messages du pare-feu d’application à un serveur SYSLOG distinct, vous devez effectuer les étapes suivantes :

  • Un utilitaire de transfert de fichiers sécurisé tel que WinSCP

  • Un utilitaire permettant d’ouvrir une console SSH sur l’appliance, tel que PuTTY

Les étapes suivantes sont impliquées pour envoyer les messages du pare-feu d’application à un serveur SYSLOG distinct :

  1. Connectez-vous à l’appliance NetScaler via WinSCP.

  2. Mettez à jour le fichier /etc/syslog.conf et ajoutez la ligne suivante dans le fichier : local5.* /var/log/appfw.log

Mettre à jour le fichier de configuration Syslog etc

  1. Exécutez la commande suivante à partir de l’interface de ligne de commande pour redémarrer le PID Syslog : kill –HUP <PID>

  2. Exécutez la commande suivante à partir de l’interface de ligne de commande pour ajouter une action Syslog telle que sysact1 : add audit syslogAction sysact1 127.0.0.1 -logLevel ALL -logFacility LOCAL5

  3. Exécutez la commande suivante pour ajouter la stratégie syspol1, qui utilise le serveur sysact1 : add audit syslogPolicy syspol1 ns_true sysact1 Ou ajoutez une stratégie Syslog avancée : add audit syslogPolicy syspol1 true sysact1

  4. Exécutez la commande suivante pour lier la stratégie de pare-feu d’applications et assurez-vous qu’elle est enregistrée dans le fichier ns.conf : bind appfw global syspol1 100 Vous pouvez également exécuter la commande suivante pour lier la stratégie Syslog avancée :

bind audit syslogGlobal -policyName syspol1 -priority 100 -globalBindType APPFW_GLOBAL

Lier la stratégie de pare-feu d'applications

Toutes les violations du contrôle de sécurité du pare-feu d’application sont redirigées vers le /var/log/appfw.log et n’apparaîtront plus dans le ns.log. Vous pouvez maintenant exécuter la commande tail et afficher les dernières entrées dans le /var/log/appfw.log.

Afficher les journaux du Web App Firewall

Vous pouvez consulter les journaux à l’aide de la visionneuse Syslog ou en vous connectant à l’appliance NetScaler, en ouvrant un shell UNIX et en utilisant l’éditeur de texte UNIX de votre choix.

Pour accéder aux messages du journal à l’aide de la ligne de commande

Passez à l’interpréteur de commandes et suivez les ns.logs dans le dossier /var/log/ pour accéder aux messages de journal relatifs aux violations de vérification de sécurité du Web App Firewall  :

  • Shell
  • tail -f /var/log/ns.log

Vous pouvez utiliser l’éditeur vi, ou n’importe quel éditeur de texte Unix ou outil de recherche de texte, pour afficher et filtrer les journaux pour des entrées spécifiques. Par exemple, vous pouvez utiliser la commande grep pour accéder aux messages de journal relatifs aux violations de carte de crédit :

  • tail -f /var/log/ns.log | grep SAFECOMMERCE

Pour accéder aux messages du journal à l’aide de l’interface graphique

L’interface graphique inclut un outil utile (Syslog Viewer) pour analyser les messages du journal. Vous disposez de plusieurs options pour accéder à la visionneuse Syslog :

  • Pour afficher les messages de journal d’une vérification de sécurité spécifique d’un profil, accédez à Web App Firewall > Profils, sélectionnez le profil cible, puis cliquez sur Vérifications de sécurité. Mettez en surbrillance la ligne correspondant au contrôle de sécurité cible, puis cliquez sur Journaux. Lorsque vous accédez aux journaux directement à partir de la vérification de sécurité sélectionnée du profil, il filtre les messages de journal et affiche uniquement les journaux relatifs aux violations du contrôle de sécurité sélectionné. La visionneuse Syslog peut afficher les journaux du Web App Firewall au format natif et au format CEF. Cependant, pour que la visionneuse Syslog filtre les messages de journal spécifiques au profil cible, les journaux doivent être au format de journal CEF lorsqu’ils sont accessibles à partir du profil.
  • Vous pouvez également accéder à la visionneuse Syslog en accédant à NetScaler > Système > Audit. Dans la section Messages d’audit, cliquez sur le lien Messages Syslog pour afficher la visionneuse Syslog, qui affiche tous les messages de journal, y compris tous les journaux de violation de contrôle de sécurité du Web App Firewall pour tous les profils. Les messages de journal sont utiles pour le débogage lorsque plusieurs violations de contrôle de sécurité peuvent être déclenchées pendant le traitement de la demande.
  • Accédez à Web App Firewall > stratégies > Audit. Dans la section Messages d’audit, cliquez sur le lien Messages Syslog pour afficher la visionneuse Syslog, qui affiche tous les messages de journal, y compris tous les journaux de violation de contrôle de sécurité pour tous les profils.

La visionneuse Syslog basée sur HTML fournit les options de filtre suivantes pour sélectionner uniquement les messages de journal qui vous intéressent :

  • Fichier—Le fichier /var/log/ns.log actuel est sélectionné par défaut et les messages correspondants apparaissent dans la visionneuse Syslog. Liste des autres fichiers journaux du répertoire /var/log disponibles au format .gz compressé. Pour télécharger et décompresser un fichier journal archivé, sélectionnez le fichier journal dans l’option de liste déroulante. Les messages de journal relatifs au fichier sélectionné sont ensuite affichés dans la visionneuse Syslog. Pour actualiser l’affichage, cliquez sur l’icône Actualiser (un cercle de deux flèches).

  • Zone de liste des modules : vous pouvez sélectionner le module NetScaler dont vous souhaitez consulter les journaux. Vous pouvez le définir sur APPFW pour les journaux de Web App Firewall.

  • Zone de liste Type d’événement : cette zone contient un ensemble de cases à cocher permettant de sélectionner le type d’événement qui vous intéresse. Par exemple, pour afficher les messages de journal relatifs aux violations de signature, vous pouvez activer la case à cocher APPFW_SIGNATURE_MATCH. De même, vous pouvez cocher une case pour activer le contrôle de sécurité spécifique qui vous intéresse. Vous pouvez sélectionner plusieurs options.

  • Gravité : vous pouvez sélectionner un niveau de gravité spécifique pour afficher uniquement les journaux correspondant à ce niveau de gravité. Laissez toutes les cases à cocher vides si vous souhaitez voir tous les journaux.

    Pour accéder aux messages du journal des violations de contrôle de sécurité du Web App Firewall pour un contrôle de sécurité spécifique, filtrez en sélectionnant APPFW dans les options de la liste déroulante pour Module. Le type d’événement affiche un ensemble complet d’options pour affiner votre sélection. Par exemple, si vous activez la case à cocher APPFW_FIELDFORMAT et que vous cliquez sur le bouton Appliquer, seuls les messages de journalisation relatifs aux violations des contrôles de sécurité des formats de champ apparaissent dans la visionneuse Syslog. De même, si vous activez les cases à cocher APPFW_SQL et APPFW_STARTURL et que vous cliquez sur le bouton Appliquer, seuls les messages de journal relatifs à ces deux violations de contrôle de sécurité apparaissent dans la visionneuse Syslog.

Si vous placez le curseur sur la ligne d’un message de journal spécifique, plusieurs options, telles que Module, Type d’événement, ID d’événementou Message, s’affichent sous le message de journal. Vous pouvez sélectionner l’une de ces options pour mettre en surbrillance les informations correspondantes dans les journaux.

Résumé

  • Prise en charge du format de journal CEF : l’option de format de journal CEF fournit une option pratique pour surveiller, analyser et analyser les messages de journal du Web App Firewall afin d’identifier les attaques, d’affiner les paramètres configurés afin de réduire les faux positifs et de recueillir des statistiques.
  • Option de personnalisation des messages de journal : vous pouvez utiliser des expressions PI avancées pour personnaliser les messages de journal et inclure les données que vous souhaitez voir dans les journaux.
  • Séparer les journaux spécifiques au Web App Firewall : vous avez la possibilité de filtrer et de rediriger les journaux spécifiques au pare-feu d’application vers un fichier journal distinct.
  • Journalisation à distance : vous pouvez rediriger les messages de journal vers un serveur Syslog distant.
  • Journalisation de la géolocalisation : vous pouvez configurer le Web App Firewall pour inclure la géolocalisation de la zone à partir de laquelle la demande est reçue. Une base de données de géolocalisation intégrée est disponible, mais vous avez la possibilité d’utiliser une base de données de géolocalisation externe. L’appliance NetScaler prend en charge les bases de données de géolocalisation statiques IPv4 et IPv6.
  • Message de journal riche en informations : voici quelques exemples du type d’informations pouvant être incluses dans les journaux, en fonction de la configuration :
    • Une stratégie Web App Firewall a été déclenchée.
    • Une violation du contrôle de sécurité a été déclenchée.
    • Une demande a été considérée comme mal formée.
    • Une demande ou une réponse a été bloquée ou non bloquée.
    • Les données de demande (telles que les caractères spéciaux de script SQL ou intersite) ou les données de réponse (telles que les numéros de carte de crédit ou les chaînes d’objets sûrs) ont été transformées.
    • Le nombre de cartes de crédit dans la réponse a dépassé la limite configurée.
    • Le numéro et le type de la carte de crédit.
    • Les chaînes de journaux configurées dans les règles de signature et l’ID de signature.
    • Informations de géolocalisation sur la source de la demande.
    • Saisie utilisateur masquée (sortie X) pour les champs confidentiels protégés.

Masquer les données sensibles à l’aide d’un modèle regex

La fonction de stratégie avancée REGEX_REPLACE (PI) d’une expression de journal (liée à un profil de pare-feu d’application Web (WAF)) vous permet de masquer les données sensibles dans les journaux WAF. Vous pouvez utiliser cette option pour masquer les données à l’aide d’un modèle d’expression régulière et fournir un modèle de caractère ou de chaîne pour masquer les données. Vous pouvez également configurer la fonction PI pour remplacer la première occurrence ou toutes les occurrences du modèle d’expression régulière.

Par défaut, l’interface graphique fournit le masque suivant :

  • SSN
  • Carte de crédit
  • Mot de passe
  • Nom d’utilisateur

Masquer les données sensibles dans les journaux du pare-feu d’application Web

Vous pouvez masquer les données sensibles dans les journaux WAF en configurant l’expression de stratégie avancée REGEX_REPLACE dans l’expression de journal liée à un profil WAF. Pour masquer les données sensibles, vous devez effectuer les étapes suivantes :

  1. Ajouter un profil de pare-feu d’application Web
  2. Liaison d’une expression de journal au profil WAF

Ajouter un profil de pare-feu d’application Web

À l’invite de commandes, tapez :

add appfw profile <name>

Exemple :

Add appfw profile testprofile1

Liaison d’une expression de journal avec le profil de pare-feu d’application Web

À l’invite de commandes, tapez :

bind appfw profile <name> -logExpression <string> <expression> –comment <string>

Exemple :

bind appfw profile testProfile -logExpression "MaskSSN" "HTTP.REQ.BODY(10000).REGEX_REPLACE(re!\b\d{3}-\d{2}-\d{4}\b!, “xxx”, ALL)" -comment "SSN Masked"

Masquer les données sensibles dans les journaux du Web Application Firewall à l’aide de l’interface graphique NetScaler

  1. Dans le volet de navigation, développez Sécurité > NetScaler Web App Firewall > Profils.
  2. Sur la page Profils, cliquez sur Modifier.
  3. Sur la page Profil de NetScaler Web App Firewall, accédez à la section Paramètres avancés et cliquez sur Enregistrement étendu.
  4. Dans la section Enregistrement étendu, cliquez sur Ajouter.

    Liaison du journal NetScaler Web App Firewall

  5. Sur la page Create NetScaler Web App Firewall Extended Log Binding, définissez les paramètres suivants :

    1. Nom. Nom de l’expression du journal.
    2. Activé. Sélectionnez cette option pour masquer les données sensibles.
    3. Masque de journal. Sélectionnez les données à masquer.
    4. Expression. Entrez l’expression de stratégie avancée qui vous permet de masquer les données sensibles dans les journaux WAF
    5. Commentaires. Brève description du masquage des données sensibles.
  6. Cliquez sur Créer et Fermer.