Résumé
Le test d’intrusion (pentesting) est un exercice structuré de hacking éthique qui simule des cyberattaques réelles afin de révéler des vulnérabilités de sécurité avant que des acteurs malveillants ne puissent les exploiter. Un test d’intrusion réussi se déroule en trois étapes : pré-engagement, engagement et post-engagement. Elles peuvent utiliser plusieurs méthodes (black box, white box, grey box, etc.) sur différents vecteurs d’attaque comme le phishing, la force brute et le déni de service (DDoS). Les entreprises doivent planifier les tests en fonction de leur profil de risque, de leur budget et des exigences réglementaires, et inclure systématiquement les pare-feu d’application web (WAF) dans le périmètre afin d’obtenir une vision complète de la sécurité.
Qu’est-ce que le test d’intrusion ?
Les tests d’intrusion constituent une forme de piratage éthique. Une fois le processus terminé, vous identifierez les points faibles de vos plans. Le reporting vous aide à corriger ces failles avant que de véritables hackers ne les trouvent en premier.
À l’issue d’une intrusion réussie, vous connaîtrez en détail le système de sécurité de votre entreprise. Vous verrez où se situent les lacunes, vous comprendrez comment les collaboratrices et collaborateurs ont contribué à la réussite ou à l’échec de l’initiative, et vous saurez combien de temps il vous a fallu pour identifier le problème.
Mais à l’issue d’une attaque, vous avez perdu quelque chose. Il se peut que vous ayez été contraint de verser une rançon pour reprendre le contrôle au hacker. Et il est possible que vous ayez également perdu la confiance de vos clients.
Et si vous pouviez apprendre sans rien perdre ?
Pourquoi les tests d’intrusion sont-ils désormais courants dans différents secteurs ?
À une époque, le pentesting était réservé aux secteurs fortement réglementés. Si vous travailliez pour une agence gouvernementale, une entreprise de services publics ou un établissement financier, vous effectuiez des prétests afin de respecter la réglementation. Mais aujourd’hui, de nombreuses entreprises effectuent ce type de tests, car la menace des cyberattaques concerne presque tous les secteurs d’activité.
Quelles sont les étapes d’un pentest ?
Un hacker peut passer à l’action avec très peu de préparation ou de planification. Les tests d’intrusion sont différents. Les projets doivent avancer selon une série d’étapes prévisibles, en favorisant la collaboration et le dialogue tout au long du processus.
Le Payment Card Industry (PCI) Security Standards Council identifie trois étapes clés du pentesting:
- Pré-engagement
- Engagement
- Post-engagement
Nous allons les examiner un par un.
Que se passe-t-il lors de l’étape préalable à l’engagement ?
Que vous fassiez appel à une équipe interne ou à un cabinet de conseil, il est essentiel d’avoir une discussion avant le début des travaux. Vous aborderez les points suivants :
- Le périmètre. Quels composants doivent être inclus dans le test ?
- Documentation. Comment le travail sera-t-il consigné pour de futures études ?
- Règles. Quand le travail doit-il commencer et s’arrêter ? Jusqu’où le hacker doit-il aller avant de s’arrêter ? Des données sensibles seront-elles affichées ?
Votre échange peut être court ou long, selon l’ensemble des aspects que vous devez aborder. Veillez à ce qu’une personne prenne des notes détaillées, car vous vous référerez à cet accord au fur et à mesure de l’avancement du projet.
Que se passe-t-il pendant la phase d’engagement ?
À cette étape, votre équipe commence à examiner en détail votre système et à rechercher d’éventuelles vulnérabilités.
Comme l’expliquent les experts, un pentest n’est pas exhaustif. Certaines vulnérabilités peuvent tout simplement ne pas apparaître au cours du processus. Cependant, votre équipe chargée des tests d’intrusion doit fournir des efforts soutenus pour tenter de contourner vos défenses. L’objectif est de déterminer jusqu’où un hacker peut pénétrer dans vos serveurs sans que vous ne le détectiez.
Une équipe de pentesting examine généralement :
- Couches d’application.
- Couches réseau.
- Segmentation.
Si des données sensibles sont exposées, l’équipe doit vous en informer immédiatement. Et tout ce que l’équipe modifie ou détériore pendant le test doit être remis en ordre une fois le travail terminé.
Que se passe-t-il lors de l’étape post-engagement ?
À la fin d’un test, vous devez disposer d’un rapport prêt pour une analyse approfondie. Utilisez ces retours pour orienter les évolutions de vos systèmes de sécurité.
Les retours que vous recevez doivent porter sur les vulnérabilités exploitées. Autrement dit, il n’est pas utile de recevoir des rapports sur les découvertes ingénieuses ou intéressantes faites par le hacker concernant vos systèmes. Tout ce qui figure dans le rapport doit être à la fois pertinent et exploitable.
Quels vecteurs d’attaque un pentest couvre-t-il ?
Votre équipe de test d’intrusion pourrait examiner pratiquement n’importe quel aspect de votre système de sécurité au fil de l’avancement des travaux. Mais l’International Council of E-Commerce Consultants (EC-Council) indique que la plupart se concentrent sur seulement sept vecteurs d’attaque différents.
- Cross-site scripting : un hacker se fait passer pour un utilisateur afin de tester la sécurité d’une application web.
- Attaque par force brute : un hacker tente des centaines ou des milliers de combinaisons nom d’utilisateur/mot de passe dans le but d’obtenir un accès.
- Attaque par shell backdoor : un hacker utilise un malware pour tenter de s’introduire, alors que cette personne ne devrait pas avoir accès.
- Attaque de l’homme du milieu : le hacker tente d’accéder au trafic du serveur afin de modifier les paquets avant leur livraison.
- Attaque par dépassement de tampon: l’équipe tente de saturer un tampon avec une quantité de données telle qu’il échoue, permettant ainsi au hacker d’accéder à la mémoire.
- Attaque de phishing : le hacker tente d’inciter les collaborateurs et les utilisateurs à divulguer des données sensibles, qui peuvent être utilisées pour obtenir un accès.
- Déni de service distribué : le hacker submerge le serveur de tant de requêtes qu’il ne parvient plus à répondre aux requêtes légitimes.
Chacune de ces attaques pourrait causer des centaines de milliers de dollars de dommages. Identifiez-les lors des tests d’intrusion, et vous pourriez éviter à votre entreprise des coûts et des complications.
À quelle fréquence faut-il planifier un pentest ?
De la même façon qu’aucun système n’est identique, il n’existe pas deux plannings de pentesting semblables. Votre planning doit être personnalisé pour répondre aux objectifs spécifiques de votre entreprise et à son environnement réglementaire.
Si vous n’êtes pas tenu de réaliser des tests selon un calendrier imposé par une obligation gouvernementale ou locale, élaborez votre propre calendrier en tenant compte de vos :
- Risque. Disposez-vous de données particulièrement attractives que presque tout le monde souhaiterait obtenir ? Considérez-vous que votre entreprise constitue une cible de grande valeur ?
- Couverture. Votre entreprise a-t-elle fait l’objet d’une couverture dans l’actualité locale pour une raison quelconque ? Êtes-vous impliqué dans une activité controversée ?
- Type. Utilisez-vous des logiciels open source ? Ou bien avez-vous récemment apporté d’importants changements à votre infrastructure ?
Quel est l’impact du budget sur la fréquence de vos tests d’intrusion ?
Examinez également votre budget. Un test d’intrusion peut représenter un coût important, en particulier si l’équipe identifie des problèmes majeurs que vous devez corriger sans délai. Si votre budget est assez limité, il peut être nécessaire d’espacer davantage les tests afin d’éviter de dépasser vos moyens.
Quels sont les outils de pentesting les plus couramment utilisés ?
La plupart des équipes de pentest utilisent des programmes pour optimiser leur travail. Ils travaillent rapidement, ce qui permet à l’équipe d’identifier des vulnérabilités sans passer beaucoup de temps à écrire du code.
Les outils de test les plus connus incluent :
Chaque équipe a son programme préféré, et certains blogueurs aussi. Puisque certaines solutions sont gratuites, il est judicieux de combiner différentes options jusqu’à trouver celle qui convient à votre système et à vos compétences.
Existe-t-il des outils spécialisés pour les administrations ou les entreprises ?
Si vous travaillez dans le secteur public, vous pourriez être éligible pour utiliser des outils développés par des organismes officiels. Par exemple, le Bureau du Chief Information Officer du Department of the Interior réalise des tests d’intrusion.
Certaines entreprises proposent également des logiciels de pentesting en tant que service. Concluez un contrat avec elles, et elles prendront en charge votre travail de bout en bout.
Quelles stratégies et méthodes de pentesting sont disponibles ?
Au cours des étapes de préparation de votre test d’intrusion, vous serez confronté à une décision importante. Quel type de relation devriez-vous entretenir avec l’équipe chargée des tests ? Et quel niveau de connaissances doit-elle avoir avant de commencer ? Répondez à cette question en choisissant une méthode.
Ces types de pentesting sont reconnus par l’EC-Council :
| Méthode | Description |
|---|---|
| Boîte noire | Une personne chargée des tests ne connaît rien de votre système avant le début de la mission ; elle simule de près une attaque en conditions réelles. |
| Boîte blanche | Une personne chargée des tests connaît parfaitement votre système, y compris l’infrastructure et les protocoles. |
| Boîte grise | Une personne chargée des tests connaît certains aspects de votre système, mais pas l’ensemble, avant le début du travail. |
| Ciblé | Votre équipe informatique et les testeurs désignés collaborent pour examiner une seule partie de votre système. |
| externe | Seuls les serveurs ou actifs visibles sont inclus dans les tests. |
| Interne | Seuls les éléments auxquels un utilisateur autorisé peut accéder sont inclus dans ce test. |
Vous pouvez identifier une méthode qui fonctionne bien pour votre entreprise et utiliser ce même système à chaque fois que vous effectuez des tests d’intrusion. Il est toutefois pertinent d’adapter les méthodes en fonction des risques auxquels vous êtes actuellement exposé.
Comment les tests d’intrusion s’appliquent-ils aux pare-feux d’application web ?
Vous avez conçu une application pour servir vos clients, et elle fonctionne grâce à des données que vous avez protégées avec un pare-feu numérique. Faut-il également étendre les tests d’intrusion à cet aspect ?
Faut-il inclure votre WAF dans les tests d’intrusion ?
Bien que les pare-feu d’application web (WAF) offrent une sécurité robuste, des études indiquent qu’environ 65 % des entreprises subissent des attaques qui contournent complètement le WAF.
Si vous éliminez le WAF de vos tests, vous risquez de passer à côté d’une faille de sécurité majeure. Mais il vous faudra aborder le problème avec précaution.
Comment aborder les tests WAF ?
Pour réaliser certains types de tests d’intrusion, les prestataires peuvent vous demander de désactiver le WAF. Une simulation de ce type vous aide à déterminer si l’application elle-même présente des vulnérabilités face au piratage, en cas de défaillance du système ou si vous êtes confronté à une personne interne mécontente.
Cependant, vous devriez également demander au fournisseur d’examiner le WAF, afin de vérifier qu’il fonctionne comme prévu et qu’il offre des protections difficiles à contourner.
La réalisation de plusieurs pentests de ce type vous offre une vision complète de l’environnement de sécurité de votre application, ce qui peut s’avérer essentiel pour vos utilisateurs et utilisatrices.
Obtenez l’aide dont vous avez besoin avec Okta
Nos solutions peuvent vous aider à préparer un pentest efficace. Et si vous avez déjà suivi cette démarche et constaté que de nombreuses lacunes subsistent, nous pouvons également vous accompagner sur ce point.
Nous serions ravis de vous en dire plus sur le fonctionnement de nos solutions et sur la façon dont elles peuvent vous aider.
Foire aux questions (FAQ)
Quelle est la différence entre les tests d’intrusion en boîte noire et en boîte blanche ?
Dans le cadre d’un test en boîte noire, la personne chargée du test ne dispose d’aucune connaissance préalable de votre système et l’évaluation reproduit fidèlement une attaque réelle. Dans le cadre d’un test en boîte blanche, la personne chargée des tests dispose d’une visibilité complète sur votre infrastructure et vos protocoles, ce qui permet une analyse plus approfondie et ciblée.
À quelle fréquence une entreprise doit‑elle réaliser des tests d’intrusion ?
Il n’existe pas de calendrier universel, la fréquence dépend de votre profil de risque, de la gestion éventuelle de données à forte valeur, des changements récents apportés à votre infrastructure et de votre environnement réglementaire. Des contraintes budgétaires peuvent également imposer d’allonger le délai entre les tests.
Un test d’intrusion est-il identique à une analyse de vulnérabilités ?
Non. Un pentest n’est pas exhaustif et se distingue d’une analyse complète des vulnérabilités. L’objectif d’un pentest est de déterminer jusqu’où un attaquant simulé peut pénétrer vos défenses, et non de répertorier toutes les failles possibles de votre système.
Faut-il inclure les pare-feux d’application web (WAF) dans les tests d’intrusion ?
Oui. Des études indiquent qu’environ 65 % des entreprises subissent des attaques qui contournent entièrement leur pare-feu d’application web (WAF). Tester à la fois avec et sans le WAF actif vous offre une vision complète de la posture de sécurité de votre application.
Que doit contenir un rapport de test d’intrusion après l’intervention ?
Le rapport doit se concentrer exclusivement sur les vulnérabilités exploitées : des constats à la fois pertinents et exploitables. Les rapports concernant des découvertes intéressantes mais non exploitables sont jugés inutiles et doivent être exclus.
Quels sont les vecteurs d’attaque les plus couramment testés lors d’un pentest ?
Les vecteurs d’attaque courants incluent le cross-site scripting, les attaques par force brute, les attaques par backdoor shell, les attaques de type man-in-the-middle, les attaques par dépassement de tampon, le phishing et les attaques par déni de service distribué (DDoS).
Références
Guide pour mener un programme de tests d’intrusion efficace. (avril 2017), CREST.
Standard de sécurité des données PCI (PCI DSS), version 1.1. (septembre 2017). Conseil des standards de sécurité PCI.
Guide procédural de sécurité informatique : réaliser des tests d’intrusion. (Juillet 2020). GSA.
10 conseils pour un programme de tests d’intrusion réussi. (novembre 2010), CSO.
Qu’est-ce qu’un test d’intrusion ? EC-Council.
Pourquoi, quand et à quelle fréquence réaliser un test d’intrusion ? (août 2018). Renseignement sur la sécurité.
À quelle fréquence programmer un test d’intrusion ? (janvier 2017). Gouvernance informatique.
« Home », Hashcat.
« Home », Kali.
« Home », Metasploit.
« Home », NMap.
Test d’intrusion. U.S. Department of the Interior.
L’état des pare-feu d’applications web. (Juillet 2019). Ponemon Sullivan Privacy Report.
Étapes du pentesting
Un hacker peut passer à l’action avec très peu de préparation ou de planification. Les tests d’intrusion sont différents. Les projets doivent avancer selon une série d’étapes prévisibles, en favorisant la collaboration et le dialogue tout au long du processus.
Le PCI Security Standards Council identifie trois étapes clés du pentesting:
- Pré-engagement
- Engagement
- Post-engagement
Nous allons les examiner un par un.
Pré-engagement
Que vous fassiez appel à une équipe interne ou à un cabinet de conseil, il est essentiel d’avoir une discussion avant le début des travaux. Vous aborderez les points suivants :
- Le périmètre. Quels composants doivent être inclus dans le test ?
- Documentation. Comment le travail sera-t-il consigné pour de futures études ?
- Règles. Quand le travail doit-il commencer et s’arrêter ? Jusqu’où le hacker doit-il aller avant de s’arrêter ? Des données sensibles seront-elles affichées ?
Votre échange peut être court ou long, selon l’ensemble des aspects que vous devez aborder. Veillez à ce qu’une personne prenne des notes détaillées, car vous vous référerez à cet accord au fur et à mesure de l’avancement du projet.
L'ENGAGEMENT DES CLIENTS
À cette étape, votre équipe commence à examiner en détail votre système et à rechercher d’éventuelles vulnérabilités.
Comme l’expliquent les experts, un pentest n’est pas exhaustif. Certaines vulnérabilités peuvent ne tout simplement pas apparaître au cours du processus. Mais votre équipe de hacking doit ici redoubler d’efforts pour tenter de franchir vos défenses. L’objectif est de déterminer jusqu’où un hacker peut pénétrer dans vos serveurs sans que vous ne le détectiez.
Une équipe de pentesting examine généralement :
- Couches d’application.
- Couches réseau.
- Segmentation.
Si des données sensibles sont exposées, l’équipe doit vous en informer immédiatement. Et tout ce que l’équipe modifie ou détériore pendant le test doit être remis en ordre une fois le travail terminé.
Post-engagement
À la fin d’un test, vous devez disposer d’un rapport prêt pour une analyse approfondie. Utilisez ces retours pour orienter les évolutions de vos systèmes de sécurité.
Les retours que vous recevez doivent porter sur les vulnérabilités exploitées. Autrement dit, il n’est pas utile de recevoir des rapports sur les découvertes ingénieuses ou intéressantes faites par le hacker concernant vos systèmes. Tout ce qui figure dans le rapport doit être à la fois pertinent et exploitable.
Vecteurs d’attaque courants lors d’un test d’intrusion
Votre équipe de hackers pourrait tester pratiquement n’importe quel aspect de votre système de sécurité au fur et à mesure de l’avancement des travaux. Mais l’EC-Council indique que la plupart se concentrent uniquement sur sept vecteurs d’attaque différents.
- Cross-site scripting : un hacker se fait passer pour un utilisateur afin de tester la sécurité d’une application web.
- Attaque par force brute : un hacker tente des centaines ou des milliers de combinaisons nom d’utilisateur/mot de passe dans le but d’obtenir un accès.
- Attaque par shell backdoor : un hacker utilise un malware pour tenter de s’introduire, alors que cette personne ne devrait pas avoir accès.
- Attaque de l’homme du milieu : le hacker tente d’accéder au trafic du serveur afin de modifier les paquets avant leur livraison.
- Attaque par dépassement de tampon: l’équipe tente de saturer un tampon avec une quantité de données telle qu’il échoue, permettant ainsi au hacker d’accéder à la mémoire.
- Attaque de phishing : le hacker tente d’inciter les collaborateurs et les utilisateurs à divulguer des données sensibles, qui peuvent être utilisées pour obtenir un accès.
- Déni de service distribué : le hacker submerge le serveur de tant de requêtes qu’il ne parvient plus à répondre aux requêtes légitimes.
Chacune de ces attaques pourrait causer des centaines de milliers de dollars de dommages. Identifiez-les lors des tests d’intrusion, et vous pourriez éviter à votre entreprise des coûts et des complications.
Définir un calendrier de pentesting
De la même façon qu’aucun système n’est identique, il n’existe pas deux plannings de pentest semblables. Votre planning doit être personnalisé afin de répondre aux objectifs spécifiques de votre entreprise et à son environnement réglementaire.
Si vous n’êtes pas tenu de réaliser des tests selon un calendrier imposé par une obligation gouvernementale ou locale, élaborez votre propre calendrier en tenant compte de vos :
- Risque. Disposez-vous de données particulièrement attractives que presque tout le monde souhaiterait obtenir ? Considérez-vous que votre entreprise constitue une cible de grande valeur ?
- Couverture. Votre entreprise a-t-elle fait l’objet d’une couverture dans l’actualité locale pour une raison quelconque ? Êtes-vous impliqué dans une activité controversée ?
- Type. Utilisez-vous des logiciels open source ? Ou bien avez-vous récemment apporté d’importants changements à votre infrastructure ?
Examinez également votre budget. Un test d’intrusion peut représenter un coût important, en particulier si l’équipe identifie des problèmes majeurs que vous devez corriger sans délai. Si votre budget est assez limité, il peut être nécessaire d’espacer davantage les tests afin d’éviter de dépasser vos moyens.
Outils couramment utilisés en pentest
La plupart des équipes de pentest utilisent des programmes pour optimiser leur travail. Ils travaillent rapidement, ce qui permet à l’équipe d’identifier des vulnérabilités sans passer beaucoup de temps à écrire du code.
Les outils de test les plus connus incluent :
Chaque équipe a son programme favori, et certains blogueurs aussi. Puisque certains sont gratuits, il est judicieux de les combiner jusqu’à trouver celui qui convient à votre système et à votre niveau d’expertise.
Si vous travaillez dans le secteur public, vous pourriez être éligible pour utiliser des outils développés par des agences officielles. Par exemple, le Bureau du Chief Information Officer du Department of the Interior réalise des tests d’intrusion.
Certaines entreprises proposent également des logiciels de pentesting en tant que service. Concluez un contrat avec elles, et elles prendront en charge votre travail de bout en bout.
Stratégies et méthodes de test
Au cours des étapes de préparation de votre test d’intrusion, vous serez confronté à une décision importante. Quel type de relation devriez-vous entretenir avec l’équipe chargée des tests ? Et quel niveau de connaissances doit-elle avoir avant de commencer ? Répondez à cette question en choisissant une méthode.
Ces types de pentesting sont reconnus par l’EC-Council :
- Black box: une personne chargée des tests ne connaît rien de votre système avant le début de la mission. Dans certains cas, la plupart des personnes au sein de l’entreprise ignorent totalement que le test a lieu. Cette forme de test ressemble beaucoup à une attaque en temps réel.
- Boîte blanche : la personne chargée des tests connaît parfaitement votre système, y compris votre infrastructure et vos protocoles. L’ensemble de votre équipe peut être informé du test, ou vous pouvez choisir d’exclure certaines personnes de cette information.
- Boîte grise : une personne effectuant le test dispose de certaines informations, mais pas de toutes, sur votre système avant le début du travail.
- Ciblé : votre équipe informatique et les testeurs désignés collaborent pour examiner uniquement une partie de votre système.
- Externe : seuls les serveurs ou actifs visibles sont inclus dans le test.
- Interne : seuls les éléments auxquels une personne autorisée peut accéder sont inclus dans ce test.
Vous pouvez identifier une méthode qui fonctionne bien pour votre entreprise et utiliser ce même système à chaque fois que vous effectuez des tests d’intrusion. Il est toutefois pertinent d’adapter les méthodes en fonction des risques auxquels vous êtes actuellement exposé.
Tests d’intrusion et pare-feux d’application Web
Vous avez conçu une application pour servir vos clients, et elle fonctionne grâce à des données que vous avez protégées avec un pare-feu numérique. Faut-il également étendre les tests d’intrusion à cet aspect ?
Bien que les pare-feu d’application web (WAF) offrent une sécurité robuste, des études indiquent qu’environ 65 % des entreprises subissent des attaques qui contournent complètement le WAF.
Si vous éliminez le WAF de vos tests, vous risquez de passer à côté d’une faille de sécurité majeure. Mais il vous faudra aborder le problème avec précaution.
Pour réaliser certains types de tests d’intrusion, les prestataires peuvent vous demander de désactiver le WAF. Une simulation de ce type vous aide à déterminer si l’application elle-même présente des vulnérabilités face au piratage, en cas de défaillance du système ou si vous êtes confronté à une personne interne mécontente.
Cependant, vous devriez également demander au fournisseur d’examiner le WAF, afin de vérifier qu’il fonctionne comme prévu et qu’il offre des protections difficiles à contourner.
La réalisation de plusieurs pentests de ce type vous offre une vision complète de l’environnement de sécurité de votre application, ce qui peut s’avérer essentiel pour vos utilisateurs et utilisatrices.
Obtenez l’aide dont vous avez besoin avec Okta
Nos solutions peuvent vous aider à préparer un pentest efficace. Et si vous avez déjà suivi cette démarche et constaté que de nombreuses lacunes subsistent, nous pouvons également vous accompagner sur ce point.
Nous serions ravis de vous en dire plus sur le fonctionnement de nos solutions et sur la façon dont elles peuvent vous aider.
Références
Guide pour mener un programme de tests d’intrusion efficace. (avril 2017), CREST.
Standard de sécurité des données PCI (PCI DSS), version 1.1. (septembre 2017). Conseil des standards de sécurité PCI.
Guide procédural de sécurité informatique : réaliser des tests d’intrusion. (Juillet 2020). GSA.
10 conseils pour un programme de tests d’intrusion réussi. (novembre 2010), CSO.
Qu’est-ce qu’un test d’intrusion ? EC-Council.
Pourquoi, quand et à quelle fréquence réaliser un test d’intrusion ? (août 2018). Renseignement sur la sécurité.
À quelle fréquence programmer un test d’intrusion ? (janvier 2017). Gouvernance informatique.
« Home », Hashcat.
« Home », Kali.
« Home », Metasploit.
« Home », NMap.
Test d’intrusion. U.S. Department of the Interior.
L’état des pare-feu d’applications web. (Juillet 2019). Ponemon Sullivan Privacy Report.