Vous êtes sur la page 1sur 78

• Accueil >

• Cours >
• Conduisez un test d'intrusion

Conduisez un test d'intrusion

• 8 heures
• Difficile

Licence



Mis à jour le 28/11/2019

Introduction du cours
Vous êtes étudiant, administrateur système et réseaux, ou responsable informatique ?

Vous voulez apprendre à sécuriser une infrastructure informatique en utilisant une méthode
simple et rapide ? Alors vous êtes au bon endroit !

Les systèmes d’informations (SI) sont régulièrement attaqués par des « pirates » ou «
hackers mal intentionnés », et ce pour différentes raisons (économiques, politiques, etc.).
Pour pallier ces cyberattaques, les infrastructures informatiques doivent être testées en
passant par des tests d’intrusions pour s’assurer du bon niveau de sécurité.

On parle de tests d’intrusion mais aussi de Pentest, ou test de pénétration. Ils sont réalisés
par des experts en cybersécurité que l’on appelle aussi des pentesters.

Dans ce cours, je vous propose de maîtriser pas à pas la méthodologie de conduite d’un test
d’intrusion afin de déterminer le réel potentiel d’intrusion et de destruction d’un pirate sur
votre infra ou SI. Vous découvrirez :

• les différents types d’attaques,


• comment réaliser un test d’intrusion,
• en déduire les correctifs à appliquer,
• et rédiger un rapport d’audit contenant un plan d’action et la liste des mesures
correctives.
Ce cours vous permettra donc de réaliser un pentest sur votre SI et ainsi, identifier les failles
potentielles afin de les sécuriser au mieux.
C’est parti !

À la fin de cours, vous serez capable de :


• Définir un test d’intrusion (ou pentest)
• Sélectionner un type de test d'intrusion en fonction du besoin
• Scanner les vulnérabilités d’un système informatique
• Réaliser un test d’intrusion
• Proposer des solutions correctives
• Rédiger et présenter un rapport de test d'intrusion
Prérequis

Pour suivre ce cours, vous devrez bien :


• Maîtriser les bases de 2 systèmes d’exploitation les plus populaires (Windows, Linux,
Mac OS) - manipulation en tant qu’utilisateur,
• Maîtriser les bases de la configuration et administration des systèmes : en suivant par
exemple le cours Montez un serveur de fichiers Linux ou Prenez en main Windows
server
• Maîtriser le fonctionnement des réseaux IP en suivant le cours Apprenez le
fonctionnement des réseaux TCP/IP

• #

CONTINUER LE COURS
NE PLUS SUIVRE
Faites-en votre métier !

Transformez vos connaissances en Systèmes & Réseaux en compétences pratiques et


professionnelles : suivez l’une de nos formations diplômantes en ligne avec un emploi
garanti à la clé !

SYSTÈMES & RÉSEAUX


Responsable en sécurité des systèmes d'information
Mettez en œuvre une stratégie de cybersécurité dans votre entreprise et déployez-la en
continu
Master (Bac+5)~ 12 moisEmploi garanti
VOIR TOUS LES PARCOURS

Table des matières

• Partie 1 - Préparez votre test d’intrusion

1. 1. C’est quoi un test d’intrusion (ou pentest) ?


2. 2. Maîtrisez les différents types de tests
3. 3. Découvrez les systèmes d'exploitation adaptés
4. 4. Configurez votre environnement LAB
5. 5. Préparez votre pentest
o Quiz : Préparez votre test d’intrusion
• Partie 2 - Réalisez votre test d’intrusion

0. 1. Maîtrisez les attaques les plus courantes


1. 2. Prévenez-vous des attaques plus complexes
2. 3. Scannez les vulnérabilités d’un système
3. 4. Testez le système cible avec des méthodes simples
4. 5. Testez le système cible avec des méthodes complexes
5. 6. Entraînez-vous à mener un test d'intrusion
• Partie 3 - Rédigez votre rapport de test d’intrusion

0. 1. Proposez et inventoriez les mesures correctives


1. 2. Rédigez votre rapport de test d’intrusion
2. 3. Présentez votre rapport de test d’intrusion
o Quiz : Rédigez votre rapport de test d’intrusion

Certificat de réussite (voir un exemple)

Créé par

OpenClassrooms, Leading E-Learning Platform in Europe



Le professeur

Sebastien Salito
Gérant & Fondateur SARL EXPINFO - Expert en Cybersécurité - Expert judiciaire près la
Cour d'Appel de Chambéry

CondC’est quoi un test d’intrusion (ou pentest) ?


Dans cette première partie, nous allons étudier comment préparer un test d'intrusion. Vous verrez ce
qu’est un test d’intrusion ou pentest, les différents types de tests qui existent et apprendrez à
installer votre environnement pour réaliser votre premier pentest.

Un pentest, c’est quoi ?


Commençons par la base : quelques définitions.

Un test d'intrusion, ou test de pénétration, ou encore pentest, est une méthode qui consiste à
analyser une cible en se mettant dans la peau d'un attaquant (connu aussi sous le nom de hacker
malveillant ou pirate, mais nous y reviendrons). Cette cible peut être :

• une IP,
• une application,
• un serveur web,
• ou un réseau complet.
Dans ce cours, vous allez pratiquer sur un serveur web.

Le test d'intrusion est donc une photographie à l’instant T de cette cible. Il ne doit donc pas
être confondu avec le scan de vulnérabilités.

C’est quoi un scan de vulnérabilité ?


Le scan de vulnérabilité est une composante du test d’intrusion, c’est-à-dire une sous-partie. C’est
plus précisément un scan (comme son nom l’indique) de la cible qui permet d’énumérer les
vulnérabilités, sans tenter de les qualifier ou de vérifier si elles sont exploitables.

Contrairement à ce que certains pensent, le test d’intrusion n’est pas un audit de sécurité.
Brièvement, l’audit permet d'établir un panorama de la sécurité d'un système d'information,
mais il ne va pas tester la réalité et l’exploitabilité de chaque vulnérabilité. Il se concentre
plutôt sur la sécurité fonctionnelle, opérationnelle et plus généralement la politique de
sécurité du système d'information (PSSI) mise en place. D’un autre côté, le test d’intrusion
est plus technique et pratique. Il va révéler par exemple, une application non à jour ou
encore un port ouvert par erreur dans le firewall.
Un test d'intrusion, pour quoi faire ?
Depuis plusieurs années, le nombre de cyberattaques double, année après année.
L’intention des pirates est variée, mais les principales motivations sont d’ordre :

• économique,
• politique
• ou juste pour le challenge de l’exercice !
Cela dit, la grande majorité du temps, elle est économique. L'objectif étant de gagner de l'argent à
l'insu ou sur le dos des entreprises, comme dans le cas du cheval de Troie « Ruthless » qui vole les
numéros de cartes bancaires et accès aux comptes bancaires.

Il existe beaucoup de groupes de hackers plus ou moins malveillants dans le monde.

Il y a pas mal d'années, la sécurisation des systèmes coûtait cher et les chances de se faire
pirater étaient minces. Cela dit, aujourd'hui la donne a changé car le pourcentage de chance
de se faire pirater est élevé. Il faut absolument que chaque entreprise mette en place une
sécurité adaptée.

Mais pourquoi faire des tests d’intrusion ?


Les objectifs sont clairs :

• identifier les vulnérabilités de son SI ou de son application


• évaluer le degré de risque de chaque faille identifiée
• proposer des correctifs de manière priorisée
Grâce au test d'intrusion, nous pouvons qualifier :

• la sévérité de la vulnérabilité,
• la complexité de la correction,
• et l'ordre de priorité qu’il faut donner aux corrections.
Le but n'est pas malveillant, mais il est de s'assurer que ces vulnérabilités sont bien réelles.

Par exemple, aujourd’hui certaines entreprises ont encore des vulnérabilités dans leurs
réseaux permettant aux rançongiciels de se propager. Un rançongiciel (ransonmware en
anglais), c’est un logiciel malveillant qui prend en « otage » vos données personnelles et qui
les restitue uniquement contre le versement d'une « rançon ».

Je suis sûr que vous connaissez quelqu’un à qui c’est déjà arrivé ! Lorsque vous n’avez plus
accès à vos documents car ils ont changé d’extension et qu’on vous demande de payer en
ligne X euros pour les décrypter !

Un test d’intrusion permet d’en prendre conscience et de prioriser les corrections. Sinon la
vulnérabilité risque de rester dans le système jusqu'à son exploitation malveillante. Une
récente étude a établi que dans le monde, une entreprise se fait attaquer, en moyenne,
toutes les 40 secondes par un rançongiciel.

Quand faire ce test ?


Afin de sécuriser l’infrastructure ou l’application, les tests d’intrusion peuvent être faits à
différents moments :

• lors de la conception du projet, afin d’anticiper les éventuelles attaques,


• pendant la phase d’utilisation, à intervalle régulier
• suite à une cyberattaque pour ne pas que ça se reproduise
La conduite d’un test d’intrusion est à l’initiative de l’entreprise qui veut se tester.
Le test d'intrusion peut se faire de l'extérieur (test d’intrusion externe). Ce test d’intrusion
pourra être réalisé de n'importe quelle connexion Internet.

Le test d’intrusion peut également se faire de l'intérieur de l’infrastructure (test d’intrusion interne).
Dans ce cas, le test sera opéré sur le LAN (réseau interne de l'entreprise).

Qui le fait ?
Vous vous demandez sûrement qui peut ou qui est en charge de réaliser un test d’intrusion ?
Et bien c’est un expert en cybersécurité ou encore appelé pentesteur !

Pour devenir pentesteur, il faut avoir une large maîtrise des systèmes et réseaux, car le
monde de la sécurité est transversal. Il faut connaître les différents matériels et technologies
sur le marché pour pouvoir comprendre et exploiter les vulnérabilités qui y sont présentes.

Ce cours vous permettra de réaliser votre premier test pour ainsi avoir un aperçu
d’ensemble de la sécurité de vos infrastructures ou applications. Si vous souhaitez aller plus
loin, n’hésitez pas à vous former au métier d’expert ou de pentesteur. C’est un profil très
recherché par les entreprises, mais ces professionnels ont en général au moins 5 à 10 ans
d'expérience.
Voilà, nous venons de voir ensemble ce qu’est un test d’intrusion et à quoi cela sert. Dans le prochain
chapitre, vous allez découvrir les différents types d'attaques ou intrusions possibles sur votre
infrastructure.

En résumé
• Un test d'intrusion est un test pour vérifier et identifier les types
de vulnérabilités ou d’attaques d'un SI (infrastructure, application…).
• Il est plus rapide et efficace qu'un audit de sécurité. Il donne également des résultats
plus pertinents qu’un scan de vulnérabilité.
• Les tests d’intrusions peuvent être faits depuis l’infrastructure elle-même ou via
Internet.
• Les professionnels du domaine sont appelés des experts en cybersécurité
expérimentés ou des pentesteurs.

• #

INDIQUER QUE CE CHAPITRE N'EST PAS TERMINÉ

CONDUISEZ UN TEST D'INTRUSIONMAÎTRISEZ LES DIFFÉRENTS TYPES DE TESTS

Préparez votre test d’intrusion


1. C’est quoi un test d’intrusion (ou pentest) ?
2. Maîtrisez les différents types de tests
3. Découvrez les systèmes d'exploitation adaptés
4. Configurez votre environnement LAB
5. Préparez votre pentest
• Quiz : Préparez votre test d’intrusion

uisez un test d'intrusion

• 8 heures
• Difficile

Licence



Mis à jour le 28/11/2019

Maîtrisez les différents types de tests


Dans ce chapitre, nous allons voir les différents types de tests d'intrusion qui existent et
comment sélectionner le bon en fonction de votre besoin.

Il existe deux types de tests d'intrusion :

• les tests d'intrusion externe


• les tests d'intrusion interne
Voyons cela ensemble !

Les 2 types de tests d’intrusion


Externe
Sur ce type d'intrusion, l'attaquant ou le pentesteur dans notre cas, est placé sur Internet. Il
est donc dans la situation ou un pirate tenterait de pénétrer dans l’entreprise à partir de
l’extérieur. L'adresse IP publique de la connexion internet du pentesteur et l'adresse IP
publique de la connexion internet de l'entreprise sont utilisées dans ce scénario.

Interne
À l'inverse, dans ce cas-là, le pentesteur est sur le réseau interne de l'entreprise. Il est dans
la situation d'une personne malveillante interne.

Par exemple, cela peut être le cas d'un prestataire qui a accès physiquement au bureau de
l'entreprise comme un technicien télécom, un électricien, etc. C'est également le cas
d'un employé malveillant, par exemple pour de l’espionnage industriel ou par vengeance.
L’employé peut également être inconscient des risques, et cliquer sur une pièce jointe
infectée ou communiquer des identifiants. Enfin, on peut également imaginer un
pirate ayant la possibilité de s'introduire physiquement dans l'entreprise et de se retrouver
dans un de ces scénarios.

Il y a donc des deux types de tests que nous réalisons, interne et externe, car ce sont les
deux types de scénarios qui se produisent dans la vie réelle des entreprises.

Conditions du test
En fonction du niveau de connaissance du pentesteur, trois qualificatifs différents sont
utilisés pour identifier les tests d'intrusion :

• la boîte noire
• la boîte grise
• la boîte blanche
Voyons cela dans le détail.

Boîte noire
Dans ce cas, le pentesteur n'a aucune information sur le réseau cible au début du test et ne
connaît aucun nom d’utilisateur ni mot de passe.

Il s'agit dans un premier temps de rechercher des informations sur :

• l'entreprise,
• les employés,
• connaître la situation géographique,
• les informations générales,
• le fournisseur d'accès à Internet,
• et toutes autres données pour rassembler un maximum d'informations qui
pourraient aider à trouver des vulnérabilités.
Nous sommes là dans le scénario d'un pirate qui souhaiterait s'introduire dans une
entreprise qu'il ne connaît pas.
Boîte grise
Le testeur possède un nombre limité d'informations. En général, lors de tests d'intrusion en
mode boîte grise, le testeur dispose uniquement d'un couple identifiant / mot de passe que
l'entreprise cible lui a fourni avant de démarrer la phase de test. Cela permet notamment de
passer l'étape d'authentification, et de pouvoir approfondir le test à l'intérieur de
l'application ou du système.

L'objectif de ce type de test est de se mettre dans la peau d'un « utilisateur normal » de
l'entreprise cible.
Boîte blanche
Enfin, dans cette condition, le pentesteur peut être en possession de nombreuses
informations. Parmi elles, les plus courantes sont :

• les schémas d'architecture,


• un compte utilisateur permettant de s'authentifier,
• le code source de l'application,
• etc.
Dans ce cas, le pentesteur va rechercher les failles en étant le plus exhaustif possible. Dans
ce scénario, la recherche est très approfondie et très complète.

L'objectif de ce type de test est de se mettre dans la peau d'un « administrateur système et
réseau » de l'entreprise cible.
Choix du test
Le choix du test d'intrusion qui va être conduit et très important, car il faudra le déterminer
en fonction de ce que le client veut tester. En fonction de la stratégie adoptée, les résultats
sont différents. Il faut donc bien identifier ce que l'entreprise cible veut protéger et de quel
type d'attaque elle veut se prémunir. De là, il faut déterminer le meilleur type de scan et les
meilleures conditions de connaissance du pentesteur avant le début du test.

Quelques exemples
1. Vous êtes RSSI pour l’entreprise SECURITYFIRST. Vous êtes soucieux qu’un pirate sur
Internet vole les données que vous hébergez. Dans ce cas, vous devrez privilégier un
test de type externe basé sur la boîte noire car c’est le scénario qui se rapproche le
plus de la menace pour laquelle vous voulez vous protéger.
2. Vous êtes RSSI dans une entreprise qui traverse une période de crise sociale avec
grèves et licenciements. Vous vous interrogez sur les conséquences que pourrait
avoir un collaborateur malveillant. Le choix le plus judicieux sera un test d'intrusion
interne en boîte grise. Le pentesteur possédera alors un login et mot de passe pour
accéder au système comme un utilisateur standard et vous pourrez identifier les
vulnérabilités internes dans ce scénario.
En résumé
• Il existe deux types de tests d'intrusion : interne et externe
• Il y a trois conditions de test d'intrusion : boîte blanche, boîte grise, et boîte noire.
• En fonction des conditions de départ, le pentesteur possède un niveau d'information
qui lui permet de plus ou moins approfondir le test.
• Le choix du type de test et des conditions de connaissance de départ est très
important. Il doit être fait en fonction de ce que l'entreprise veut protéger et
également en fonction du risque contre lequel elle se protège.

Découvrez les systèmes d'exploitation adaptés


Nous venons de découvrir les différents types de tests d’intrusion possibles. Dans ce
chapitre, nous allons découvrir les systèmes d'exploitation et les outils à disposition du
pentesteur pour la réalisation d’un test d’intrusion. Il y a 3 systèmes principaux :

• sur Linux
• Windows
• Mobile avec Android.
Voyons cela de plus près.

Kali Linux
Kali Linux est une distribution regroupant l'ensemble des outils nécessaires aux tests de
sécurité d'un système d'information. Cette distribution a pris la succession de Backtrack.

Kali est disponible en plusieurs versions :

• 32 ou 64 bits
• Live CD
• Images Vbox et VMWare
• Versions pour processeurs ARM (utilisables sur matériel type Raspberry Pi)
Toutes les versions sont disponibles en téléchargement gratuit sur le site officiel.

Cette distribution rassemble plus de 600 programmes pré installés comme :

• Nmap : Le plus célèbre scanner de ports libre distribué par Insecure.org. Il est conçu
pour détecter les ports ouverts, identifier les services hébergés et obtenir des
informations sur le système d'exploitation d'un ordinateur distant.
• Wireshark : Analyseur de paquets libre et gratuit. Il est utilisé dans le dépannage et
l’analyse de réseaux informatiques
• Metasploit : programme open source qui fournit des informations sur les
vulnérabilités de systèmes informatiques et les exploite.
• Burp Suite : application utilisé pour la sécurisation ou les tests d’intrusion des
applications web.
C'est vraiment la boîte à outils principale d'un pentesteur. Nous allons d'ailleurs nous
attarder plus longuement sur ce système d'exploitation un peu plus loin dans le cours.

Windows
Le système d'exploitation de Microsoft Windows 7, 8 ou 10 peut également être utilisé. Dans
la grande majorité des cas, une version équivalente des outils de Kali Linux est disponible en
version Windows. C'est évidemment le cas pour les plus connus d'entre eux :

• NMAP
• PuTTY
• Metasploit Framework
• Burp Suite
• OWASP Zed Attack Proxy
• Nessus
• John the Ripper
Étant donné que des versions similaires et en open source gratuit existent sur Kali Linux,
nous n'utilisons pas de système d'exploitation Microsoft dans ce cours.

Android
Les outils sur plateforme mobile sont parfois très pratiques quand on a besoin de tester de
manière itinérante. Des outils très performants et très bien conçus sont disponibles pour
l'utilisation sur Android :

• zANTI
• FaceNiff
• AndroRAT
• cSploit
Sachant que les outils installés sur Kali Linux couvrent les fonctionnalités de ses applications
Android, nous ne les verrons pas dans ce cours.

En résumé
• La distribution la plus adaptée pour les tests d'intrusion est Kali Linux.
• Les principaux outils utilisés par les pentesteurs sont souvent disponibles sur les 3
plateformes Windows, Linux, et Android.

Configurez votre environnement LAB


Maintenant que nous avons identifié les systèmes d'exploitation et les outils principaux à
utiliser pour un test d'intrusion, vous allez installer et configurer votre environnement
d'entraînement.

Installez Kali
Nous allons installer Kali Linux ensemble. Pour ce faire, vous pouvez vous rendre sur le site
officiel sur ce lien, et télécharger la version qui correspond à votre matériel.

Une fois le fichier ISO téléchargé, lancez le système d'exploitation.

Je vous conseille soit l'utilisation de l’ISO BootCD, soit l'utilisation de Kali sur machine
virtuelle.
Je vous conseille quand même l’installation de Kali Linux sur une machine virtuelle
VirtualBox car sinon il faut beaucoup de ressources pour la faire tourner dans la mémoire
vive uniquement.

Il peut être intéressant d’installer également les pilotes graphiques de VirtualBox pour avoir
toutes les résolutions disponibles avec la commande suivante :
apt-get install virtualbox-guest-x11
Au premier démarrage, puis avant chaque test d’intrusion, je conseille de réaliser les petites
manipulations suivantes :

Vérifiez la présence de mises à jour en tapant les 2 commandes suivantes dans un terminal :
apt-getupdate&&apt-getupgrade
apt-getdist-upgrade
Et enfin, vérifier si votre système Kali est bien propre et sain de tout malware. Pour cela,
tapez les 2 commandes suivantes dans un terminal :
/usr/sbin/chkrootkit
rkhunter-c
Installez Nessus
Nessus est un outil de scan de vulnérabilité très performant, simple d'utilisation, tout en
étant très puissant. C'est un logiciel payant pour les professionnels, mais qui peut être utilisé
gratuitement de manière personnelle.

Sur cette version gratuite, il y a des limitations mais elles ne seront pas gênantes pour notre
cours. Il est également possible d’utiliser, openVAS, équivalent de Nessus dans le monde
libre, mais il est un peu moins convivial donc nous aborderons Nessus dans ce cours.

Pour ce faire, il faut se rendre sur le site officiel de Nessus :

Téléchargez la version adaptée à votre distribution de Kali. Ensuite, pour l'installation nous
allons taper la ligne de commande suivante dans un terminal :
dpkg -i Nessus-*.deb
Puis, pour que Nessus démarre, nous allons saisir la commande suivante dans un terminal :
/etc/init.d/nessusd start
Enfin, pour que le service Nessus démarre à chaque démarrage de Kali automatiquement, il
faut écrire la commande ci-dessous dans un terminal :
update-rc.d nessusd enable
Installez Metasploit
Metasploit framework est un outil d'exploitation de vulnérabilités très puissant. Il est
intégralement en ligne de commande. Il possède une base de données énorme avec les
vulnérabilités existantes à ce jour.

Dans notre exemple, mettez à jour l'application Metasploit framework en tapant les 2
commandes suivantes dans un terminal :
msfconsole
aptupdate;aptinstallmetasploit-framework
Il est préférable de mettre à jour cette base de données avant chaque test d'intrusion pour
avoir des dernières vulnérabilités disponibles.
En résumé
• La configuration de l'environnement du test d'intrusion est très importante pour
réaliser un test d’intrusion dans de bonnes conditions.
• La Distribution Kali Linux est conçue spécialement pour les tests d'intrusion.
• Avant chaque test d'intrusion, il faut s'assurer que ces outils sont à jour et intègres.
• Il faut un scanner de vulnérabilité comme Nessus ou openVAS.
• Il faut également un outil d'exploitation de vulnérabilité comme le célèbre Metasploit
framework.
Préparez votre pentest
Maintenant que nos outils sont prêts, pour terminer cette première partie, nous allons voir
comment préparer son test d'intrusion et quels sont les critères pour définir le périmètre.

Définissez le périmètre du test d’intrusion


Comme vous l'avez vu dans les chapitres précédents, il est très important de déterminer la
menace contre laquelle vous voulez vous protéger : les attaques internes ou les
attaques externes.

Ensuite, en fonction de cela, il faut définir un périmètre qui peut être :

• Un serveur : dans le cas d'une application en ligne, d'un serveur Web, ou d'un
serveur interne à l'entreprise qui héberge différents services.
• Une partie du réseau : par exemple la partie DMZ du réseau, les machines de
développement, ou encore les serveurs de production.
• L’IP publique de l’entreprise : dans le cas d'une petite entreprise qui ne possède
qu'une connexion Internet et que l’objectif est de s'assurer que personne ne puisse
pénétrer de l'extérieur.
• Plusieurs IP publiques : dans le cas d'une plus grosse entreprise qui possède une
plage d’IP publiques avec plusieurs serveurs en hébergement.
• Tout le réseau interne : le réseau local LAN complet dans le cas où l'entreprise veuille
s'assurer que toutes ses machines internes sont sécurisées.
Par exemple, si vous voulez tester une application utilisée en interne, il faudra intégrer dans
le périmètre tous les serveurs hébergeant les composants de l’application (serveur Web,
base de données, etc.).

Il faut donc discuter et déterminer cela entre le donneur d'ordre et le pentesteur qui
réalisera le test d'intrusion. Comme vous l'avez compris, il est très important que le
périmètre colle parfaitement avec les attentes et l’évaluation de la menace.
Les autorisations, interlocuteurs et documents
Avant tout démarrage de test d'intrusion, il est indispensable d'avoir un accord
écrit et signé de la cible que l'on va tester. Dans le cas contraire, une tentative d'intrusion
sans autorisation est punie par la loi :

Article 509-1 du Code pénal : « Quiconque, frauduleusement, aura accédé ou se sera


maintenu dans tout ou partie d’un système de traitement ou de transmission automatisée de
données sera puni d’un emprisonnement de deux mois à deux ans et d’une amende de 500
euros à 25 000 euros ou de l’une de ces deux peines ».

Le « mandat d'autorisation de test de pénétration » doit être signé par le représentant légal
de l’entreprise ou le responsable des systèmes d’informations. Voilà ci-dessous un exemple
demande de mandat :
Je soussigné (prénom, nom) en tant que (fonction) de l’entreprise (nom) par la présente,
autorise la société ExpInfo, spécialisée en cybersécurité, à effectuer un test d’intrusion dans
notre système d’information.

Il peut également être précisé sur ce mandat la date et l'heure à laquelle sera réalisé le test
d'intrusion, l'adresse IP publique à partir de laquelle seront effectués les tests en cas de test
d'intrusion externe.

En résumé
• Pour préparer un pentest, il faut déterminer le périmètre du test d'intrusion
• Il y a 5 critères : le serveur, la partie réseau, l’IP publique de l’entreprise, les IP
publiques, le réseau interne.
• Il est impératif d'avoir une autorisation écrite et signée de l'entreprise cible du test
d'intrusion sous peine de sanction pénale.
Pour aller plus loin
• Page de téléchargement de la distribution Kali.
• Certification oscp sur Kali certification au SCP sur calice
• Présentation générale des tests d'intrusion

Préparez votre test d’intrusion


Compétences évaluées

• Maîtriser les outils d'aide à l'évaluation de la performance des collaborateurs


• Définir des objectifs précis et adaptés pour ses collaborateurs

Description

Maintenant que vous en avez appris un peu plus sur les tests d'intrusion, je vous propose de
répondre à ces quelques questions.

• Question 1

Est-ce qu'un scan de vulnérabilité est équivalent à un test d'intrusion ?

Oui
o

Non

• Question 2

Est-ce qu’un pentest est équivalent à un test d'intrusion ?

Oui

Non

• Question 3

À quoi sert un test d'intrusion ?

À être sûr d'être complètement protégé

À identifier les vulnérabilités uniquement

À identifier les vulnérabilités, tenter de les exploiter pour les qualifier, et proposer des
solutions pour les corriger

• Question 4

Quels sont les différents types de tests d'intrusion ?

Attention, plusieurs réponses sont possibles.

Interne

Externe

o
En frontière

Défensif

Intrusif

• Question 5

Quelles peuvent être les conditions du test d'intrusion ?

Attention, plusieurs réponses sont possibles.

La boîte neutre

La boîte grise

La boîte externe

La boîte blanche

la boîte interne

• Question 6

Quelle est la distribution Linux conçue spécialement pour les tests d'intrusion ?

Debian

RedHat

o
Kali

• Question 7

Lesquels des outils de pentest suivants sont des outils utilisés dans les tests d'intrusion ?

Attention, plusieurs réponses sont possibles.

Nero

Nmap

Wireshark

Word

OpenOffice

• Question 8

Lequel des outils suivants est un célèbre outil de scan de vulnérabilité ?

Facebook Scan

Scanner Ultimate Defender

Nessus

• Question 9

Lequel des outils suivants est un outil d'exploitation de vulnérabilité ?

o
Vulnerability Exploiter Corp

WireShark

Metasploit

VulntesterPro

• Question 10

Comment doit-on déterminer le périmètre du test d'intrusion ?

Le pentesteur détermine cela tout seul en fonction de ce qu'il pense le plus adapté, c'est sa
seule expertise qui compte.

Le pentesteur et le responsable de l'entreprise cible du test d'intrusion doivent déterminer


ensemble le périmètre idéal pour atteindre l'objectif.

Le pentesteur doit vérifier avec les utilisateurs finaux le périmètre de tests.

• Question 11

Une autorisation de l'entreprise cible est-elle indispensable pour réaliser un test


d'intrusion ?

Non, une autorisation n'est pas nécessaire car le pentesteur est un professionnel qui sait ce
qu'il fait.

Oui et non, c’est mieux mais pas obligatoire.

Oui, et n'importe quelle personne de l'entreprise cible peut signer le mandat d'autorisation.
o

Aucune de ces réponses.

• Question 12

Vous êtes RSSI d’une entreprise qui est un hébergeur français. Votre PDG est soucieux que
n’importe quel pirate puisse s’introduire dans votre système. Quel test d’intrusion pouvez-
vous faire, pour vous assurer de la sécurité de votre SI dans un tel scénario ?

Test d’intrusion externe en boîte blanche.

Test d’intrusion interne en boîte blanche.

Test d’intrusion interne en boîte noire.

Test d’intrusion externe en boîte noire.

• Question 13

Vous êtes RSSI d’une entreprise qui est un industriel français. Votre PDG est soucieux que
n’importe quel employé puisse utiliser le système d’information de l’entreprise de
manière malveillante. Quel test d’intrusion pouvez-vous faire, pour vous assurer de la
sécurité de votre SI dans un tel scénario ?

Test d’intrusion externe en boîte blanche.

Test d’intrusion interne en boîte noire.

Test d’intrusion interne en boîte blanche.

Test d’intrusion externe en boîte noire.

Vous devez encore répondre à 13 questions.


Maîtrisez les attaques les plus courantes
Maintenant que nous sommes prêts, nous allons pouvoir rentrer dans le vif du sujet et
étudier les différents types d'attaques qui existent.

Avant de commencer, petite précision sur une erreur couramment faite en français : il ne
faut pas confondre hacker et pirate.

• Un hacker est une personne avec de très bonnes compétences techniques qui
cherche à contourner les protections pour s'introduire dans un système ou un réseau
informatique. Cependant, les actions de hacker ne sont pas forcément malveillantes,
car on peut parler de hacker éthique.
• À l'inverse, un pirate va chercher à s'introduire dans un système en contournant les
protections, et le fera avec des intentions malveillantes.
Allez, commençons par les attaques les plus courantes.

Le déni de services
Le déni de service ou DoS, pour « Denial of Service » en anglais, est une attaque qui a pour
but de rendre indisponible un service. En d'autres termes, cette attaque empêche les
utilisateurs légitimes d'accéder à une ressource en ligne. Cette attaque peut-être lancée sur :

• un serveur Web,
• un serveur de messagerie,
• un serveur de base de données,
• toutes autres ressources accessibles en ligne.
C'est une attaque qui est très simple à mettre en place. Le principe est uniquement
de saturer la connexion cible pour qu'elle ne puisse plus répondre aux requêtes des
utilisateurs. Cette attaque peut se présenter sous plusieurs formes :

• l’inondation d’un réseau afin d'empêcher son fonctionnement,


• la perturbation des connexions entre deux machines, empêchant l'accès à un service
particulier,
• l'obstruction d'accès à un service pour une personne en particulier,
• également le fait d'envoyer des milliards d'octets à une box internet.
Pour lancer cette attaque, il faut avoir une bonne connexion, avec une très bonne bande
passante en comparaison de la bande passante de la cible. Cela étant coûteux, et peu
courant, les pirates ont inventé l'attaque par déni de service distribué ou DDoS
pour Distributed Denial of Service.
Une carte du monde est disponible avec un historique de ces attaques.

Il est compliqué de se prémunir contre ce type d'attaque. C'est pour ça que des attaques de
ce type ont lieu chaque seconde. Seuls les fournisseurs d'accès ont vraiment la possibilité de
les repérer et de les prévenir.
L’attaque Web
Maintenant que vous avez découvert l'attaque la plus simple, augmentons un petit peu en
complexité. Les attaques Web sont des attaques visant les serveurs Web. Il existe plein de
techniques qui permettent de contourner les protections d'un serveur Web :

• L’utilisation de faille connue


• L'utilisation de la technique de l'homme du milieu
• Forger des paquets HTTP
• L'intégration de paramètres
• Le cross-site scripting ou XSS
Voyons cela dans le détail dans le tableau suivant :

Faille connue Ces failles peuvent être trouvées avec un scanner de vulnérabilités comme
Nessus, et exploitées avec un logiciel comme Metasploit.

MITM L'utilisation de la technique de l'homme du milieu ou man-in-the-middle


attack. Cette attaque consiste à se positionner au milieu dans la
communication entre un client et un serveur pour intercepter et modifier les
paquets échangés entre les deux machines. Le logiciel « Burp suite »
permet de le faire.

Forger des Cette technique consiste à écrire manuellement des requêtes HTTP, qui
paquets HTTP vont ensuite être envoyées au serveur. Ces requêtes seront non standards,
avec des malformations qui peuvent générer des plantages sur le serveur
Web. Le logiciel Wfetch intégré à Microsoft IIS permet de le faire.

L'intégration Ici, nous pouvons ajouter ou modifier des paramètres dans les chemins
de paramètres HTTP qui seront mal interprétés par le serveur et qui permettront de
l'exploiter. Aucun logiciel n'est nécessaire car c'est faisable manuellement.

XSS Le cross-site scripting ou XSS. C’est un type de faille de sécurité de sites


Web permettant d'injecter du contenu dans une page, provoquant ainsi des
actions sur les navigateurs Web visitant la page. Par exemple, sur un
serveur vulnérable, dans une zone où les utilisateurs peuvent poster un
commentaire, si l'on rajoute la suite de caractères <script>alert("This
Website has been hacked")</script> au prochain affichage de la page, un
script s’exécutera à la place d’afficher le commentaire.
Il en existe bien d'autres attaques Web, mais celles-ci sont les 5 techniques principales.

Pour se protéger contre les attaques Web, il faut donc régulièrement que vous examiniez
vos serveurs Web pour les tester. Il faut notamment vérifier la vulnérabilité du contenu des
pages et des versions d’applications qui tournent dessus.
L’injection SQL
Dans le même registre que précédemment, les serveurs SQL peuvent être vulnérables aux
attaques. Ils peuvent être attaqués soit en direct, soit à travers le site Web pour lequel ils
hébergent une base de données. Le nom de cette attaque s'appelle injection SQL car le
principe est d'injecter des caractères pour exploiter les vulnérabilités.

Dans Kali Linux, il y a une multitude d'applications pour faire de l'injection SQL comme BSQL.
Cela dit, l’injection peut parfaitement se faire manuellement.
Quand vous avez un champ dans un formulaire Web, si le serveur SQL derrière n'est pas
protégé, et donc qu'il accepte les apostrophes, il y a toutes les chances qu’une injection SQL
soit possible.

Voilà, ceci n'est qu'un aperçu de ce que peut être l'injection SQL car c'est une activité qui
peut devenir rapidement très complexe.

Il existe également beaucoup de vidéos YouTube sur lesquels vous pouvez voir des démos
d'injection SQL par exemple ici.

Les réseaux sans fil


Pour terminer ce chapitre, nous allons parler des réseaux sans fil.

Au début des années 2000, les réseaux WiFi n'étaient pas cryptés. Puis la norme WEP est
arrivée. Cette norme a été pendant un bon moment la référence dans la sécurisation des
réseaux WiFi. Mais des vulnérabilités ont été découvertes, permettant de trouver la clé de
décryptage en moins de 10 minutes. Le protocole WPA est donc arrivé, et maintenant
le WPA2. Ces protocoles sont beaucoup plus sécurisés !

Les outils à votre disposition pour tester votre réseau sans fil sont les suivants :

InSSIDer sur Ce sont des applications qui permettent de scanner les réseaux WiFi à
Windows proximité.

LinSSID sur
Linux,

Wifi Analyser
sur Android

airodump-ng + Deux outils en ligne de commande, préinstallés dans Kali. Leur objectif est
airmon-ng d'injecter du trafic sur un réseau wifi inconnu, afin d’obtenir suffisamment
de paquets pour deviner la clé.

Wireshark Outil multi plateforme permettant d'écouter et enregistrer tout le trafic


d'une connexion, même sans vous connecter au réseau wifi.

cain&abel Deux outils disponibles sur Windows et Kali pour décrypter une clé WEP,
WPA, et WPA2.
ou

aircrack-ng
Pour vous prémunir contre les attaques WIFI, utilisez ces outils pour tester votre réseau.
Vous devez également impérativement utiliser les derniers protocoles de chiffrement WIFI
disponibles.
Aujourd'hui, c'est clairement le WPA2 qui vous protègera le mieux. Vous devez aussi utiliser
un mot de passe long, avec chiffres, majuscules, minuscules et caractères spéciaux. Les
suites de caractères que vous utilisez ne doivent surtout pas être dans le dictionnaire. Sinon
votre connexion wifi sera vulnérable aux attaques par dictionnaire.

Si vous souhaitez aller plus loin, et vous entraîner concrètement sur des types d'attaques
comme celle que vous venez de voir dans ce chapitre, n'hésitez pas à aller sur la célèbre
plateforme d'entraînement au hacking RootMe.

Vous pourrez alors créer un compte et vous entraîner sur les challenges de hacking
proposés.

En résumé
• Il existe plusieurs types d'attaques, avec des niveaux de complexité différents, et qui
permettent d'exploiter les vulnérabilités des systèmes.
• Les attaques par déni de service sont les basiques.
• Il existe différentes techniques pour attaquer un serveur Web : l'utilisation d'une
faille logiciel, l'attaque par l'homme du milieu, l'attaque par paquets Forget,
l'intégration de paramètres dans l'adresse, ou encore le cross site scripting.
• Un serveur SQL peut se faire attaquer soit directement, soit au travers du serveur
Web pour lequel il héberge la base de données. Les attaques de serveur SQL se font
souvent par injection.
• Un réseau sans fil Wifi doit utiliser la dernière norme de cryptage WPA2 pour être
sécurisé. Les anciennes normes de cryptage comme WEP ou WPA sont vulnérables.
• Des plateformes Internet sont à votre disposition pour vous entraîner au hacking.

Prévenez-vous des attaques plus complexes


Maintenant que nous avons vu les attaques les plus simples, passons en revue les attaques
plus complexes.
L’ingénierie sociale
Les attaques par ingénierie sociale font appel à la faille humaine. Cette pratique vise à
obtenir par manipulation mentale une information confidentielle. Le pirate utilise
la crédulité d'un utilisateur afin d’obtenir des informations sensibles comme son nom
d'utilisateur ou son mot de passe.

Par exemple, toutes les fois où vous recevez un email qui vous demande de cliquer sur un
lien pour vous connecter sur votre site de banque : Méfiance ! Les banques ne mettent
normalement pas de lien dans leur email. Il est donc fort probable que ce soit une copie
imitation du réel site de banque héberger sur un serveur pirate. Après avoir saisi l'identifiant
et le mot de passe, un message d'erreur s'affichera et le pirate sera alors en possession de
vos identifiants. Pas besoin de vous expliquer la suite de l'histoire…

Pour ce faire, il y a plusieurs techniques :

• La méthode non informatique : Le pirate peut par exemple appeler par téléphone un
utilisateur, se présenter physiquement devant lui, ou encore se faire passer pour une
personne légitime comme le support informatique. Un utilisateur crédule pourra
donner son mot de passe sur simple demande, ouvrir des portes, faire visiter, etc.
• Le hameçonnage : cette technique reste quand même la plus courante avec l'envoi
d'un courriel qui est du SPAM. Ce courriel est une imitation d’un courrier officiel
comme les impôts, la banque, ou encore la poste. Le pirate utilise une raison crédible
pour que l'utilisateur clique sur le lien et saisisse ses identifiants. L'utilisateur croit
être sur le site officiel alors qu'il est en réalité sur une copie du site détenu par le
pirate. Des d'outils comme « social engineering toolkit » sont disponibles dans Kali
pour créer ces sites clonés.
La meilleure prévention par rapport à ce type d'attaque est de loin la sensibilisation et
la formation. Une entreprise et ses collaborateurs sont comme une chaîne, qui est aussi
solide que le plus faible de ses maillons. C'est pour ça qu'il est très important que tous les
collaborateurs qui ont accès au système d'information soient au minimum sensibilisé.
Contournez un pare-feu, un IDS et un IPS
Revenons maintenant un petit peu plus sur la technique. Deux équipements matériels sont
indispensables pour assurer la sécurité d'un réseau : Le pare-feu et l’IDS.

• Un pare-feu (ou firewall en anglais) est un équipement en frontière de réseau qui


permet de filtrer le trafic en autorisant ou en bloquant les paquets.
• Un IDS, Intrusion Detection System en anglais, est un système de détection
d'intrusion qui permet d'analyser le trafic en temps réel pour remonter des alertes en
cas de détection de piratage ou de propagation de logiciel malveillant.
• Un IPS, intrusion prevention system, est un système de prévention d'intrusion. Il
permet de détecter comme un IDS, mais également de bloquer le trafic qui serait
considéré comme malveillant.
Ces 3 équipements sont redoutables pour les pirates. Il est donc difficile, mais essentiel pour
eux de savoir les contourner pour pouvoir s'introduire dans un réseau sécurisé.

Pour ce faire, des outils sont à disposition dans Kali :


• Nmap et hping3 sont des outils qui permettent de gérer la fragmentation. Cela
permet qu'une attaque soit envoyée par petits morceaux fragmentés, sans que les
équipements de détection identifient l'action malveillante.
• HTTHost (côté server) et HTTPort (côté client) est un outil très pratique pour établir
un tunnel sur le port 80. Cela permet au trafic malveillant de passer dans ce tunnel,
sans être détecté par les équipements de sécurité.
• DNS2TCP est également un outil intéressant qui permet d'établir un tunnel sur le
port DNS 53. Ce type de trafic n'est souvent pas analysé car il est considéré, à tort,
comme anodin.
• Et bien sûr le plus célèbre de tous, Metasploit, qui permet bien évidemment
d’exploiter une vulnérabilité pour obtenir et maintenir l'accès à distance sur une
machine à l'intérieur du réseau cible.
Le test d'intrusion est donc très important pour déterminer si votre infrastructure
est vulnérable et si vos équipements de sécurité sont contournables. Il est très important
que l'intégralité des machines d’une infrastructure réseau soit sécurisée, car une seule
machine mal sécurisée peut permettre à un pirate de s'introduire. Pour maintenir un bon
niveau de sécurité sur une infrastructure réseau, il faut bien évidemment avoir un pare-feu,
un IPS et un IDS. Pour réduire les risques de contournement, il faut qu'ils soient tous à jour
et convenablement sécurisés.
Honeypots
Les honeypots, aussi appelés pots de miel en français, sont des systèmes que vous pouvez
installer en entrée d'un réseau. Ils ont pour but de simuler des machines d'un réseau
informatique qui ne sont en fait qu’un leurre. Le but est de détourner le pirate pour qu'il
passe du temps à essayer d'attaquer ces machines plutôt que de s'attaquer au réseau réel de
l'entreprise.

Deux exemples :

• KFsensor : honeypot vraiment simple d'utilisation qui s'installe en quelques clics sur
Windows.
• Snort : le honeypot le plus utilisé qui est très complet et très performant, mais plus
complexe à configurer.
Ces outils ont également l'avantage de mémoriser chaque action faite par le pirate sur le
système. Cela permet de mieux comprendre les méthodes et techniques employées pour
s'introduire dans le réseau, et donc de s’en protéger.
Cependant, il existe des outils pour détecter ces honeypots. Il faut donc vous assurer que
votre honeypot n'est pas détectable avec un outil comme « Send-Safe Honeypot Hunter ».
Sinon le pirate ciblant votre infrastructure ne va pas s'attarder là-dessus et va se concentrer
sur votre infra réseau réel.

En résumé
• Les techniques utilisées par les pirates ne sont pas toutes informatiques, car le social
engineering est très utilisé aujourd'hui.
• La sensibilisation à la cybersécurité de tous les collaborateurs de l'entreprise est
capitale pour maintenir un bon niveau de sécurité.
• Même les outils les plus performants comme les pare-feu, IPS, et IDS sont
contournables. Il faut s'assurer qu'ils soient à jour et parfaitement configurés pour
réduire les risques.
• Un honeypot installé en entrée d'un réseau est un atout indéniable pour protéger
votre système. Il permet d'attirer le pirate et de le détourner de votre réseau réel.

Scannez les vulnérabilités d’un système


Maintenant que nous avons bien étudié la théorie, passons à la pratique en utilisant les
outils à disposition dans le système Kali. Comme nous l'avons vu précédemment, la première
étape dans un test d'intrusion est de rechercher toutes les informations exploitables et
disponibles sur Internet.

Ensuite, une fois que vous avez collecté toutes les informations disponibles sur cette cible, il
faut scanner les adresses IP du périmètre. Et enfin, vous poursuivrez en scannant les
vulnérabilités présentes. Pour réaliser les étapes suivantes, vous allez utiliser le
logiciel Oracle Virtual Box, disponible ici avec deux machines virtuelles (Kali Linux et
Metasploitable).
Voyons tout ça ensemble !

Recherchez les empreintes, collectez les informations


C'est vraiment la première étape d'un test d'intrusion. La recherche d'empreintes à la
collecte d'information se fait en utilisant des sites Web qui sont à votre disposition, par
exemple :

• Google bien sûr : c'est incontournable, il faut googliser l'entreprise pour essayer de
rassembler un maximum d'information.
• Network Tools : sur ce site vous avez accès à une large gamme d'outils que les
administrateurs système et réseaux connaissent bien.

• Serversniff : également disponible des outils en ligne sur ce site pour tester une cible
en IPv4, IPv6, ou même un serveur Web HTTP et HTTPS.
• Shodan : vous trouverez ici une base de données des adresses IP publiques qui ont
été scannées avec les différents ports ouverts et les vulnérabilités trouvées.

• Google Maps : bien sûr le classique Google Maps qui permet de géolocaliser une
entreprise pour obtenir plus d'informations sur l'implantation géographique.
• Archive.org : et pour terminer, ce site est incontournable car il contient une archive
d'Internet. À intervalle régulier, il mémorise les différents sites. Même si un contenu
a été effacé d'un site Web, si ce site a été archivé, le contenu effacé est encore
disponible ici :

Énumérez les systèmes actifs


Il existe des tas de logiciels pour énumérer les systèmes actifs d’un réseau à la recherche de
réponses. Cela dit, nous allons utiliser NMAP dans ce cours.

• Vous avez la version graphique Zenmap


• et la version en ligne de commande Windows ou Linux
En tapant simplement la commande « nmap », vous allez avoir une première aide qui vous
permet de taper des lignes de commande simple. Une aide plus complète est disponible sur
le site officiel.

Vous pouvez par exemple scanner toutes les adresses IP de votre réseau pour voir quelles
sont les réponses :
nmap -sn 10.0.2.0 /24
Recherchez les vulnérabilités
Comme de l'avant vu précédemment, il existe beaucoup de logiciels de scan de vulnérabilité.
Celui que nous allons utiliser dans ce cours est Nessus.

Après installation, vous pouvez accéder aux logiciels en vous connectant sur l'adresse
: https://localhost:8834/
Plusieurs types de scans sont possibles. Quelques modèles sont disponibles dans la version
gratuite, et tous les autres sont disponibles dans les versions payantes.
Cela dit, il est toujours possible de personnaliser son propre modèle.

Dans cet exemple, vous allez utiliser un « scan basic » pour scanner votre réseau de test avec
la machine virtuelle Metaspoitable active.
Une fois le scan terminé, vous pouvez analyser le résultat.

Vous voyez qu'il y a plusieurs vulnérabilités qui sont catégorisées en fonction de leur
sévérité.
Quand vous cliquez sur une vulnérabilité, vous pouvez en voir le détail.

En résumé
• Il est très important de régulièrement vérifier les informations internes à l'entreprise
qui sont disponibles sur la toile. Il est fréquent que des informations sensibles fuitent
sur les réseaux sociaux. Pour un pirate, cela peut être une opportunité d'accéder au
système.
• Pour être efficace dans un test d'intrusion, il faut suivre le processus suivant :
recherche d'empreinte, énumération des systèmes actifs et recherche de
vulnérabilités.

Testez le système cible avec des méthodes simples


Maintenant que vous avez identifié les systèmes actifs et les vulnérabilités, vous apprendrez
dans ce chapitre les méthodes simples et concrètes qu'un hacker utilise pour entrer et
prendre possession d'un système d'information.

Comme vous l'avez vu précédemment, il existe plusieurs méthodes non informatiques pour
s'introduire dans un système. La plus célèbre d'entre elles est l'ingénierie sociale.

Vous allez donc voir comment obtenir des identifiants et mots de passe en utilisant la faille
humaine. Puis, vous mettrez en œuvre une autre méthode assez connue pour obtenir un
mot de passe et le casser. Deux attaques existent pour se faire : l'attaque par dictionnaire,
ou l'attaque par force brute.

Cependant, il n'est pas toujours possible de casser un mot de passe comme vous l'avez vu
au chapitre précédent. C'est pourquoi il suffit parfois d'écouter les paquets trafiquants sur le
réseau pour relever ces mots de passe.
Voyons tout ça ensemble !

Utilisez la méthode non-électronique


Les développeurs disent généralement pour se dédouaner (de toute erreur qu'ils auraient pu
introduire dans leur code) que la plus grosse faille dans le système d’information se situe sur
l'interface chaise/clavier. C’est une boutade, cependant les collaborateurs mal formés à la
cybersécurité peuvent faire courir un risque à leur entreprise.

Plusieurs outils sont intégrés à Kali pour faire des attaques par ingénierie sociale. Celui que
nous allons voir ensemble dans ce chapitre est l’outil : « Social Engineering Toolkit ».
Avec cet outil nous allons cloner la page d’identification d’un site Web, pour collecter des
mots de passe. Vous trouvez ici des copies d'écran des différentes options, n'hésitez pas à les
suivre en intégralité dans la vidéo.

• Option 1
• Option 2

• Option 3
• Option 4

Notre serveur Web qui va héberger le site cloné est notre machine Kali Linux.
Nous allons cloner la page de login de Facebook :
Cela semble fonctionner car si on se connecte sur le port 80 de notre machine Kali, nous
avons bien une copie de la page Web de login de Facebook.

Essayez de rentrer des identifiants.

Nous les retrouvons bien sur notre terminal.


Voilà comment les pirates peuvent collecter des mots de passe à l’insu des utilisateurs.

Écoutez le réseau
Simplement en écoutant le réseau, il est possible de capter des informations qui transitent
en clair. Effectivement à chaque fois qu'un protocole non chiffré est utilisé, l'écoute est
possible. Pour ce faire, je vous propose d'utiliser Wireshark.
Connectez-vous sur la page Web de votre machine Metasploitable, et cliquez sur le lien
DVWA.

Là nous arrivons sur une page d'authentification.


Démarrez la capture dans Wireshark en cliquant sur « capture » puis « option ».

Sélectionnez eth0 et cliquez sur « start ».


Retournez sur la page Web que l'on a chargée juste avant, entrez un login et un mot de
passe :

C'est bon, vous pouvez maintenant arrêter la capture dans Wireshark. Appuyez sur le bouton
STOP en haut à gauche. Maintenant, recherchez dans toutes les trames. Capturez la trame
qui possède l'information du login et mot de passe que vous avez rentré sur le site. Étant
donné que la page Web est en HTTP et non en HTTPS, tout est passé en clair.

En résumé
• Il est très important que tous les collaborateurs soient formés à identifier le SPAM.
Beaucoup d’outils sont à la disposition de tous pour casser les mots de passe. Il faut
donc respecter des règles de complexité minimums pour établir un mot de passe.
• Il faut toujours utiliser des protocoles chiffrés pour échanger des données sensibles.
Par exemple, les sites sur lesquels vous rentrez un mot de passe doivent être en
HTTPS.
Testez le système cible avec des méthodes complexes
Si nous augmentons encore le niveau par rapport au chapitre précédent, nous allons
maintenant étudier des méthodes encore plus complexes pour nous introduire dans un
système informatique.

Exploitez les vulnérabilités


Nous avons vu que des outils de scan comme Nessus sont très performants pour identifier
les vulnérabilités. Mais ensuite, il faut les exploiter.

L’outil le plus utilisé est Metasploit. Il est complexe à prendre en main, mais extrêmement
puissant. Il permet de s'introduire et de maintenir l'accès dans un système, en utilisant des
vulnérabilités connues.

Nous avons vu dans la partie 1 comment le démarrer sur Kali et le mettre à jour.
Maintenant, voyons la méthodologie d'utilisation de cet outil, étape par étape :

1.Prenez la liste des vulnérabilités trouvées pendant le scan :


2. Choisissez et configurez un exploit en fonction.

Un exploit est le code permettant de pénétrer un système cible en profitant de l'une de ses
vulnérabilités. Plus de 1 000 exploits sont disponibles dans Metasploit pour les systèmes
d’exploitation.
3. Choisissez et configurez un payload.

Un payload est le code qui s'exécutera après s'être introduit dans la machine cible, par
exemple pour avoir accès à un shell distant ou un serveur VNC.
4.Choisissez la technique d'encodage pour encoder le payload de sorte que les systèmes de
prévention d'intrusion ne le détectent pas. Choisissez également les options du payload :
5.Exécutez l'exploit. Dans l’exemple j’ai ouvert un shell sur l’ordinateur cible :
Il existe différentes versions de Metasploit. Deux sont payantes et deux sont gratuites. Celle
qui est préinstallée dans Kali est la version Metasploit framework qui est gratuite.
Pour en savoir plus sur Metasploit, vous pouvez aller visiter cette page. Si vous souhaitez
approfondir l'utilisation de cet outil, vous pouvez visiter cette documentation en ligne très
complète.

Une machine virtuelle est disponible pour s'entraîner. Elle s'appelle Metasploitable. Elle
possède volontairement des vulnérabilités pour s'entraîner à les détecter et les exploiter en
toute légalité. Elle est téléchargeable ici. La documentation pour cette machine virtuelle est
disponible ici.

Le vol de sessions
Une session est une visite ou une connexion individuelle, initiée par un utilisateur. Quand un
utilisateur arrive sur un site, et qu'il se connecte à son compte, pendant toute la durée de la
session, l'utilisateur n'aura pas besoin de remettre son mot de passe car il sera identifié par
ce site.

Il y a plusieurs outils utilisés pour voler la session d'un utilisateur et se faire passer pour lui :

• Zed Attack Proxy : c'est un outil qui permet de créer un proxy en utilisant la
technique MITM, comme nous l'avons vu dans la partie précédente, en nous
interposant entre le client et le serveur. Avec ce logiciel, le pirate voit donc passer les
flux : du client au serveur et du serveur au client. Il peut donc récupérer les mots de
passe.
• Wireshark : Pour écouter le trafic réseau réalisé sur un protocole non sécurisé et
récupérer l'ID de session afin de le réutiliser par la suite.

• DroidSheep ou Droidsniff : ce sont deux applications sur Android, qui permettent de


créer un réseau WiFi gratuit sur lequel les victimes se connectent. Ensuite,
l'application récupère les mots de passe de connexion des sites les plus célèbres
comme Facebook, Linkedin, Twitter, Google +, etc.
Le vol de session peut donc se faire en volant le mot de passe de connexion au site. Mais il
peut également se faire sans connaître le mot de passe, et en utilisant uniquement l'ID de
session par exemple. Après récupération des identifiants, il est possible de surfer sur les sites
en usurpant l'identité de la victime.

Effacez vos traces


Enfin, pour terminer cette partie, vous allez apprendre comment effacer ses traces après
une intrusion. Un piratage réussi est un piratage qui ne sera jamais révélé. Pour cela, il est
essentiel pour un pirate d'effacer ses traces pour ne pas être découvert. Pour ce faire, il faut
penser aux points suivants :
• Désinstaller toutes les applications installées pour intrusion ;
• Effacer tous les fichiers créés ou copiés ;
• Supprimer des journaux d'événements de la machine cible les traces de connexion à
distance ;
• Supprimer également des journaux d'événements les traces du trafic généré sur
les équipements réseau. Par exemple, si le piratage consistait au vol d'une grosse
base de données, cela va générer des flux anormaux sur les équipements réseau. Il
faut donc effacer un maximum de traces à ce niveau-là pour ne pas être repéré.
Les pirates qui ont volé les 3 milliards de comptes utilisateur de Yahoo ne se sont pas fait
démasquer, car ils ont couvert leurs traces de manière très ingénieuse. C'est seulement fin
2017, après une enquête de plusieurs années, que l’ampleur de l’attaque a été évaluée.

Voici un article du New York Times pour plus de détails sur cet événement qui est, à ce
jour, la plus grosse fuite de données connue. Également, un article récent nous apprend que
les entreprises mettent 205 jours en moyenne avant de réaliser qu'elles se sont fait
cyberattaquer.

Finalement, les différentes notions vues dans ce chapitre peuvent rapidement être très
techniques mais les bons pirates les maîtrisent parfaitement.

En résumé
• Metasploit est l’outil le plus connu pour exploiter les vulnérabilités des systèmes.
• La procédure classique utilisée par les pirates est la suivante : scan de
vulnérabilité, exploitation des vulnérabilités, maintien de l'accès malveillant, et
effacement des traces.
• Il existe beaucoup de techniques pour voler une session utilisateur. Il n'est pas
obligatoirement nécessaire de connaître le mot de la session utilisateur.
• La dernière étape d'une attaque par un pirate est l'effacement de ses traces.
Pour aller plus loin
• Méthode OWASP
• Jeu interactif pour sensibiliser à la cybersécurité
• Plateforme de sensibilisation à la cybermalveillance
• Entraînez-vous pour de vrai, mais légalement sur la plateforme HackMe
Entraînez-vous à mener un test d'intrusion
Bienvenue dans cet exercice de pratique. L'objectif est de vous mettre en situation, pour que vous
soyez en mesure de réaliser un test d'intrusion en utilisant les outils de pentesting.

À vous de jouer !
Pour vous entraîner, réalisez cet exercice étape par étape. Une fois terminé, vous pouvez
comparer votre travail avec les pistes que je vous propose.
Étape 1 : Préparez votre environnement
En premier lieu, installez un environnement pour réaliser le test : un système Kali Linux et la machine
virtuelle Metasploitable. Vous avez normalement déjà installé et configuré Kali Linux dans la partie 1
(sinon, faites-le dès maintenant).

Concernant Metasploitable :

• Téléchargez la machine virtuelle Metasploitable


• Faites-la démarrer avec un logiciel comme VirtualBox
• Installez Nessus sur la machine Kali comme vous l'avez vu dans la partie 1 chapitre 4.
Étape 2 : Effectuez une reconnaissance
• Utilisez Nmap pour scanner votre réseau local.
• Utilisez Zenmap pour scanner tous les ports de votre machine Metasploitable.
• Écrivez la commande que vous avez utilisée pour utiliser Nmap et faites une capture
d'écran pour montrer le résultat. Numérotez-le « Screenshot1 ». Faites de même
pour Zenmap, numérotez-le « Screenshot2 ».
Étape 3 : Scannez les vulnérabilités

• Scannez les vulnérabilités de la machine Metasploitable avec Nessus comme vous


l'avez vu dans la partie 2 chapitre 3.
• Lisez attentivement le rapport de scan de vulnérabilité généré par Nessus.
• Faites une capture d'écran pour montrer le résultat du scan, numérotez-
le « Screenshot3 ».
Étape 4 : Sélectionnez une vulnérabilité
• Quel est le logiciel et la version de l’application FTP qui tourne
sur metasploitable ? Faites une capture d'écran pour montrer ce que vous avez
trouvé, numérotez-le « Screenshot4 ».
• Cette version particulière contient une porte dérobée qui a été glissée dans le code.
Si une connexion FTP est initiée avec le nom d'utilisateur « backdoored », la porte
dérobée ouvrira un shell d'écoute sur le port 6200. Essayez de vous connecter au
serveur FTP (port 21) avec le nom d’utilisateur « testeur ». Vérifiez que le port
6200 est bien ouvert avec Nmap. Faites une capture d'écran pour montrer ce que
vous avez trouvé, numérotez-le « Screenshot5 ».
• Maintenant, essayez de vous connecter sur le port 6200 avec un shell et montrez que
vous avez la main en root. Faites une capture d'écran pour le montrer, numérotez-le
« Screenshot6 ». La commande est « telnet [IP metasploitable] ».
À savoir, il vous faut mettre un point virgule à la fin des commandes une fois la commande
telnet passée. Par exemple : « id; » ou « whoami; »
Question bonus : Quelle solution pourriez-vous proposer pour corriger cette vulnérabilité ?
Vérifiez bien que vous avez les éléments suivants :

• Les machines sont répertoriées


• Les points ouverts sont listés
• Les vulnérabilités Nessus sont indiquées
• Cibler des vulnérabilités à l'aide d'un rapport
• Prendre un contrôle root après une exploitation de backdoor
Vérifiez votre travail
Alors, vous êtes allé au bout ? Suivez le guide pour vérifier votre travail !
Pour valider les compétences associées à cette activité, vous devez observer au moins 4
des vérifications suivantes :

• Screenshot1 Scan Nmap : le scan montre toutes les machines du réseau local ;
• Screenshot2 Scan Zenmap : les ports ouverts sont visibles ;
• Screenshot3 Scan Nessus : les résultats sont visibles ;
• Screenshot4 Logiciel FTP : Le nom du logiciel et sa version sont visibles ;
• Screenshot5 Scan Nmap sur le port 6200 : le port 6200 est ouvert ;
• Screenshot6 Shell Root : L'accès root est bien visible.
Question bonus : il faut mettre à jour la version de vsFTPd qui est beaucoup trop ancienne.
Voici le corrigé type pour vous permettre de vérifier votre travail.
Proposez et inventoriez les mesures correctives
Évaluez les risques
Vous savez maintenant comment réaliser un test d'intrusion. Votre objectif à présent est
d'apprendre à présenter le résultat de votre travail. Vous allez donc mettre en forme et
proposer des solutions pour la correction des vulnérabilités trouvées.

Pour chaque vulnérabilité trouvée, le risque est évalué. Ce n’est pas systématique, mais
dans les rapports de test d’intrusion très complet de l'évaluation du risque découle la
classification des trois axes suivants :

• la sévérité,
• la complexité,
• et la priorité.
Voyons cela ensemble et commençons par la sévérité !

La sévérité
Dans le domaine de la sécurité informatique, le système d'évaluation standardisé de la
criticité des vulnérabilités - ou « Common Vulnerability Scoring System » (CVSS) - se base
sur des critères objectifs et mesurables. Cette évaluation est constituée de 3 mesures
appelées métriques :

• la métrique de base,
• la métrique temporelle
• la métrique environnementale.
Ce standard CVSS multiplie la probabilité d’apparition d’un événement avec le niveau de
gravité des conséquences de cet événement. La composante qui en résulte est la sévérité,
ou criticité. Celle-ci est évaluée et adaptée au contexte de l’entreprise par nos pentesteurs.
La complexité de la correction
Pour chaque vulnérabilité identifiée, vous devez proposer une solution corrective et estimer
le niveau de difficulté de correction.

• Complexe : La correction de la vulnérabilité identifiée nécessite une modification


importante dans l’organisation ou le code d’une application. Elle est donc très
coûteuse en investissement ou en ressources.
• Modérée : La correction de la vulnérabilité identifiée nécessite une modification
limitée dans l’organisation ou le code d’une application. Elle est donc moyennement
coûteuse en investissement ou en ressources.
• Facile : La correction de la vulnérabilité identifiée nécessite une simple modification
(par exemple : un fichier de configuration, changement de mot de passe). Elle est
donc peu coûteuse en investissement ou en ressources.
Un exemple tout simple serait que l'administrateur système a laissé les mots de passe par
défaut après l'installation d'une application. La complexité de la correction est « facile »
puisqu'il suffit de changer le mot de passe pour sécuriser l'application.

Un autre exemple serait qu’une entreprise utilise toujours Windows Server 2003 pour faire
fonctionner son réseau. Ce système d'exploitation n'étant plus supporté par Microsoft, il
faut en changer. La complexité de la correction serait là « complexe » puisqu'elle nécessite le
changement du serveur et la migration vers une version plus récente de Windows Server.

La priorité de la correction
Partant du constat des 2 axes précédents (sévérité et complexité), vous pouvez conseiller sur
la priorisation de l’application des solutions correctives du système d’information.

Priorité Urgent La correction de la vulnérabilité doit être faite dans les plus brefs
1 délais.

Priorité Standard La correction de la vulnérabilité peut suivre le processus habituel de


2 traitement.
Priorité Bas La correction de la vulnérabilité n’est pas urgente et reste à la
3 convenance de vos équipes informatiques.
Il faut donc retrouver ces trois dimensions pour chaque vulnérabilité dans le rapport de test
d'intrusion.

Si nous reprenons l’exemple précédent, où l'administrateur système a laissé les mots de


passe par défaut après l'installation d'une application. Nous avons vu que la complexité de la
correction est « facile ». Sachant que nous parlons d’un compte administrateur, il a des
droits étendus. La sévérité est donc « intolérable ». Tout logiquement, la préconisation du
pentesteur ce sera une « priorité 1 » : « Urgent » pour l’application de la correction.

Les solutions correctives


Chaque vulnérabilité connue est référencée dans la base de données CVE, qui signifie
Common Vulnerabilities and Exposures). Les détails de chaque vulnérabilité sont disponibles
gratuitement sur le site CVEDetails.

Chaque vulnérabilité est présentée dans un tableau, qui présente le détail des systèmes
touchés et la façon dont on peut l’exploiter.

Exemple de vulnérabilité
An issue was discovered in certain Apple products. iOS before 11.3 is affected. macOS before
10.13.4 is affected. iCloud before 7.4 on Windows is affected. iTunes before 12.7.4 on
Windows is affected. tvOS before 11.3 is affected. watchOS before 4.3 is affected. The issue
involves the "Security" component. A buffer overflow allows attackers to execute arbitrary
code in a privileged context via a crafted app.

Pour chaque vulnérabilité, vous avez donc un tableau avec :

CVE ID et C'est le code unique donné à chaque vulnérabilité découverte dans le


CWE ID monde informatique.

Vulnerability Dans cette colonne du tableau, nous avons l'information sur le type
Type(s) d'exploitation de la vulnérabilité. Cela peut être une exécution de code
arbitraire, une exécution de code SQL, une attaque XSS, une attaque DoS,
une attaque de type overflow, etc.

Date Nous avons également l'information sur la date où la vulnérabilité a été


rendue publique et la date de mise à jour.

Score C'est le système d'évaluation dont je vous parlais tout à l'heure, avec une
note CVSS qui est donnée pour évaluer la sévérité de la vulnérabilité.

Gained Access Ce champ indique s'il est possible d'obtenir des accès grâce à cette
Level vulnérabilité. Cela peut-être des accès système, utilisateur, ou
administrateur.

Access Dans cette colonne, nous avons une précision sur le type d'accès qui peut
être local ou distant.

Complexity Ici, c'est la complexité et donc la technicité qu'il est nécessaire de mettre en
œuvre pour exploiter cette vulnérabilité.

Conf. + Integ. Ces champs indiquent le niveau d’impact sur la confidentialité, l'intégrité et
+ Avail la disponibilité.
Prenons un autre exemple : la faille la plus utilisée en 2017 CVE-2017-0143 aussi connue
sous le nom de EternalBlue.

C’est un exploit développé par la NSA. Il est révélé et publié par le groupe de hackers « The
Shadow Brokers ». Cet exploit utilise une faille de sécurité présente dans la première version
du protocole SMB (SMBv1). Bien que cette faille de sécurité ait déjà été résolue par
Microsoft, de nombreux utilisateurs de Windows n'avaient toujours pas installé ce correctif
de sécurité lorsque. Le célèbre rançongiciel « WannaCry » utilise cette faille de sécurité pour
se propager.

Voilà le tableau des détails de cette faille :

The SMBv1 server in Microsoft Windows Vista SP2; Windows Server 2008 SP2 and R2 SP1;
Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold and R2; Windows RT 8.1; and
Windows 10 Gold, 1511, and 1607; and Windows Server 2016 allows remote attackers to
execute arbitrary code via crafted packets, aka "Windows SMB Remote Code Execution
Vulnerability." This vulnerability is different from those described in CVE-2017-0144, CVE-
2017-0145, CVE-2017-0146, and CVE-2017-0148.

Sur le résultat du scan de vulnérabilité de Nessus, il est indiqué les références CVE
correspondantes aux vulnérabilités trouvées. Il est donc possible d'aller se documenter pour
avoir les détails.

Par exemple, voici le lien pour avoir des précisions sur la vulnérabilité CVE-2018-4144
touchant le système iOS.

Dès qu’une vulnérabilité est rendue publique, un numéro de CVE lui est attribué.
Le re-test et la réglementation
À la suite du rapport de test d'intrusion, un plan d'action est déterminé pour corriger les
vulnérabilités éventuelles. Pour s'assurer que le système est totalement protégé après la
correction, il est conseillé de faire un deuxième test de vulnérabilité que l’on appelle
couramment un « re-test ». En général plus rapide, il vérifie uniquement les points qui ont
été notés « à corriger » dans le premier test.

Si trop de temps (plus de 6 mois) s'est écoulé entre le premier test de vulnérabilité et le re-
test, il est quand même conseillé de le refaire de manière complète.
En règle générale et selon les recommandations, pour s'assurer que votre système est
sécurisé, il faut prévoir de faire un test d'intrusion ou un audit de sécurité de
manière annuelle.

Pour les établissements sensibles type « bancaires », qui se soumettent aux règles PCI DSS
(Payment Card Industry Data Security Standard), des normes encore plus drastiques sont
préconisées. Un test d'intrusion annuel interne et externe doit être réalisé en incluant tout
le système d’information dans le périmètre.
Les scans de vulnérabilité et les tests d'intrusion sont également des composants essentiels
de la norme ISO 27001. Cela s'intègre parfaitement dans la logique de contrôle initial et de
développement continu de la sécurité des systèmes d'information ISMS « Information
Security Management System ».

Pour aller plus loin sur l'évaluation des risques, cliquez ici.

Pour aller plus loin sur la matrice des risques, cliquez ici.

Prenons un exemple concret


Pour que ce soit plus parlant, nous allons imaginer dans ce dernier point du chapitre, un
exemple concret de rapport de test d'intrusion.

Les entreprises spécialisées en cybersécurité qui réalisent des pentests ont chacune leur
façon de présenter leur rapport de test. Elles intègrent plus ou moins d'informations et de
détails sur la façon dont elles ont fait le pentest et les corrections à apporter. Vous pourrez
donc noter que dans ce rapport n'est précisée que la sévérité de la vulnérabilité trouvée. La
complexité et la priorité de la correction sont laissées à l'appréciation du client.
Prenons tout d'abord un exemple qui vient du site offensive-security. Le scénario est le
suivant : l'entreprise MegaCorp One est soucieuse qu'un pirate puisse s'introduire à partir de
l'Internet dans son système. Elle contacte donc l'entreprise Offensive-Security, experte en
cybersécurité. Un test d’intrusion externe en boîte noire est préconisé.

Voilà le déroulement du test :

Le pentesteur a effectué une reconnaissance du réseau MegaCoprOne. Il a découvert que le


serveur DNS était mal configuré et qu’il autorisait un transfert de la zone DNS. Ceci a permis
de fournir la liste des hôtes spécifiques utilisées. L’étude de cette liste a également permis
de trouver une interface administrateur du serveur Web protégée par un mot de passe.
Après avoir créé une liste de mots reprenant les termes du site Internet de MegaCorp One, il
a été possible de casser le mot de passe par brute-force et d’obtenir l’accès sur cette
interface. L’examen de l’interface administrateur a révélé qu’elle était vulnérable à une
injection de code à distance, ce qui a été utilisé pour obtenir l’accès à l’interface via des
couches plus basses du système.
Cette attaque initiale a donnée un accès administrateur à cause d’un défaut de mise à jour
du serveur Web. Après un examen plus approfondi, il a été découvert que le serveur Web
compromis utilisait une application Java pour les utilisateurs administrateurs. Après ajout
d’un plug-in malveillant à cette application, il a été possible d’obtenir l’accès aux postes de
travail utilisés par les administrateurs de MegaCorp One.

En utilisant le serveur Web compromis ainsi que les mots de passe récupérés, il a été
possible de cibler des ressources internes auparavant inaccessibles. Cela a ensuite permis
d’accéder à de nombreuses fenêtres internes d'hôtes avec l’accès administrateur local, à la
compromission complète d'un serveur Citrix, et au contrôle administrateur complet de
l'infrastructure Windows Active Directory. Les contrôles de trafic réseau existants ont été
contournés grâce à l'encapsulation de trafic malveillant dans des protocoles autorisés.

Je vous invite à lire l'intégralité du rapport de ce test d'intrusion ici (en anglais).

La cybersécurité est un métier dont l'environnement est en anglais et donc les


documentations sont souvent également en anglais. Cette langue est indispensable pour
pouvoir travailler convenablement dans ce domaine.
En résumé
• Dans un rapport de test d'intrusion, il doit apparaître la liste
des vulnérabilités trouvées, la façon dont on peut les exploiter, et une solution de
correction.
• Une vulnérabilité peut-être classée selon deux axes : la sévérité et
la complexité. Ceci permet ensuite de définir la priorité de la correction.
• Après la correction des vulnérabilités, un re-test ou un deuxième test d'intrusion
complet est conseillé pour s'assurer de la réussite de la correction.
• Le test d’intrusion peut parfois être nécessaire à l’obtention de certaines normes
comme PCI DSS ou ISO27001.b

Rédigez votre rapport de test d’intrusion


En tant que pentesteur, vous devez avoir des compétences très techniques, mais également
savoir rédiger et mettre en forme le résultat de vos recherches. Le rapport de test
d'intrusion est un élément essentiel pour le client (cible du pentest) car ce sera un guide
pour la correction des vulnérabilités trouvées.

Cette partie ne doit pas être négligée, car même le meilleur des travaux est inutile s’il n'est
pas restitué. Nous allons donc voir dans cette partie comment effectuer la restitution.

Le destinataire du rapport
Pour bien rédiger un document, il faut toujours avoir en tête le ou les destinataires. Ceux-ci
peuvent être mentionnés dans les premières pages du document.

De plus, il faut que le contenu soit en adéquation avec le niveau technique et


les compétences du destinataire. Dans le cas du rapport de test d'intrusion, il peut s'adresser
aux personnes suivantes de l’entreprise :

• Le DSI, directeur des systèmes d'information


• Le responsable système et réseau
• L'équipe d'informaticiens en charge de l'administration du système d’information
• Les développeurs d'une application interne à l'entreprise
• L'entreprise prestataire de service s'occupant de la maintenance du système
informatique
• Le gérant ou le chef d'entreprise pour les entreprises de plus petite taille
Dans certains de ses rôles, il n'est pas nécessaire d'avoir de compétences en sécurité
informatique. Le rapport doit donc être rédigé de telle façon qu'une personne non
informaticienne puisse le lire, tout en comportant des éléments techniques pointus.
C'est ce que nous allons voir dans le chapitre suivant.

Présentation et structure
Chaque entreprise en cybersécurité présente son rapport d'une façon différente. Cela dit, il
est souvent formaté de la manière suivante :

• Format : Format PDF non modifiable, de quelques dizaines de pages.


• Langue : En français ou anglais en général.
• Confidentiel : Le rapport contenant des informations permettant de s'introduire dans
l'entreprise, il est impératif de signaler que c’est comme un document confidentiel. Il
est possible par exemple d’insérer un filigrane sur chaque page.
Il contient également toujours tous ces éléments dans l’ordre suivant :

• Le sommaire : comme dans tout document assez long, il est conseillé d'avoir un
sommaire pour une meilleure appréhension de la structure et faciliter sa lecture.
• Le contexte et le périmètre : il est bon de rappeler la raison pour laquelle le test a
été effectué, et le périmètre du test d'intrusion, par exemple les adresses IP qui ont
été testées.
• Les conditions du test : il est bien expliqué qu'il existe plusieurs types de tests
d'intrusion (boîte noire, boîte grise, boîte blanche). Il est important de préciser lequel
de ces tests a été effectué.
• La méthodologie : il existe plein de méthodologie de test d'intrusion (OWASP, PCI,
Penetration Testing Execution Standard, OSSTMM, etc…). Il peut être intéressant
pour les lecteurs de savoir quelle méthodologie a été choisie. À défaut, il faut
indiquer le processus de test qui a été suivi.
• Les axes d’évaluation : souvent les 3 axes d'évaluation utilisés pour qualifier les
vulnérabilités ne sont pas forcément intuitifs. Il est bon de les expliquer pour que le
lecteur comprenne plus facilement.
• Les résultats du test : La plupart du temps sous forme de tableau, il est présenté
comme un listing des vulnérabilités trouvées, avec les différentes informations les
qualifiantes.
• Une synthèse : pour les lecteurs qui veulent juste avoir un aperçu de la sécurité sans
lire l'intégralité du rapport, il est intéressant de mettre une partie de synthèse
récapitulant le nombre de vulnérabilités trouvées en fonction :
o de la sévérité
o du niveau de priorité de correction
o de la difficulté de correction
Il peut être intéressant de résumer le nombre de failles trouvées dans des petits tableaux de
synthèse par sévérité, priorité, et difficulté de correction. Par exemple, noter qu’il existe 2
failles de sévérité intolérables, 5 modérées et 3 acceptables.

Pour rappel, l’exemple de test d'intrusion vu dans le chapitre précédent est ici.

Cette fois-ci, je vous invite à consulter surtout la mise en forme. Regardez bien : Page 31, 32
et 33, vous retrouverez le « rating » de chaque vulnérabilité écrit en rouge. C'est la sévérité
de la vulnérabilité que le pentesteur a déterminée.

Voilà également un deuxième exemple. Dans ce rapport, regardez bien les choses suivantes :
page 34 le pentesteur de détail l'échelle qui l'utilise pour classifier le niveau de risque ; page
35 et un résumé de toutes les vulnérabilités avec leur niveau de risque ; et enfin page 37
présenter sous une autre forme, un tableau récapitulatif des vulnérabilités avec les adresses
IP et de leur criticité.

Voilà pour l’essentiel sur la rédaction du rapport de test d’intrusion. Voyons maintenant
comment le présenter au client.

En résumé
• Le rapport de test d'intrusion est un document technique qui doit également pouvoir
être lu par des responsables sans compétences informatiques poussées.
• Le rapport de test d'intrusion est un document confidentiel, car il contient des
informations sensibles qui peuvent permettre à une personne malveillante de
s'introduire dans le système informatique.
• Il n’y a pas de structure unique de rapport d’intrusion, mais certains éléments sont
indispensables.

Présentez votre rapport de test d’intrusion


Après avoir fait la partie technique et la restitution sous forme de rapport, il est conseillé
d'aller présenter le fruit de votre travail à votre client.

Cette partie du travail ne doit pas être sous-estimée. En effet, le client prend alors mesure
de votre travail et doit s'en imprégner.
Nous allons donc voir comment présenter le résultat de votre travail et transmettre les
connaissances à ceux qui vont prendre le relais.

La réunion de restitution
La réunion de restitution est le moment où vous présentez tout le travail qui a été réalisé.
Cette réunion se déroule en fin de prestation.

Quels sont les enjeux de cette restitution ?

Le premier enjeu est que le client réalise et comprenne le travail technique qui a été réalisé.
Vous pouvez donc parcourir le rapport ensemble, expliquer la méthodologie utilisée, et
répondre aux questions.

Cette réunion vous offre aussi l’opportunité de remettre le rapport de la main à la main de
manière confidentielle. Si vous voulez l'envoyer au préalable, il vous faudra trouver
une solution sécurisée pour le transmettre.

La transmission de fichiers sensibles par une voie non maîtrisée comme Internet est risquée.
Il faut utiliser un protocole et un niveau de chiffrement adéquat. Par exemple, un mot de
passe dans un fichier Word n'est pas très sécurisé car cassable assez facilement. Un mot de
passe sur un fichier zip n'est pas non plus très sécurisé. Une solution pourrait être le
chiffrage d’un email avec l'outil OpenPGP.
Enfin, il est primordial que le client s’approprie les éléments nécessitant un suivi ou du
travail complémentaire, comme notamment les mesures correctives à prendre pour
sécuriser l'entreprise. Il est très important que ce dernier point soit transmis correctement
pour qu’un plan d'action efficace et adéquat puisse être mis en place.

Quelles sont les modalités de cette réunion ?

L’organisation de cette réunion peut être de votre initiative ou de celle du client. Accordez-
vous sur une date, un lieu, et une heure. Essayez également d’arrêter une durée
d’intervention et de vous y conformer (souvent entre une et deux heures).

Il est nécessaire que les destinataires du rapport soient invités et de préférence présents.
Selon les personnes conviées, l’ordre du jour de la réunion pourra être adapté. Vous pourrez
présenter le rapport à un public large, mais également intervenir pour briefer des équipes
techniques sur la mise en œuvre des actions correctives.

Enfin, faites attention à la forme de votre présentation. Ceci est tout aussi important que le
fond. La qualité de votre présentation en dépend, et plus globalement de votre prestation et
votre appréciation par le client. Vous pouvez par exemple faire un PowerPoint ou
simplement vous appuyer sur votre rapport. Veillez à faire un exposé clair,
structuré, et dynamique.

Au passage, voici deux cours qui pourraient vous aider là-dessus :


• Améliorez l'impact de vos présentations
• Prenez la parole en public
Le transfert de compétences et plan d’action
De manière générale, les tests d'intrusion incluent un temps de prestation pour le transfert
de compétences. En effet, la prestation n’inclut pas la correction des vulnérabilités. Il est
donc important que l'entreprise cible et les personnes en charge de ces corrections
comprennent et maîtrisent la façon dont elles vont pouvoir travailler le listing des
corrections proposées, et mettre en place le plan d'action.

Suivant le contrat signé, la prestation pourra inclure ou non l'assistance à la correction. Ceci
permet à l'informaticien de l'entreprise de contacter le pentesteur si besoin.
Voici un exemple de faille et de solution corrective proposée : imaginons que le test
d'intrusion a révélé qu'il était possible de s'introduire dans le contrôleur de domaine par un
utilisateur administrateur du domaine avec un mot de passe faible. La solution est assez
simple : le pentesteur conseille de désactiver ce compte s’il n'est pas utilisé, sinon de
complexifier son mot de passe.

Prenons un deuxième exemple. Si le pentesteur a découvert une machine fonctionnant sous


Windows XP, ce système n'étant plus supporté par Microsoft, il possède des vulnérabilités
non corrigées. Dans ce cas, la recommandation sera de remplacer cette machine.
L’entreprise cible peut alors fait appel au pentesteur ou à son prestataire informatique pour
résoudre ce problème.

Voilà la fin du chapitre qui permet de comprendre l’importance de la restitution de votre


travail. Vous avez vu comment lister des mesures correctives, rédiger votre rapport, ou
encore transmettre votre travail.

En résumé
• Le rapport de test d’intrusion est un document confidentiel.
• Ce rapport et la réunion de restitution sont deux rendus très importants de la
prestation de test d'intrusion.
• Les prestations de test d'intrusion n'incluent pas la correction des vulnérabilités
trouvées.
• Cependant, elles peuvent inclure l'élaboration d'un plan d’action, voir l’assistance à
leur mise en place.
• Le pentesteur doit veiller à bien transmettre tous les éléments importants à la
personne qui va s'occuper de la correction des vulnérabilités trouvées.
Pour conclure ce cours
C’est ainsi que s’achève ce cours. Vous êtes maintenant en capacité de conduire un test
d’intrusion, élément clé de la protection d’un système d’information.

Une protection optimale passe également par d’autres types de tests, comme l’audit de
sécurité informatique.

Il est aussi important de comprendre que les pirates et les attaques évoluent sans cesse, de
même que l’informatique et les technologies. Les outils et les techniques de protection
suivent la même évolution. Vous devez donc vous aussi toujours apprendre, vous remettre
en question, vous tenir informé, bref faire de la veille active pour rester dans la course !

Pour aller plus loin


• Découvrir les techniques les plus avancées de hacking du moment mises en œuvre
par la NSA sur cette vidéo.
• Panorama de tous les objets piratables avec quelques exemples : TedTalk.
• Les risques derrière la cybersécurité les IoT (Internet of Things) et la nécessité de les
sécuriser sur cette vidéo.

Rédigez votre rapport de test d’intrusion


Compétences évaluées

• Rédiger et présenter un rapport de test d'intrusion


• Proposer des solutions correctives

Description

Vous avez vu comment rédiger un rapport d'intrusion et les étapes qui suivent la réalisation
d'un test de façon générale. Testez vos connaissances en répondant à quelques questions !

• Question 1

Que doit contenir un rapport de test d'intrusion ?

La liste des vulnérabilités trouvées pendant le test d'intrusion par le pentesteur.

La liste exhaustive des outils utilisés par le pentesteur pendant son test d'intrusion.

Toutes les techniques et méthodes employées par le pentesteur pendant son test.

• Question 2

Quels sont les axes d'évaluation des risques qui permettent de qualifier les vulnérabilités
?

Attention, plusieurs réponses sont possibles.

La sévérité.
o

Le niveau de priorité pour effectuer la correction.

L’intention de l’entreprise cible de corriger ou pas certaines vulnérabilités

Les moyens techniques de l’entreprise pour corriger les vulnérabilités

• Question 3

Qu'est-ce que le standard CVSS ?

C’est un référentiel qui donne une méthodologie à suivre pour effectuer un test d'intrusion.

C’est un guide pour évaluer la sécurité de son système informatique.

C’est un système d'évaluation de la criticité des vulnérabilités selon des critères objectifs et
mesurables.

• Question 4

En fonction de quels critères est calculée la priorisation de la correction d'une vulnérabilité


?

Attention, plusieurs réponses sont possibles.

L'ancienneté de la vulnérabilité.

Le niveau de gravité des conséquences de l'utilisation de cette vulnérabilité.

La probabilité que la vulnérabilité soit exploitée.

• Question 5
Quand une vulnérabilité est rendue publique, elle est référencée dans des bases de
données officielles qui sont disponibles sur Internet

Vrai

Faux

• Question 6

Sur le site https://www.cvedetails.com, il y a le détail de chaque vulnérabilité avec son


score pour qualifier la sévérité.

Vrai

Faux

• Question 7

La norme PCI DSS exige de faire un test d'intrusion externe et interne.

Vrai

Faux

• Question 8

Il est conseillé de re-tester pour vérifier si les vulnérabilités sont toujours présentes après
leur correction.

Vrai

Faux
• Question 9

Pour avoir un niveau de sécurité optimal, il est conseillé de faire un test d'intrusion
régulièrement ? Est-ce vrai ou faux ?

Vrai

Faux

• Question 10

Le rapport de test d'intrusion est un document officiel qui doit être rendu public.

Vrai

Faux

• Question 11

Quelles sont les personnes qui sont susceptibles de lire un rapport de test d'intrusion ?

Uniquement le chef d'entreprise.

Les responsables de l'entreprise et les personnes en charge de la sécurisation du système


informatique.

Tous les collaborateurs de l'entreprise car ils ont le droit de savoir s’ils travaillent dans un
environnement sécurisé.

• Question 12

Une réunion de restitution à la fin du test d'intrusion n'est jamais nécessaire car tout est
écrit dans le rapport.
o

Vrai

Faux

• Question 13

Vous réalisez un test d'intrusion chez un hébergeur de site Web. Dans votre rapport, Vous
établissez que l'hébergeur possède une infrastructure hétérogène qui contient certains
serveurs tournant sur Windows Server 2003. Pendant le test, vous avez trouvé des
vulnérabilités sur ces quelques serveurs. Quelle recommandation allez-vous faire pour la
correction des vulnérabilités trouvées sur ces serveurs tournant sur Windows 2003 ?

Installer les mises à jour Windows.

Installer un patch spécial fourni par Microsoft, la KB2953522 pour sécuriser les serveurs.

Recommander de changer les systèmes d'exploitation pour des versions plus récentes que
Windows Server 2003.

• Question 14

Vous réalisez un test d'intrusion dans une petite PME. Vous réalisez que les mots de passe
par défaut (utilisateur et administrateur) n'ont pas été changés sur leurs applications
métiers. Qu’allez-vous recommander dans votre rapport ?

Rien, car il y a un mot de passe donc c’est l’essentiel.

Réinstaller l'application métier car cela a vraisemblablement été mal fait.

Changer les mots de passe.

Vous devez encore répondre à 14 questions.

Vous aimerez peut-être aussi