Avant de commencer
Cet ensemble de scripts Python vise à démontrer les capacités de l'examen DAST par le biais
de l'automatisation des générations. Voici un exemple de fichier que vous pouvez télécharger afin de
l'utiliser dans ce flux de travaux : AppScanDASTandSASTautomation.zip. (Si le fichier n'est pas téléchargé, cliquez avec le
bouton droit de la souris sur le lien et enregistrez le fichier sur votre disque dur.)Remarque : Le
modèle d'examen à utiliser doit être créé. Il ne peut pas s'agir de l'un des modèles par défaut
inclus dans ASE (par exemple : Analyse rapide et superficielle ou Fondamentaux du développeur). Pour
cette démonstration, on présuppose que le serveur d'exploration manuelle est installé à
l'emplacement par défaut : C:\Program Files (x86)\HCL\AppScan Manual
Explorer.
Procédure
Le flux de travaux commence lorsqu'une génération d'AltoroJ est exécutée dans Jenkins. Flux de travaux :
-
génération terminée dans Jenkins.
-
Jenkins exécute la tâche post-génération
python Selenium_StartScan.py dast_auto.config
.
-
Le script démarre le serveur d'exploration manuelle.
-
Le script Selenium
Selenium_Altoro_View_AcctDetails.py
est exécuté. (Le trafic est établi via le serveur d'exploration manuelle.)
-
Le serveur d'exploration manuelle est interrompu et la capture du trafic est enregistrée sous forme de fichier HTD dans le répertoire d'espace de travail.
-
Un travail d'examen est créé dans ASE s'il n'en existe pas déjà un.
-
L'adresse URL de départ est ajoutée au travail (la précédente est écrasée).
-
Le fichier HTD est supprimé.
-
Le type de connexion est défini sur automatique.
-
Des droits d'accès de test sont ajoutés au travail d'examen.
-
L'examen est exécuté.
-
Le groupe de rapports est exécuté.
-
Les problèmes de sécurité sont extraits du rapport sur les problèmes de sécurité.
-
Le fichier monkit.xml est mis à jour de sorte que Jenkins puisse afficher le graphique.
Les fichiers nécessaires à ce processus sont :
-
dast_auto.config – Fichier de configuration pour l'automatisation. Editez ce fichier pour adapter le comportement du script. Par exemple : vous pouvez modifier le modèle d'examen ou l'adresse URL de départ. Le fichier Selenium_StartScan.py sert à générer un fichier de configuration vierge.
- scans.py – Bibliothèque Python contenant les appels d'API vers ASE.
-
Selenium_Altoro_ViewAcctDetails.py – Script Selenium permettant d'établir une connexion à AltoroJ, d'afficher les informations sur le premier compte et de lancer une recherche.
-
Selenium_StartScan.py – Script Python contenant la logique décrite dans les étapes 3 à 14 ci-dessus. Editez la ligne nº 80 en fonction du dossier du projet Jenkins.
- monkit.xml – Fichier pouvant être utilisé par Jenkins pour afficher les résultats de l'examen de sécurité.
-
geckodriver.log – Ficher journal généré automatiquement pour le pilote Gecko. Le pilote Gecko permet à Selenium de communiquer avec Firefox via Python