ADC

Vérification de l’injection XML SQL

Le contrôle d’injection XML SQL examine les demandes des utilisateurs pour détecter d’éventuelles attaques par injection SQL XML. S’il trouve du code SQL injecté dans des charges utiles XML, il bloque les requêtes.

Une attaque SQL XML peut injecter du code source dans une application Web afin qu’il puisse être interprété et exécuté comme une requête SQL valide pour effectuer une opération de base de données avec une intention malveillante. Par exemple, des attaques XML SQL peuvent être lancées pour obtenir un accès non autorisé au contenu d’une base de données ou pour manipuler les données stockées. Les attaques par injection SQL XML sont non seulement courantes, mais elles peuvent également être très dangereuses et coûteuses.

La compartimentation des privilèges des utilisateurs de la base de données peut contribuer à protéger la base de données dans une certaine mesure. Tous les utilisateurs de base de données doivent disposer uniquement des privilèges nécessaires pour effectuer les tâches prévues, afin qu’ils ne puissent pas exécuter de requêtes SQL pour effectuer d’autres tâches. Par exemple, un utilisateur en lecture seule ne doit pas être autorisé à écrire ou à manipuler des tables de données. Le contrôle d’injection SQL XML du Web App Firewall inspecte toutes les requêtes XML afin de fournir des défenses spéciales contre l’injection de code SQL non autorisé susceptible de porter atteinte à la sécurité. Si le Web App Firewall détecte du code SQL non autorisé dans une requête XML d’un utilisateur, il peut bloquer la demande.

Le NetScaler Web App Firewall inspecte la présence de mots clés SQL et de caractères spéciaux afin d’identifier l’attaque par injection SQL XML. Un ensemble de mots-clés et de caractères spéciaux par défaut fournit des mots-clés connus et des caractères spéciaux couramment utilisés pour lancer des attaques XML SQL. Le Web App Firewall considère trois caractères, le guillemet droit simple (‘), la barre oblique inverse () et le point-virgule (;) comme des caractères spéciaux pour le traitement des contrôles de sécurité SQL. Vous pouvez ajouter de nouveaux modèles et modifier le paramètre par défaut pour personnaliser l’inspection de vérification XML SQL.

Le Web App Firewall propose diverses options d’action pour mettre en œuvre la protection contre les injections SQL XML. Vous pouvez bloquer la demande, enregistrer un message dans le fichier ns.log avec des détails concernant les violations observées et collecter des statistiques pour suivre le nombre d’attaques observées.

Outre les actions, plusieurs paramètres peuvent être configurés pour le traitement par injection XML SQL. Vous pouvez vérifier la présence de caractères génériques SQL. Vous pouvez modifier le type d’injection SQL XML et sélectionner l’une des 4 options (SQLKeyword, SQLSplChar, SQLSplCharAndKeyword, SQLSplCharOrKeyword) pour indiquer comment évaluer les mots-clésSQL et les caractères spéciaux SQL lors du traitementde la charge utile XML. Le paramètre Gestion des commentaires XML SQL vous permet de spécifier le type de commentaires qui doivent être inspectés ou exemptés lors de la détection d’une injection XML SQL.

Vous pouvez déployer des relaxations pour éviter les faux positifs. La vérification SQL XML du Web App Firewall est effectuée sur la charge utile des demandes entrantes, et les chaînes d’attaque sont identifiées même si elles sont réparties sur plusieurs lignes. La vérification recherche les chaînes d’injection SQL dans l’ élément et les valeurs d’attribut . Vous pouvez appliquer des assouplissements pour contourner les contrôles de sécurité dans des conditions spécifiques. Les journaux et les statistiques peuvent vous aider à identifier les relaxations nécessaires.

Options d’action

Une action est appliquée lorsque le contrôle de l’injection SQL XML détecte une chaîne d’attaque par injection SQL dans la demande. Les actions suivantes sont disponibles pour configurer une protection optimisée contre les injections SQL XML pour votre application :

Bloquer—Si vous activez le blocage, l’action de blocage est déclenchée uniquement si l’entrée correspond à la spécification du type d’injection XML SQL. Par exemple, si SQLSplCharAndKeyword est configuré comme type d’injection SQL XML, une requête n’est pas bloquée si elle ne contient aucun mot clé, même si des caractères spéciaux SQL sont détectés dans la charge utile. Une telle demande est bloquée si le type d’injection SQL XML est défini surSQLSplChar ou SQLSplCharOrKeyword.

Journal : si vous activez la fonctionnalité de journalisation, le contrôle d’injection SQL XML génère des messages de journal indiquant les actions entreprises. Si le blocage est désactivé, un message de journal distinct est généré pour chaque emplacement (ELEMENT, ATTRIBUTE) dans lequel la violation du code SQL XML a été détectée. Toutefois, un seul message est généré lorsque la demande est bloquée. Vous pouvez surveiller les journaux pour déterminer si les réponses aux demandes légitimes sont bloquées. Une forte augmentation du nombre de messages de journal peut indiquer des tentatives de lancement d’une attaque.

Stats : si elle est activée, la fonctionnalité de statistiques collecte des statistiques sur les violations et les journaux. Une augmentation inattendue du compteur de statistiques peut indiquer que votre application est attaquée. Si des demandes légitimes sont bloquées, vous devrez peut-être revoir la configuration pour voir si vous devez configurer de nouvelles règles de relaxation ou modifier celles existantes.

Paramètres SQL XML

Outre les actions de blocage, de journalisation et de statistiques, vous pouvez configurer les paramètres suivants pour la vérification de l’injection XML SQL :

Vérifiez la présence de caractères génériques XML SQL : les caractèresgénériques peuvent être utilisés pour élargir les sélections d’une instruction en langage de requête structuré (SQL-SELECT). Ces opérateurs génériques peuvent être utilisés conjointement avec les opérateurs LIKE et NOT LIKE pour comparer une valeur à des valeurs similaires. Le pourcentage (%) et le trait de soulignement (_) sont fréquemment utilisés comme caractères génériques. Le signe pour cent est analogue au caractère générique astérisque (*) utilisé avec MS-DOS et pour faire correspondre zéro, un ou plusieurs caractères dans un champ. Le trait de soulignement est similaire au point d’interrogation MS-DOS (?) caractère générique. Il correspond à un seul nombre ou caractère dans une expression.

Par exemple, vous pouvez utiliser la requête suivante pour effectuer une recherche de chaîne afin de rechercher tous les clients dont le nom contient le caractère D.

SELECT * from customer WHERE name like "%D%"

L’exemple suivant combine les opérateurs pour rechercher toutes les valeurs salariales dont le deuxième et le troisième caractère sont 0.

SELECT * from customer WHERE salary like '_00%

Différents fournisseurs de SGBD ont étendu les caractères génériques en ajoutant des opérateurs supplémentaires. Le pare-feu NetScaler Web App peut protéger contre les attaques lancées en injectant ces caractères génériques. Les 5 caractères génériques par défaut sont le pourcentage (%), le trait de soulignement (_), le caret (^), le crochet ouvrant ([) et le crochet fermant (]). Cette protection s’applique aux profils HTML et XML.

Les caractères génériques par défaut sont une liste de littéraux spécifiés dans *Signatures par défaut :

-  <wildchar type=”LITERAL”>%</wildchar>
-  <wildchar type=”LITERAL”>_</wildchar>
-  <wildchar type=”LITERAL”>^</wildchar>
-  <wildchar type=”LITERAL”>[</wildchar>
-  <wildchar type=”LITERAL”>]</wildchar>
<!--NeedCopy-->

Les caractères génériques d’une attaque peuvent être PCRE, comme [^A-F]. Le Web App Firewall prend également en charge les caractères génériques PCRE, mais les caractères génériques littéraux ci-dessus sont suffisants pour bloquer la plupart des attaques.

Remarque

La vérification des caractères génériques XML SQL est différente de la vérification des caractères spéciaux XML SQL. Cette option doit être utilisée avec précaution afin d’éviter les faux positifs.

Demande de vérification contenant le type d’injection SQL : le Web App Firewall propose 4 options pour mettre en œuvre le niveau de rigueur souhaité pour l’inspection par injection SQL, en fonction des besoins individuels de l’application. La demande est vérifiée par rapport à la spécification du type d’injection pour détecter les violations SQL. Les 4 options de type d’injection SQL sont les suivantes :

  • Caractère spécial et mot cléSQL : un mot clé SQL et un caractère spécial SQL doivent tous deux être présents à l’emplacement inspecté pour déclencher une violation SQL. Ce paramètre le moins restrictif est également le paramètre par défaut.
  • Caractère spécial SQL : au moins l’un des caractères spéciaux doit être présent dans la chaîne de charge utile traitée pour déclencher une violation SQL.
  • Mot-clé SQL—Au moins l’un des mots-clés SQL spécifiés doit être présent dans la chaîne de charge utile traitée pour déclencher une violation SQL. Ne sélectionnez pas cette option sans avoir dûment pris en considération. Pour éviter les faux positifs, assurez-vous qu’aucun des mots-clés n’est attendu dans les entrées.
  • Caractère spécial ou mot clé SQL : le mot clé ou la chaîne de caractères spéciaux doit être présent dans la charge utile pour déclencher la violation du contrôle de sécurité.

Conseil

Si vous sélectionnez l’option Caractère spécial SQL, le Web App Firewall ignore les chaînes qui ne contiennent aucun caractère spécial. Étant donné que la plupart des serveurs SQL ne traitent pas les commandes SQL qui ne sont pas précédées d’un caractère spécial, l’activation de cette option peut réduire considérablement la charge sur le Web App Firewall et accélérer le traitement sans mettre en danger vos sites Web protégés.

Gestion des commentaires SQL : par défaut, le Web App Firewall analyse et vérifie tous les commentaires contenus dans les données XML pour détecter les commandes SQL injectées. De nombreux serveurs SQL ignorent tout contenu dans un commentaire, même s’il est précédé d’un caractère spécial SQL. Pour accélérer le traitement, si votre serveur SQL XML ignore les commentaires, vous pouvez configurer le Web App Firewall pour ignorer les commentaires lors de l’examen des demandes de SQL injecté. Les options de gestion des commentaires XML SQL sont les suivantes :

  • ANSI—Ignorez les commentaires SQL au format ANSI, qui sont normalement utilisés par les bases de données SQL basées sur UNIX.
  • Imbriqué—Ignorer les commentaires SQL imbriqués, qui sont normalement utilisés par Microsoft SQL Server.
  • ANSI/imbriqué—Ignorer les commentaires qui respectent les normes ANSI et SQL de commentaires imbriqués. Les commentaires qui correspondent uniquement à la norme ANSI, ou uniquement à la norme imbriquée, sont toujours vérifiés pour détecter le code SQL injecté.
  • Vérifiez tous les commentaires : vérifiez l’intégralité de la demande de SQL injecté, sans rien ignorer. C’est le réglage par défaut.

Conseil

Dans la plupart des cas, vous ne devez pas choisir l’option Nested ou ANSI/Nested sauf si votre base de données principale s’exécute sur Microsoft SQL Server. La plupart des autres types de logiciels SQL Server ne reconnaissent pas les commentaires imbriqués. Si des commentaires imbriqués apparaissent dans une demande dirigée vers un autre type de serveur SQL, ils peuvent indiquer une tentative de violation de la sécurité sur ce serveur.

Règles de relaxation

Si votre application exige que vous contourniez l’inspection par injection SQL XML pour un ÉLÉMENT ou UN ATTRIBUT spécifique dans la charge utile XML, vous pouvez configurer une règle de relaxation. Les règles de relaxation relatives à l’inspection par injection SQL XML comportent les paramètres suivants :

  • Nom : Vous pouvez utiliser des chaînes littérales ou des expressions régulières pour configurer le nom de l’ ÉLÉMENT ou de l’ ATTRIBUT. L’expression suivante exempte tous les ÉLÉMENTS commençant par la chaîne PurchaseOrder_ suivie d’une chaîne de chiffres d’au moins deux et d’au plus dix caractères :

    Commentaire : « Vérification SQL XML exemptée pour les éléments du bon de commande »

    XMLSQLInjection:  "PurchaseOrder_[0-9A-Za-z]{2,10}"

    IsRegex:  REGEX          Location:  ELEMENT

    State:  ENABLED
<!--NeedCopy-->

Remarque : Les noms font la distinction entre majuscules et minuscules. Les doublons ne sont pas autorisés, mais vous pouvez utiliser la majuscule des noms et les différences d’emplacement pour créer des entrées similaires. Par exemple, chacune des règles de relaxation suivantes est unique :


1)      XMLSQLInjection:  XYZ    IsRegex:  NOTREGEX

        Location:  ELEMENT       State:  ENABLED

2)      XMLSQLInjection:  xyz    IsRegex:  NOTREGEX

        Location:  ELEMENT       State:  ENABLED

3)      XMLSQLInjection:  xyz    IsRegex:  NOTREGEX

        Location:  ATTRIBUTE     State:  ENABLED

4)      XMLSQLInjection:  XYZ    IsRegex:  NOTREGEX

        Location:  ATTRIBUTE     State:  ENABLED
<!--NeedCopy-->
  • Emplacement : vous pouvez spécifier l’emplacement de l’exception XML SQL Inspection dans votre charge utile XML. L’option ELEMENT est sélectionnée par défaut. Vous pouvez le remplacer par ATTRIBUTE.
  • Commentaire : Ce champ est facultatif. Vous pouvez utiliser une chaîne de 255 caractères maximum pour décrire l’objectif de cette règle de relaxation.

Avertissement

Les expressions régulières sont puissantes. Surtout si vous n’êtes pas très familier avec les expressions régulières au format PCRE, vérifiez toutes les expressions régulières que vous écrivez. Assurez-vous qu’ils définissent exactement le nom que vous souhaitez ajouter en tant qu’exception, et rien d’autre. L’utilisation imprudente d’expressions régulières peut avoir des conséquences indésirables, par exemple en bloquant l’accès à du contenu Web que vous n’aviez pas l’intention de bloquer ou en autorisant une attaque que l’inspection par injection SQL XML aurait autrement bloquée.

Utilisation de la ligne de commande pour configurer le contrôle d’injection XML SQL

Pour configurer les actions d’injection SQL XML et d’autres paramètres à l’aide de la ligne de commande :

Dans l’interface de ligne de commande, vous pouvez utiliser la commande set appfw profile ou la commande add appfw profile pour configurer les protections d’injection SQL XML. Vous pouvez activer les actions de blocage, de journalisation et de statistiques. Sélectionnez le type de modèle d’attaque SQL (mots clés, caractères génériques, chaînes spéciales) que vous souhaitez détecter dans les charges utiles. Utilisez la commande unset appfw profile pour rétablir les paramètres configurés à leurs valeurs par défaut. Chacune des commandes suivantes ne définit qu’un seul paramètre, mais vous pouvez inclure plusieurs paramètres dans une seule commande :

  • set appfw profile <name> **-XMLSQLInjectionAction** (([block] [log] [stats]) | [none])
  • set appfw profile <name> -XMLSQLInjectionCheckSQLWildChars (ON |OFF)
  • set appfw profile <name> -XMLSQLInjectionType ([SQLKeyword] | [SQLSplChar] | [SQLSplCharANDKeyword] | [SQLSplCharORKeyword])
  • set appfw profile <name> -XMLSQLInjectionParseComments ([checkall] | [ansi|nested] | [ansinested])

Pour configurer une règle de relaxation d’injection SQL à l’aide de la ligne de commande

Utilisez la commande bind or unbind pour ajouter ou supprimer des règles de relaxation, comme suit :

-  bind appfw profile <name> -XMLSQLInjection <string> [isRegex (REGEX | NOTREGEX)] [-location ( ELEMENT | ATTRIBUTE )] –comment <string> [-state ( ENABLED | DISABLED )]
-  unbind appfw profile <name> -XMLSQLInjection <String>
<!--NeedCopy-->

Exemple :

> bind appfw profile test_profile -XMLSQLInjection "PurchaseOrder_[0-9A-Za-z]{2,15}" -isregex REGEX -location ATTRIBUTE

> unbind appfw profile test_profile –XMLSQLInjection "PurchaseOrder_[0-9A-Za-z]{2,15}" -location ATTRIBUTE
<!--NeedCopy-->

Utilisation de l’interface graphique pour configurer le contrôle de sécurité de l’injection XML/SQL

Dans l’interface graphique, vous pouvez configurer le contrôle de sécurité de l’injection SQL XML dans le volet du profil associé à votre application.

Pour configurer ou modifier l’injection XML SQL, vérifiez à l’aide de l’interface graphique

  1. Accédez à Web App Firewall > Profils, mettez en surbrillance le profil cible, puis cliquez sur Modifier.
  2. Dans le volet Paramètres avancés, cliquez sur Contrôles de sécurité.

Le tableau de contrôle de sécurité affiche les paramètres d’action actuellement configurés pour tous les contrôles de sécurité. Deux options de configuration s’offrent à vous :

a. Si vous souhaitez simplement activer ou désactiver les actions de blocage, de journalisation et de statistiques pour l’injection SQL XML, vous pouvez activer ou désactiver les cases à cocher dans le tableau, cliquer sur OK, puis sur Enregistrer et fermer pour fermer le volet de contrôle de sécurité.

b. Si vous souhaitez configurer des options supplémentaires pour ce contrôle de sécurité, double-cliquez sur Injection SQL XML ou sélectionnez la ligne et cliquez sur Paramètres d’actionpour afficher les options suivantes :

Rechercher les caractères génériques SQL : considérez les caractères génériques SQL dans la charge utile comme des modèles d’attaque.

Check Request Containing : type d’injection SQL (SQLKeyword, SQLSplChar, SQLSplCharAndKeyword ou SQLSplCharOrKeyword) à vérifier.

Gestion des commentaires SQL : type de commentaires (cocher tous les commentaires, ANSI, imbriqué ou ANSI/imbriqué) à vérifier.

Après avoir modifié l’un des paramètres ci-dessus, cliquez sur OK pour enregistrer les modifications et revenir au tableau Contrôles de sécurité. Vous pouvez procéder à la configuration d’autres contrôles de sécurité si nécessaire. Cliquez sur OK pour enregistrer toutes les modifications que vous avez apportées dans la section Contrôles de sécurité, puis cliquez sur Enregistrer et fermer pour fermer le volet Contrôle de sécurité.

Pour configurer une règle de relaxation d’injection SQL XML à l’aide de l’interface graphique

  1. Accédez à Web App Firewall > Profils, mettez en surbrillance le profil cible, puis cliquez sur Modifier.
  2. Dans le volet Paramètres avancés, cliquez sur Règles de relaxation.
  3. Dans le tableau des règles de relaxation, double-cliquez sur l’entrée XML SQL Injection ou sélectionnez-la et cliquez sur Modifier.
  4. Dans la boîte de dialogue Règles de relaxation XML SQL Injection, effectuez des opérations d’ ajout, de modification, de suppression, d’activationou de désactivation pour les règles de relaxation.

Pour gérer les règles de relaxation de l’injection SQL XML à l’aide du visualiseur

Pour obtenir une vue consolidée de toutes les règles de relaxation, vous pouvez surligner la ligne d’injection SQL XML dans le tableau des règles de relaxation, puis cliquer sur Visualiseur. Le visualiseur pour les relaxations déployées vous offre la possibilité d’ ajouter une nouvelle règle ou de modifier une règle existante. Vous pouvez également activer ou désactiver un groupe de règles en sélectionnant un nœud et en cliquant sur les boutons correspondants dans le visualiseur de relaxation.

Pour afficher ou personnaliser les modèles d’injection SQL à l’aide de l’interface graphique :

Vous pouvez utiliser l’interface graphique pour afficher ou personnaliser les modèles SQL.

Les modèles SQL par défaut sont spécifiés dans Web App Firewall > Signatures > *Signaturespar défaut. Si vous ne liez aucun objet de signature à votre profil, les modèles SQL par défaut spécifiés dans l’objet Signatures par défaut seront utilisés par le profil pour le traitement des contrôles de sécurité par injection SQL XML. Les règles et modèles de l’objet Signatures par défaut sont en lecture seule. Vous ne pouvez pas les modifier ou les modifier. Si vous souhaitez modifier ou changer ces modèles, créez un objet de signature défini par l’utilisateur en copiant l’objet Signatures par défaut et en modifiant les modèles SQL. Utilisez l’objet signature défini par l’utilisateur dans le profil qui traite le trafic pour lequel vous souhaitez utiliser ces modèles SQL personnalisés.

Pour plus d’informations, voir Signatures.

Pour afficher les modèles SQL par défaut :

a. Accédez à Web App Firewall > Signatures, sélectionnez *Signatures par défaut, puis cliquez sur Modifier. Cliquez ensuite sur Gérer les modèles de script SQL/intersite.

Le tableau Manage SQL/Cross-Site Scripting Paths contient les quatre lignes suivantes relatives à l’injection SQL :

Injection (not_alphanum, SQL)/ Keyword

Injection (not_alphanum, SQL)/ specialstring

Injection (not_alphanum, SQL)/ transformrules/transform

Injection (not_alphanum, SQL)/ wildchar
<!--NeedCopy-->

b. Sélectionnez une ligne et cliquez sur Gérer les éléments pour afficher les modèles SQL correspondants (mots-clés, chaînes spéciales, règles de transformation ou caractères génériques) utilisés par le contrôle d’injection SQL du Web App Firewall.

Pour personnaliser les modèles SQL : vous pouvez modifier un objet de signature défini par l’utilisateur pour personnaliser les mots clés SQL, les chaînes spéciales et les caractères génériques. Vous pouvez ajouter de nouvelles entrées ou supprimer celles qui existent déjà. Vous pouvez modifier les règles de transformation pour les chaînes spéciales SQL.

a. Accédez à Web App Firewall > Signatures, mettez en surbrillance la signature définie par l’utilisateur cible, puis cliquez sur Modifier. Cliquez sur Gérer les modèles de script SQL/intersite pour afficher le tableau Gérer les chemins de script SQL/intersite .

b. Sélectionnez la ligne SQL cible.

i. Cliquez sur Gérer les élémentspour ajouter, modifier ou supprimer l’élément SQL correspondant.

ii. Cliquez sur Supprimer pour supprimer la ligne sélectionnée.

Avertissement

Vous devez être très prudent lorsque vous supprimez ou modifiez un élément SQL par défaut, ou lorsque vous supprimez le chemin SQL pour supprimer la ligne entière. Les règles de signature ainsi que le contrôle de sécurité de l’injection SQL XML s’appuient sur ces éléments pour détecter les attaques par injection SQL afin de protéger vos applications. La personnalisation des modèles SQL peut rendre votre application vulnérable aux attaques SQL XML si le modèle requis est supprimé lors de la modification.

Utilisation de la fonction de journalisation avec le contrôle d’injection XML SQL

Lorsque l’action de journalisation est activée, les violations du contrôle de sécurité de l’ injection SQL XML sont enregistrées dans le journal d’audit en tant que violations APPFW_XML_SQL . Le Web App Firewall prend en charge les formats de journaux natifs et CEF. Vous pouvez également envoyer les journaux à un serveur Syslog distant.

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

Passez au shell et suivez le fichier ns.logs dans le dossier /var/log/ pour accéder aux messages de journal relatifs aux violations des scripts intersites XML :

> Shell

> tail -f /var/log/ns.log | grep APPFW_XML_SQL
<!--NeedCopy-->

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 :

  • Accédez à Web App Firewall > Profils, sélectionnez le profil cible et cliquez sur Security Checks. Sélectionnez la ligne d’injection SQL XML et cliquez sur Journaux. Lorsque vous accédez aux journaux directement à partir de la vérification du profil par injection SQL XML, l’interface utilisateur filtre les messages du journal et affiche uniquement les journaux relatifs à ces violations de contrôle de sécurité.

  • Vous pouvez également accéder au visualiseur Syslog en accédant à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 les autres journaux de violation de vérification de sécurité. Ceci est utile pour le débogage lorsque plusieurs violations de contrôle de sécurité peuvent être déclenchées pendant le traitement des demandes.

  • Accédez à Web App Firewall > Politiques > Audit. Dans la section Messages d’audit, cliquez sur le lien des messages Syslog pour afficher le visualiseur Syslog, qui affiche tous les messages du journal, y compris les autres journaux de violations des contrôles de sécurité.

Le visualiseur Syslog basé sur XML fournit diverses options de filtrage pour sélectionner uniquement les messages du journal qui vous intéressent. Pour sélectionner les messages du journal pour la vérification de l’injection SQL XML, filtrez en sélectionnantAPPFWdans les options déroulantes du module. La liste Type d’événement offre un ensemble complet d’options pour affiner votre sélection. Par exemple, si vous cochez la case APPFW_XML_SQL et cliquez sur le bouton Appliquer, seuls les messages de journal relatifs aux violations du contrôle de sécurité de l’ injection SQL XML apparaissent dans le visualiseur Syslog.

Si vous placez le curseur sur la ligne correspondant à un message de journal spécifique, plusieurs options, telles que le module, le type d’événement, l’ ID d’événementet l’ adresse IP du client, apparaissent sous le message du journal. Vous pouvez sélectionner l’une de ces options pour mettre en surbrillance les informations correspondantes dans le message de journal.

Statistiques relatives aux violations d’injection XML SQL

Lorsque l’action statistique est activée, le compteur du contrôle d’injection SQL XML est incrémenté lorsque le Web App Firewall entreprend une action pour ce contrôle de sécurité. Les statistiques sont collectées pour le taux et le nombre total pour le trafic, les violations et les journaux. La taille d’un incrément du compteur de journaux peut varier en fonction des paramètres configurés. Par exemple, si l’action de blocage est activée, une demande concernant une page contenant trois violations d’injection SQL XML augmente le compteur de statistiques d’une unité, car la page est bloquée dès que la première violation est détectée. Toutefois, si le bloc est désactivé, le traitement de la même demande incrémente le compteur de statistiques pour les violations et les journaux de trois, car chaque violation génère un message de journal distinct.

Pour afficher les statistiques d’injection XML SQL à l’aide de la ligne de commande

À l’invite de commande, tapez :

> sh appfw stats

Pour afficher les statistiques d’un profil spécifique, utilisez la commande suivante :

> stat appfw profile <profile name>

Pour afficher les statistiques d’injection XML SQL à l’aide de l’interface graphique

  1. Accédez à Système > Sécurité > Web App Firewall.
  2. Dans le volet droit, accédez au lien Statistiques .
  3. Utilisez la barre de défilement pour afficher les statistiques relatives aux violations et aux journaux relatifs aux injections SQL XML . Le tableau des statistiques fournit des données en temps réel et est mis à jour toutes les 7 secondes.