Ajout d'une règle

Cette rubrique de tâche décrit la procédure d'ajout d'une règle personnalisée à l'aide de l'Assistant Règles personnalisées.

Pourquoi et quand exécuter cette tâche

Remarque : L'ajout ou la suppression de constatations de sécurité ou de couverture d'examen et la modification de leur gravité affecte la densité V du projet.

Procédure

  1. Ouvrez l'assistant depuis la vue Règles personnalisées en cliquant sur le bouton Lancer l'assistant Règles personnalisées.
  2. Sur la page Sélectionnez l'application, le projet et les fichiers, sélectionnez l'application et le projet auxquels la règle s'appliquera. Assurez-vous que l'application et le projet concerné se rapportent au code source de l'élément que vous souhaitez ajouter à la Knowledgebase. Sélectionnez la configuration si celle-ci est disponible.
  3. Dans la section Portée, définissez la portée de l'examen. Les options d'examen sont les suivantes et varient en fonction du langage que vous examinez :
    Tableau 1. Options de fichiers de projet par langage
    Langage Options de fichiers de projet
    .NET
    • Examiner le projet complet pour signatures de méthodes
    • Sélectionner un ou plusieurs fichiers externes au projet

    Un projet .NET inclut n'importe quel assemblage valide, généralement un fichier .dll ou .exe.

    Java
    • Examiner le projet complet pour signatures de méthodes
    • Sélectionner un ou plusieurs fichiers dans le projet
    • Sélectionner un ou plusieurs fichiers externes au projet

    Un projet Java inclut des fichiers .jar ou .class ou une hiérarchie de répertoires de fichiers de classe.

    C/C++
    • Examiner le projet complet pour signatures de méthodes
    • Sélectionner un ou plusieurs fichiers dans le projet
    Visual Basic Examiner les fichiers FRM (formulaires), CLS (classe) et BAS (basic)
    Classic ASP Fichiers Scan ASP files uniquement
    • Le mode d'examen par défaut est : Examiner le projet complet pour signatures de méthodes. Ce mode examine la totalité du projet et renvoie toutes les signatures disponibles. Ce mode d'examen peut prendre du temps.
    • L'option Sélectionnez un ou plusieurs fichiers dans le projet permet d'isoler certains fichiers de projet contenant des méthodes qui peuvent nécessiter des règles personnalisées.
    • L'option Sélectionnez un ou plusieurs fichiers externes au projet identifie des fichiers externes à ce projet qui doivent être inclus dans l'examen.
  4. Dans la section Mise en cache, cochez la case permettant de relire un projet ou un code modifié. Le cache d'analyse de vulnérabilité sera lui aussi vidé (si le projet en cours est configuré pour mise en cache de l'analyse de vulnérabilité, ce cache sera recréé à l'analyse suivante).
  5. Analyse de chaîne : L'analyse de chaîne surveille les manipulations de chaînes dans les projets Java ou Microsoft .NET. Elle assure la détection automatique des routines d'assainissement et de validation. Grâce à cette détection, il est possible de réduire les résultats faussement positifs ou faussement négatifs. Pour activer l'analyse de chaîne, cochez la case Activer l'analyse de chaîne pour trouver les fonctions permettant de valider et rendre inoffensif. La case Appliquer les règles importées à la portée globale détermine si les routines d'assainissement ou de validation découvertes doivent être appliquées à l'échelle du projet ou au niveau global (à tous les projets).
    Remarque : L'analyse de chaîne peut ralentir un examen. Il est donc recommandé de ne l'appliquer qu'après un changement de code, puis de la désactiver pour les examens suivants. En outre, les routines découvertes doivent être considérées comme des suggestions et examinées par les auditeurs. Ces routines peuvent être visualisées dans la vue Règles personnalisées.
  6. Cliquez sur Suivant pour passer à la page suivante de l'assistant.
  7. Sur la page Sélectionner les méthodes :
    1. Sélectionnez la ou les méthode(s) à ajouter à la Knowledgebase. La méthode est le nom de l'API vulnérable.

      La liste de méthodes peut être filtrée des deux façons suivantes :

      • Filtrage automatique : Tapez le texte du filtre dans la zone Filtrer. A mesure que vous tapez le texte, le filtre correspondant est automatiquement appliqué à la liste de méthodes. Il s'agit du mode de filtrage par défaut.
      • Filtrage manuel : Tapez le texte du filtre dans la zone Filtrer, puis cliquez sur le bouton Filtrer (ou appuyez sur Entrée) pour appliquer le filtre à la liste. Vous souhaiterez peut-être utiliser le filtrage manuel car un nombre élevé de méthodes provoque des délais dans le cas du filtrage automatique.

      Dans les deux cas, l'astérisque (*) et le point d'interrogation (?) peuvent être utilisés comme caractères génériques. Un astérisque correspond à un groupe de zéro ou plusieurs caractères et le point d'interrogation correspond à un caractère.

      Pour modifier le mode de filtrage, utilisez le bouton Filtrer comme option à bascule en cliquant deux fois dessus ou en utilisant le clavier pour y accéder et en appuyant sur la barre d'espacement. Lorsque le filtrage manuel est activé, le bouton Filtrer apparaît comme non utilisé et l'infobulle correspondante indique Apply filter (double-click or press space to filter automatically). Lorsque le filtrage automatique est utilisé, le bouton apparaît comme utilisé et l'infobulle correspondante indique Filter manually.

      Pour optimiser l'affichage de la liste de méthodes, des actions de développement et de réduction sont disponibles. Pour développer ou réduire l'ensemble de l'arborescence, cliquez avec le bouton droit de la souris et sélectionnez Développer tout ou Réduire tout. Pour développer un package ou une classe et toutes les sous-entrées correspondantes, cliquez avec le bouton droit de la souris sur le package ou la classe, puis sélectionnez Expand Children.

      Pour sélectionner plusieurs méthodes, utilisez les touches du clavier Ctrl ou Majde commande ou maj.

      Cochez la case Afficher les signatures complètes pour afficher la signature entièrement qualifiée des méthodes dans l'arborescence. Par exemple, la signature Java entièrement qualifiée inclut le package, la classe, la méthode, les types d'argument et les types de retour, comme com.test.vulnerable.VulnClass.vulnerable(java.lang.string;int):int.

    2. Déterminez si l'examen doit marquer la méthode comme étant l'une de celles-ci :
  8. Si vous ajoutez des méthodes en tant que Non vulnérable aux tâches, N'est pas une routine de validation/codage, Propagateur de tâche ou Rappel entaché, cliquez sur Terminer pour ajouter les enregistrements à la AppScan® Source Security Knowledgebase.
  9. Si vous ajoutez des méthodes en tant que Source (de tache) ou Message d'information, procédez comme suit :
    1. Cliquez sur Suivant pour passer à la page Affecter des attributs de règle.
    2. Pour chaque méthode que vous avez ajoutée : Sélectionnez une ou plusieurs propriétés à affecter à la méthode. La colonne Type de la méthode sera mise à jour pour indiquer le type de vulnérabilité des constatations qui seront générées par la règle personnalisée.
      Conseil : Pour ajouter les mêmes propriétés à plusieurs méthodes, sélectionnez les méthodes en utilisant les touches du clavier Ctrl ou Majde commande ou maj, puis sélectionnez les propriétés que vous souhaitez affecter aux méthodes.
    3. Cliquez sur Terminer pour ajouter les enregistrements à la AppScan® Source Security Knowledgebase.
  10. Si vous ajoutez des méthodes en tant que Collecteur (vulnérable aux taches) :
    1. Cliquez sur Suivant pour passer à la page Affecter des attributs de règle.
    2. Pour chaque méthode que vous avez ajoutée :
      • Sélectionnez le niveau de Gravité de l'impact de la vulnérabilité : Elevée, Moyenne, ou Faible.
      • Sélectionnez le Type de vulnérabilité à appliquer à la méthode.
      Conseil : Pour ajouter les mêmes propriétés à plusieurs méthodes, sélectionnez les méthodes en utilisant les touches du clavier Ctrl ou Majde commande ou maj, puis sélectionnez les propriétés que vous souhaitez affecter aux méthodes.
    3. Cliquez sur Terminer pour ajouter les enregistrements à la AppScan® Source Security Knowledgebase.
  11. Si vous ajoutez des méthodes en tant que Constatation sans trace :
    1. Cliquez sur Suivant pour passer à la page Affecter des attributs de règle.
    2. Pour chaque méthode que vous avez ajoutée :
      • Sélectionnez le niveau de Gravité de l'impact de la vulnérabilité : Elevée, Moyenne, ou Faible.
      • Sélectionnez la classification à affecter à la méthode : Définitive, Suspecte ou Configuration.
      • Sélectionnez le Type de vulnérabilité à appliquer à la méthode.
      Conseil : Pour ajouter les mêmes propriétés à plusieurs méthodes, sélectionnez les méthodes en utilisant les touches du clavier Ctrl ou Majde commande ou maj, puis sélectionnez les propriétés que vous souhaitez affecter aux méthodes.
    3. Cliquez sur Terminer pour ajouter les enregistrements à la AppScan® Source Security Knowledgebase.