quand faire pentest

Réaliser un pentest peut faire partie de vos objectifs… sans que ce soit le bon moment pour l’instant. Ceci pour différentes raisons : des développements sont en cours, ou bien une migration est prévue, ou bien vous n’avez pas encore de budget…
Face aux différentes priorités qui doivent être respectées, quel est le bon moment pour faire un pentest ? 
Nous allons voir ensemble diverses situations dans lesquelles la question se pose et vous donner des clés pour identifier le bon moment pour mener un test d’intrusion.

Vous êtes en plein dev, vous attendez d’avoir une version stabilisée avant de tester la sécurité.

Pour un projet en cours de développement, il est en effet intéressant d’attendre d’avoir une première version à peu près stabilisée pour mener un audit de sécurité.

Mais dans certains cas, notamment les projets où une grosse phase de dev est prévue, il peut être utile de conduire des tests en cours de route, à partir du moment où certaines fonctionnalités socles sont prêtes. Cela permet de vérifier une partie du travail afin de s’appuyer sur des bases saines. Cela permet aussi d’orienter la suite des développements, afin d’éviter de reproduire certaines erreurs et de limiter le temps à passer plus tard sur des correctifs de sécurité qui pourraient retarder la mise en production.

Pour des projets moins conséquents, un pentest peut être prévu seulement à la fin de la phase de développement. 

Vous avez un projet de migration serveurs

En général, il est plus utile de tester la nouvelle configuration serveur, lorsqu’elle sera mise en place, que de tester une configuration qui ne sera bientôt plus utilisée. Cependant, les risques sur l’infrastructure en place sont à prendre en compte : quand la migration sera-t-elle effectuée ? Dans l’intervalle, quel est le niveau d’exposition aux risques ?

Les réponses que vous apporterez à ces questions décideront du bon moment dans votre situation.

Il faut savoir que dans le cas d’un pentest d’application web, le pentest comprend deux phases : une phase de tests sur la couche applicative et une phase de test sur les serveurs. Il est possible de faire ces deux phases à des moments différents, afin de tester maintenant l’applicatif s’il y a un besoin à court terme et ensuite les serveurs lorsque la migration sera finalisée.

À noter aussi que pour ce type de test d’intrusion, la phase de tests serveur ne représente qu’une petite partie (mais néanmoins critique) du volume total des tests à prévoir.

Vous avez un projet de refonte de votre application

Dans le cas où l’ancienne version de l’application va être abandonnée, la première réflexion est qu’il n’est pas pertinent d’en tester la sécurité. Mais cela mérite d’y réfléchir attentivement : quel est le niveau de criticité de l’application ? Quel est le délai de refonte ? 

Pour des raisons de budget, il arrive fréquemment qu’il ne soit pas envisageable de réaliser un audit de sécurité approfondi sur l’ancienne version d’une application en cours de refonte.

Faire un petit pentest rapide sur l’ancienne version est une possibilité afin d’avoir un feedback sécurité, qui permettra de corriger les failles les plus « évidentes » (du point de vue d’un attaquant), et qui pourra aussi orienter les nouveaux développements (en sensibilisant les développeurs à certaines problématiques de sécurité). 

Il sera toujours important de conduire un audit de sécurité sur la nouvelle version de l’application, si celle-ci devient l’application principale pour les utilisateurs. Dans certains cas, avoir d’abord conduit un petit pentest sur l’ancienne version permettra aussi de limiter le temps à passer à corriger des failles sur la nouvelle version, en raison du transfert des compétences sécurité qui aura été effectué.

Vous n’avez pas encore le budget

Le budget est un facteur qui freine souvent les projets de pentest, pour des raisons bien compréhensibles. Cependant, attention à l’a priori que tout pentest nécessite forcément un budget d’au moins 10 k€. En réalité, tout dépend du périmètre et du niveau de profondeur attendus pour les tests. 

Certains clients choisissent de commencer par un mini-audit pour respecter un budget très limité (moins de 1500€ par exemple) et obtenir un premier feedback sur le niveau de sécurité constaté.  Cela permet d’obtenir un premier indicateur, en fonction de la possibilité d’identifier ou non des failles critiques sur une cible avec des moyens temps très réduits.

Cela est particulièrement pertinent pour de jeunes startups, qui souhaitent commencer à mettre en place des tests de sécurité avec un budget très réduit, puis augmenter progressivement les moyens au fur et à mesure de leur croissance et de leur niveau d’exposition aux risques.

Vous n’avez pas le temps, l’équipe est mobilisée sur d’autres priorités (dev en cours)

Il est compréhensible de ne pas vouloir rajouter de missions à l’équipe, attention toutefois aux priorités qui vont souvent aux projets à délivrer et qui font repousser la sécurité toujours un peu plus tard. Ne pas trop reporter le pentest pour le faire « quand ce sera le bon moment » (qui parfois n’arrive jamais) permet de ne pas ignorer de potentielles failles critiques.

En soi, l’audit ne mobilise pas beaucoup l’équipe de dev. Les pentesters sont relativement autonomes pour dérouler l’audit de sécurité. Dans certains cas, ils auront besoin que vous leur fournissiez en amont un environnement de test voire des comptes de tests.
Après le test d’intrusion, en fonction des vulnérabilités identifiées et des corrections nécessaires, l’équipe de dev pourra être plus ou moins mobilisée. Mais vous serez libre de prioriser les corrections à implémenter, par exemple corriger en priorité les failles critiques, et intégrer les autres correctifs dans votre roadmap. 

Vous souhaitez d’abord corriger les failles de sécurité que vous connaissez déjà

En corrigeant les failles que vous avez déjà identifiées avant de conduire un pentest, cela permet aux pentesters de ne pas « perdre » du temps sur des vulnérabilités déjà connues, et ainsi de se consacrer à la recherche d’autres failles. 

Dans ces situations où des failles sont connues, nous avons cependant pu constater un piège : repousser pendant un temps long (parfois des mois, parfois plus) le pentest, pour permettre aux développeurs de corriger les failles. Parfois cette situation se prolonge parce que d’autres priorités sont établies, parce que des imprévus sont arrivés ou bien que les corrections ne sont pas à 100% finalisées.

Entre-temps, il peut y avoir des risques liés à des failles non identifiées, ou identifiées mais dont l’impact est minimisé. Le test d’intrusion permet d’avoir un regard externe, avec une priorisation des failles par niveau de criticité. Ce n’est pas grave si l’on trouve des failles que vous connaissez déjà, l’important est de vous fournir une visibilité sur l’ensemble des failles que nous avons pu trouver, sur leurs impacts et leurs niveaux de criticité, et comment y remédier. Vous aurez ensuite la possibilité de trancher sur l’ordre des priorités.

Vous souhaitez d’abord terminer les correctifs suite au pentest précédent

Effectivement, si vous souhaitez approfondir les tests sur une partie déjà pentestée, en terminant les correctifs d’un audit de sécurité précédent, les pentesters pourront aller ainsi plus loin dans leurs recherches lors du prochain. Ils pourront aussi vérifier que les remédiations mises en place n’ont pas créé d’effets indésirables sur d’autres éléments.

Dans d’autres situations, par exemple, si vous souhaitez tester une autre cible, alors le pentest peut être conduit indépendamment des correctifs en cours.

Vous souhaitez d’abord obtenir vos premiers clients pour financer le pentest 

Il arrive que le budget pour un pentest soit débloqué uniquement si un certain chiffre d’affaires est atteint ou bien si un client final le finance. Cela repousse l’audit à un moment incertain. 

Cependant, les clients sont de plus en plus sensibilisés à l’importance de la sécurité de leurs données, suite aux nombreuses fuites de données ou cyberattaques qui font les grands titres de la presse. Pouvoir apporter des preuves de sa sécurité lors des échanges avec des prospects peut permettre de gagner de nouveaux clients, ce qui permettra d’atteindre des objectifs commerciaux.

Renforcer sa sécurité devient alors un investissement pour gagner de nouveaux contrats, et non plus une dépense. Pour aller plus loin sur ce point, nous vous donnons quatre clés qui montrent le retour sur investissement d’un audit de sécurité.

Vous vous engagez dans une certification (ISO27001), vous ferez un pentest dans un second temps

Si vous venez de démarrer un processus de certification, il est possible que vous soyez d’abord mobilisés sur d’autres sujets, tels que l’analyse de risques, le renforcement des protections et la documentation des processus… Le pentest viendra ensuite, sauf urgence particulière de votre côté, et dans ce cas il est toujours possible de conduire en parallèle plusieurs démarches. 

Le pentest vient confronter l’analyse sécurité à la menace réelle, ce qui se fait en général dans un second temps, même si ce n’est pas une règle absolue. Effectuer un pentest en boite noire, avec un temps limité pour attaquer différents points d’entrée du SI, peut aussi constituer une bonne entrée en matière avant de s’atteler à un travail approfondi d’analyse et de renforcement des protections.

Vous êtes peu exposés à des risques d’attaques pour le moment, vous investirez sur la sécurité un peu plus tard

C’est vrai que certaines activités sont plus exposées que d’autres à des cyberattaques qui les ciblent volontairement, pour diverses raisons (types de données traitées, gains financiers espérés…). 

Cependant, toutes les cyberattaques ne sont pas ciblées. Certains bots scannent le web à grande échelle pour trouver des vulnérabilités notamment sur des serveurs ou des CMS. Et bien sûr il existe des campagnes de phishing de masse, pour des arnaques ou pour propager des malwares. Il est donc important de se protéger un minimum des principaux risques.

Tester et renforcer sa sécurité dans une période où vous êtes peu exposés permet de construire des bases saines, sans attendre que la période devienne critique, sachant que l’investissement sera moins important si vous êtes face à un niveau de risques non critique.

Pour l’instant, vos clients ne vous demandent pas de faire des pentests, cela viendra peut-être plus tard

Faire un pentest avant que vos clients ne l’exigent montrerait que vous êtes proactifs sur le sujet sécurité. Cela permettrait d’en faire un argument en votre faveur pour créer une relation de confiance avec vos clients et partenaires, et pour vous différencier de vos concurrents. La sécurité est alors créatrice de la valeur pour encourager les ventes.

Par ailleurs, c’est toujours moins compliqué de ne pas agir dans l’urgence, et de ne pas attendre d’être dans un processus de vente bloqué en attendant d’être en mesure de montrer un rapport d’audit de sécurité. Un minimum d’anticipation est conseillé, en fonction du profil et des exigences potentielles de vos prospects.

Après avoir vu ces différentes situations, nous sommes convaincus que vous avez les clés pour évaluer votre situation et décider stratégiquement quel est le moment le plus pertinent pour vous pour réaliser un pentest.
Nous sommes également disponibles pour une évaluation rapide de votre situation.