Les tests de pénétration peuvent être définis comme une tentative légale et autorisée de trouver et d’exploiter les failles de sécurité des systèmes informatiques pour améliorer la sécurité de ces systèmes. Ce processus comprend l’essai des vulnérabilités ainsi que la fourniture de preuves complètes de l’attaque dite de l’attaque. POC (preuve de concept). Il s’agit de confirmer que les failles de sécurité signalées sont exploitables. En outre, les tests de pénétration se terminent par des recommandations spécifiques. Elles concernent la manière de corriger les erreurs détectées lors du test. En résumant le processus, il vise à aider à protéger les ordinateurs et les réseaux contre les attaques futures. Les tests de pénétration sont également connus sous des noms tels que pentesty, PT, Hacking, Ethical Hacking, White Hat Hacking. Une sélection importante est de voir la différence entre les tests de pénétration et l’évaluation des risques ou les audits. Le vérificateur demande : « Avez-vous des sauvegardes d’État ? », tandis que Pentester indique « nous avons vos sauvegardes » ????. Beaucoup de gens (et d’entreprises) dans la communauté de la sécurité utilisent ces concepts à tort de quelques fois.L’évaluation des risques est un processus d’examen des services et des systèmes axé sur les problèmes de sécurité potentiels, tandis que les tests de pénétration par l’exploitation et la réalisation d’attaques réelles indiquent des failles de sécurité qui existent réellement. Les tests de pénétration vont au-delà de l’évaluation des points faibles en simulant l’activité des pirates et en livrant des vecteurs d’attaque prêts à l’écoute. Les tests de pénétration peuvent être divisés en plusieurs catégories, en tenant compte des facteurs suivants:
- le niveau de connaissances qu’il possède;
- la portée du test;
- la composition de l’équipe de test;
- la manière dont les essais sont effectués;
- l’emplacement des essais;
- l’emplacement dans le cycle SDLC (système de cycle de vie de développement);
La classification des tests de pénétration en raison des critères ci-dessus est présentée ci-après: a) le niveau de connaissances dont vous disposez:
- blackbox (boîte noire) – méthode par laquelle le testeur dispose d’un minimum d’informations sur le système attaqué. Il ne s’agit généralement que d’informations sur la portée des tests. Il s’agit de simuler une attaque de piratage de l’extérieur (l’attaquant tente de pirater un système dont il ne sait rien);
- greybox (boîte grise) – méthode par laquelle le testeur possède un certain niveau de connaissance du système, mais sans accès aux codes sources. Il a généralement un aperçu de la structure des données, par exemple par le biais d’un compte d’utilisateur avec peu d’autorisations. Cette attaque vise à simuler une attaque de piratage à partir de l’intérieur de l’entreprise (l’attaquant est un employé de l’entreprise ou possède un compte dans le système);
- whitebox (boîte blanche) – méthode par laquelle le testeur a un aperçu complet de la documentation technique. Ce test vise principalement à examiner le code source et à localiser les failles de sécurité;
b) la portée du test:
- des tests invasifs qui consistent à simuler une véritable attaque, par exemple en modifiant des données ou en bloquant un service. Elles affectent ainsi le fonctionnement du système;
- les tests non invasifs, qui sont à l’opposé des tests invasifs, n’affectent donc pas le fonctionnement du système. Elles consistent à rechercher des vulnérabilités sans les vérifier concrètement, par exemple en révisant le code source.
c) la composition de l’équipe de test:
- les enquêtes effectuées par le personnel interne de l’entreprise;
- les études effectuées par une société externe;
- les études effectuées par la composition mixte, c’est-à-dit le personnel interne de l’entreprise et le personnel externe de l’entreprise;
d) le mode d’exécution des essais:
- des tests d’experts, effectués manuellement, c’est-à-dire manuellement par un spécialiste qualifié;
- les essais automatiques effectués à l’aide d’outils destinés à cet usage, tels que les scanners réseau, les analyseurs de code source;
- des essais mixtes comprenant à la fois des essais manuels et automatiques;
e) les sites d’essai:
- les tests internes consistent à simuler une attaque à l’intérieur de l’entreprise en contournant des protections telles que les pare-feu, le plus souvent à l’aide d’un intranet;
- des tests externes, consistent en des simulations d’attaque extérieure, par exemple via Internet. Dans ce cas, l’attaquant a le chemin de vaincre les mécanismes de pare-feu ou les filtres d’application;
f) emplacement dans le cycle SDLC (système de cycle de vie de développement):
- les tests effectués lors de la création du logiciel. ce que l’on appelle le développement axé sur les tests;
- des tests d’acceptation effectués sur un logiciel déjà créé.