Conseils concernant les tests d'autres outils

Utiliser des outils d'analyse autres que CASA préconfiguré :

Les développeurs qui souhaitent utiliser des outils d'analyse SAST et DAST (outils développés en interne ou commerciaux) doivent fournir:

  • Résultat de l'analyse par rapport au benchmark OWASP. Les outils d'analyse doivent détecter toutes les failles positives réelles qui correspondent à CASA (voir les instructions ci-dessous).
  • Règle d'analyse. Il peut s'agir d'une capture d'écran montrant les failles de sécurité logicielle contre lesquelles l'outil a effectué une analyse ou d'une capture d'écran montrant les failles de sécurité logicielle contre lesquelles l'outil a effectué une analyse. 

Benchmark d'exécution

Vous devez disposer des éléments suivants pour exécuter Benchmark:

  1. GIT : https://git-scm.com/ ou https://github.com/
  2. Maven : https://maven.apache.org/ (version 3.2.3 ou ultérieure)
  3. Java : https://www.oracle.com/java/technologies/javase-downloads.html (Java 7 ou 8) (64 bits)

Pour les besoins de la certification CASA, veillez à générer et à envoyer un tableau de données de référence pour votre outil d'analyse DAST ou SAST. Notez que l'analyse comparative contient un grand nombre de tests et que son analyse peut prendre un certain temps. 

Exécutez les commandes suivantes pour télécharger et exécuter l'application Benchmark :

$ git clone https://github.com/OWASP-Benchmark/BenchmarkJava
    $ cd benchmark
    $ mvn compile
    $ runBenchmark.sh

L'analyse comparative s'exécutera sur https://localhost:8443/benchmark/. Il peut être utilisé comme cible pour toutes les analyses DAST. Vous pouvez maintenant exécuter l'outil de votre choix sur le code source et l'application d'exécution du benchmark. Veillez à enregistrer vos résultats dans le répertoire /results du dépôt de référence. 

Incluez les éléments suivants dans le nom de votre fichier de sortie pour le générateur de tableau de données :

  1. Numéro de version du benchmark, pour éviter le mappage des résultats attendus incorrects
  2. Nom de votre outil d'analyse
  3. Version de votre outil d'analyse

L'exemple de nom de fichier de sortie suivant correspond à une analyse exécutée à l'aide de la version 3.0 de "nom de l'outil" et comparée à la version 1.2 de l'analyse comparative. 

Benchmark_1.2-toolname-v3.0.xml

Générer un score de benchmark

Le benchmark évalue les applications en fonction de quatre métriques :

  1. Vrais positifs : l'outil identifie correctement une faille réelle
  2. Faux négatifs : les outils ne détectent pas une faille réelle
  3. Vrai négatif : l'outil ignore correctement une fausse alerte.
  4. Faux négatif : l'outil ne parvient pas à ignorer une fausse alarme

Le tableau de données de référence décrit les performances de votre outil d'analyse dans ces dimensions. Lorsque vous téléchargez l'outil Benchmark depuis GitHub, il inclut un outil BenchmarkScore. L'exécution de cet outil sur le résultat de l'analyse génère un graphique PNG décrivant votre score final. Vous trouverez des exemples de résultats ici. Pour générer vos propres tableaux de données de référence, exécutez la commande suivante :

sh createScorecards.sh

Un tableau de données est créé pour chaque sortie dans le répertoire /results. Le tableau de données généré sera enregistré dans le répertoire /scorecard. Envoyez le tableau de données dans le cadre de votre évaluation CASA.