2022-11-23 13:41 Temps de lecture : 16 min

Sécurisez les API et les applications Web avec Probely DAST Scanner

Étant donné qu'un tiers environ des incidents de sécurité connus résultent directement d'une intrusion réussie dans une application web, il est crucial de contrôler la sécurité de vos applications web et de vos API.

La sécurisation de vos applications web n'est pas seulement une nécessité réglementaire, elle est aussi essentielle pour la protection des données de vos clients et la minimisation des risques pour votre entreprise.

De nombreuses approches existent pour sécuriser vos applications web, chacune ayant ses avantages et inconvénients. Certaines solutions consistent à identifier les failles de sécurité dans le code source de vos applications. D'autres se concentrent sur la protection contre les attaques. D'autres encore privilégient les tests dynamiques de sécurité, en simulant les actions d'un pirate informatique sur vos applications en cours d'exécution.

Cet article se penchera sur cette dernière approche, en s'intéressant particulièrement à Probely. L'intérêt de Probely réside dans sa capacité à résoudre deux problèmes majeurs des scanners de vulnérabilités web : la couverture d'analyse des applications web modernes et la fiabilité des résultats.

Probely propose deux versions : une solution en libre-service pour les PME, et une autre pour les grandes entreprises disposant d'un grand nombre d'applications web et d'API.

Probely se distingue par son excellente couverture dans les environnements de développement actuels, et par son aptitude à limiter les faux positifs grâce à des résultats d'analyse basés sur des preuves concrètes, tout en facilitant l'intégration de l'analyse DAST dans votre processus de développement.

Est-ce trop beau pour être vrai ?

Continuez votre lecture pour découvrir mon analyse détaillée de Probely.

Quel est le rôle de Probely ?

Conçu pour les développeurs et les entreprises de toutes tailles, Probely teste vos applications et API, en recherchant des failles de sécurité et des vulnérabilités. Une fois le test terminé, il fournit des recommandations sur la façon de corriger les problèmes détectés.

Vos développeurs et ingénieurs en sécurité peuvent interagir avec Probely via son interface utilisateur intuitive. Pour plus de puissance et de flexibilité, vous pouvez vous appuyer sur son API complète, car Probely suit une philosophie de développement axée sur l'API. Cette API reprend toutes les fonctionnalités de l'interface utilisateur, ce qui permet d'intégrer Probely à un pipeline CI/CD, à un outil de gestion des vulnérabilités, à un orchestrateur ou à un outil de suivi des incidents. Des intégrations clés en main sont disponibles pour les outils les plus courants, tels que JIRA, Jenkins, Azure DevOps, DefectDojo, CircleCI et Slack. Si vous utilisez un outil de suivi ou un orchestrateur sur mesure, l'API est la solution idéale.

Couverture, Exploration et Précision

Probely utilise un robot d'exploration de dernière génération pour naviguer dans les applications JavaScript riches, de la même manière qu'un navigateur classique, garantissant ainsi une excellente couverture du site, ce qui est une difficulté pour de nombreux autres outils DAST. Ce robot d'exploration est particulièrement adapté aux applications à page unique, telles que celles basées sur React ou Angular JS.

Il est essentiel de noter qu'un analyseur ne peut repérer que les vulnérabilités des pages qu'il a réussi à explorer. Un bon robot d'exploration est donc primordial.

Probely propose également différents profils d'analyse, selon l'environnement que vous souhaitez tester. Vous pouvez opter pour un profil d'analyse moins intrusif pour évaluer votre environnement de production. En revanche, un profil plus approfondi peut être utilisé lors des tests de votre environnement QA. L'analyse d'un environnement de pré-production permet d'identifier et de corriger les vulnérabilités avant le déploiement en production.

Rapports

Bien que Probely identifie un grand nombre de vulnérabilités, il se concentre sur la communication des informations pertinentes, sans faux positifs. Pour certaines catégories de vulnérabilités, il apporte la preuve concrète de leur existence, ce qui permet à votre équipe de gagner du temps dans la validation de leur réalité et de leur pertinence.

Probely génère des rapports détaillés à partir de son interface, mais il est aussi capable de synchroniser les informations de vulnérabilité avec un outil de suivi des incidents ou de gestion des vulnérabilités, ce qui permet d'intégrer Probely à vos flux de travail de sécurité et de développement existants.

Probely est capable de tester vos logiciels par rapport à des vulnérabilités telles que celles listées dans le TOP 10 OWASP et bien d'autres. Il peut également vous accompagner dans votre démarche de conformité en vérifiant les exigences spécifiques des normes PCI-DSS, RGPD, HIPAA et ISO270-01.

Vous pouvez ainsi visualiser rapidement les problèmes de conformité liés au rapport OWASP TOP 10.

Interface

L'interface est claire et facile à utiliser, ce qui permet une prise en main rapide. L'édition Entreprise vous offre la possibilité de gérer les utilisateurs et les rôles, et de configurer des rôles personnalisés. Vous pouvez aussi utiliser des étiquettes pour organiser les utilisateurs, les actifs et les vulnérabilités, afin de mieux gérer la sécurité de votre application web. Toutes les fonctionnalités étant disponibles via l'API, vous pouvez facilement intégrer Probely à vos autres applications et processus de sécurité d'entreprise.

Si vous utilisez Jira ou Azure Boards, vous pouvez configurer Probely pour qu'il envoie automatiquement toutes les vulnérabilités à votre outil de suivi des incidents. Lorsque le développeur corrige et clôt le problème dans l'outil de suivi, cela déclenche automatiquement un nouveau test sur Probely, qui vérifie si la vulnérabilité a bien été corrigée. Si ce n'est pas le cas, le problème est rouvert dans l'outil de suivi. Cette approche permet à votre équipe de développement de gérer un rapport de vulnérabilité comme n'importe quel autre bug, directement dans l'outil de suivi, sans même avoir à utiliser l'interface de Probely. Pratique, non ? 🙂

Premiers Pas 🚀

Pour mes tests, j'ai utilisé l'édition Entreprise de Probely.

Ils proposent également une édition standard et différents plans tarifaires, dont un plan gratuit. Le plan gratuit limite l'analyse à trois catégories de vulnérabilités : les attributs des cookies, les en-têtes de sécurité et les problèmes SSL/TLS. Le plan Pro offre la plupart des fonctionnalités et s'adresse aux PME et aux organisations ayant cinq cibles ou moins à analyser.

L'édition Entreprise est conçue pour les organisations ayant un grand nombre de cibles et comprend des fonctionnalités supplémentaires, comme celles que l'on retrouve couramment dans les logiciels d'entreprise : utilisateurs, groupes, rôles et autorisations. Elle permet également d'analyser des cibles internes (sur votre réseau privé) grâce à l'installation d'un agent fourni.

Ajouter une cible

L'ajout d'une cible est simple. Une fois connecté à votre compte, rendez-vous sur la page Cibles et cliquez sur Ajouter. Vous devrez ensuite fournir un nom, une URL et une ou plusieurs étiquettes (par exemple : Test, Production, Développement) pour la nouvelle cible. Pour que Probely puisse analyser cette cible comme une API autonome, sans application web associée, vous devrez cocher l'option correspondante pour l'identifier comme une cible d'API.

Si votre cible n'est pas exposée sur Internet et que vous avez installé un agent Probely sur votre réseau privé, vous pouvez sélectionner l'agent à utiliser lors de l'ajout d'une cible.

Après avoir ajouté une cible, vous devez valider sa propriété, car Probely a besoin de la preuve que vous disposez des autorisations nécessaires pour effectuer une analyse. Deux méthodes alternatives sont proposées pour valider la cible : charger un fichier avec le contenu fourni à la racine de la cible ou ajouter une entrée TXT à votre enregistrement DNS, avec le nom du domaine et un contenu d'enregistrement spécifique. Une fois la cible validée, vous êtes prêt à lancer l'analyse en cliquant sur le bouton Analyser.

Vous pouvez suivre la progression et l'état d'une analyse en allant sur l'onglet Analyses du tableau de bord de Probely. Cette page vous indique quand l'analyse a commencé et les résultats obtenus jusqu'à présent. Les résultats sont affichés avec un code couleur en fonction de leur gravité, ce qui vous permet de repérer rapidement les problèmes critiques nécessitant une action immédiate.

Si votre site web comporte une page de connexion et que vous souhaitez que Probely effectue une analyse derrière celle-ci, vous devrez fournir les identifiants lui permettant d'explorer le site en tant qu'utilisateur authentifié. Probely prend en charge la plupart des méthodes d'authentification pour les pages de connexion.

Scanner une API

Pour analyser une cible d'API, Probely a besoin de son schéma. Vous le fournissez lors de l'ajout d'une cible d'API, soit en saisissant l'URL du schéma OpenAPI, soit en téléchargeant le schéma si vous l'avez précédemment enregistré localement. L'option URL permet à Probely de récupérer le schéma avant chaque analyse, assurant qu'il travaille toujours avec la dernière version disponible.

Différentes options sont également disponibles pour l'authentification de l'accès à l'API. Probely prend en charge non seulement les jetons statiques, mais permet également la configuration d'une authentification dynamique lors de l'analyse des API. Vous pouvez configurer un point de terminaison de connexion où Probely peut obtenir un jeton d'authentification, ou définir un en-tête personnalisé avec une clé API fixe. Vous avez aussi la possibilité de fournir des valeurs de paramètres personnalisées que Probely utilisera pour celles trouvées dans le schéma.

Après avoir configuré l'authentification et les paramètres de l'API, vous pouvez lancer l'analyse en cliquant sur le bouton Analyser maintenant. Après quelques secondes, vous pourrez suivre la progression de l'analyse sur la même page. Une fois l'analyse terminée, vous pouvez télécharger un rapport de couverture qui indique tous les points d'accès détectés et chaque code de réponse. Ce rapport précisera également les points d'accès ayant échoué.

Analyse des résultats

La page des résultats affiche les conclusions de l'analyse dès qu'elles sont détectées, même lorsque des analyses sont en cours. Chaque résultat indique un niveau de gravité (élevé, moyen ou faible), la cible et l'URL concernées, la description du problème, l'heure et la date de sa découverte, son état (corrigé ou non), son responsable, et son impact sur la conformité PCI-DSS ou OWASP.

Outre la notification des vulnérabilités détectées, la page des résultats est également utile pour attribuer des vulnérabilités à votre équipe pour correction. Pour ce faire, cochez la case située à gauche et sélectionnez le destinataire dans le menu déroulant.

Probely fournit également des informations sur la manière de corriger les vulnérabilités découvertes. En plus de ces instructions, vous pouvez consulter la requête et la réponse complètes, ainsi que les preuves.

Sur la page Tableau de bord, vous pouvez visualiser plusieurs graphiques qui synthétisent le niveau de risque de sécurité des cibles analysées. Ces graphiques montrent l'évolution de différents indicateurs intéressants, comme les scores de risque, le temps moyen de résolution des problèmes et les niveaux de gravité. Vous pouvez également identifier les sites qui nécessitent le plus d'attention et consulter un classement des 5 vulnérabilités les plus fréquentes.

Enfin, sur la page Intégrations, vous pouvez configurer Probely pour qu'il s'intègre à de nombreux outils pour la gestion de projets, la communication d'équipe, le suivi des problèmes, etc. Les intégrations disponibles comprennent Azure Boards, DefectDojo, Slack, Jira, Jenkins et CircleCI.

Un outil pour les développeurs et les équipes de sécurité

Pour les équipes de développement agiles, la rapidité de mise sur le marché est une priorité absolue. Toute démarche permettant de réduire le temps nécessaire à la mise en production de votre logiciel sans compromettre la qualité est la bienvenue. C'est exactement ce que propose Probely : une solution rentable pour renforcer la sécurité de vos sites web et de vos API, vous aidant à tenir vos engagements en matière de délais et à fournir des produits logiciels de haute qualité.

Pour les équipes de sécurité, Probely offre une plateforme pour sécuriser vos applications web et gérer les vulnérabilités nécessitant une correction. Il vous permet également de déléguer une partie des tests de sécurité aux équipes de développement, tout en conservant un rôle de supervision.

Probely propose des essais gratuits, des licences d'évaluation d'entreprise et des démonstrations de produits. Contactez Probely pour vous lancer.

Auteur
France

Rédacteur tech, guides pratiques et astuces numériques.