[Dependency-Check (5/6)] Intégration à l’usine logicielle (TeamCity et SonarQube)

http://owasp.org

Une fois les tests local concluants, nous passons l’étape supérieur: les tests dans l’usine logicielle.

En effet je vous rappel, que ce projet pourra concerner plusieurs milliers de développeurs, le plugin Dependency-Checks sera donc intégrés dans des outils bien précis afin de faciliter la tache pour tous.

 

Nous allons donc attacher Dependency-Check sur trois outils:

  • TeamCity, qui est un outil de « build » et de gestion de « build » des projets. C’est dans TeamCity que des builds de projets sont automatisés, et c’est donc dans TeamCity que nous ajouterons notre commande Maven permattant l’éxécution de Dependency-Check.
  • SonarQube, qui est un outil de logiciel libre permettant de suivre en continue la qualité du code source d’un projet. Nous allons donc essayer d’affichier les rapport générés par Dependency-Check dans SonarQube affin qu’il renseigne sur la qualité du projet analysé.

 

Il existe en effet aussi dans SonarQube un plugin Dependency-Check qui récupère le rapport précédemment généré par le plugin Maven Dependency-Check pour l’afficher dans SonarQube. Celui-ci est Open-Source et affiche un rapport détaillé et modifiable sur le tableau de bord de SonarQube.

 

Voilà comment Dependency-Check fonctionnera:

Etapes-DCEtape 2-DC

Etape 3-DCEtape 4-DC

Ici l’ordinateur bleu sera donc TeamCity qui executera la commande Maven qui dans son cache téléchargera la BDD de vulnérabiltié en local (étape 1) et qui cherchera des dépendances vulnérables (étapes 2 et 3).

Nous ajoutons une étape pour afficher le rapport dans SonarQube (étape 4).

Le plugin Dependency-Check SonarQube récupère le rapport précédement  généré et l’affiche dans SonarQube sur le tableau de bord :

Rapport SQLorsqu’on clique sur « Inherited Risk », on tombe sur une page plus détaillée:

Rapport 2-SQ

  • « Filename » est le nom du composant vulnérable trouvé
  • « CVE » est le numéro qui référence les vulnérabilités sous la forme CVE-AAAA-NNNN (AAAA est l’année de publication de la vulnérabilité et NNNN un numéro incrémenté pour l’identifier)
  • « CVSS » donne le plus haut niveau de criticité d’une vulnérabilité présente dans le composant
  • S’en suit une description des vulnérabilités présentes dans le composant

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *