0% ont trouvé ce document utile (0 vote)
101 vues103 pages

Partie 2

Transféré par

Draganov qp
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
101 vues103 pages

Partie 2

Transféré par

Draganov qp
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

PARTIE 2

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


d’information

Dans ce module, vous allez :

• Collecter les informations de manière passive


• Identifier les vulnérabilités des services utilisés

17 heures
CHAPITRE 1
Collecter les informations de manière
passive

Ce que vous allez apprendre dans ce chapitre :

• Collecter les informations publiques sur la cible


• Utiliser les outils d’automation OSINT

5 heures
CHAPITRE 1
Collecter les informations de manière
passive

1. Moteurs de recherche
2. Réseaux sociaux pour la reconnaissance
3. Outils d’automatisation OSINT
4. Frameworks de collecte d’informations
01 – Collecter les informations de manière
passive
Moteurs de recherche

La reconnaissance passive
• La reconnaissance passive (collecte passive d'informations) ou encore OSINT (Open Source Intelligence) est un processus de collecte d'informations disponibles
publiquement concernant une cible, sans aucune interaction directe avec elle.
• Nous pouvons définir la collecte passive d'informations selon deux versions différentes :
✓ La définition la plus stricte, stipule que nous n’interagissons jamais directement avec la cible. Par exemple, en utilisant des tierces parties pour recueillir les
informations. Cette approche peut permettre de cacher nos réelles actions et intentions à la cible. Cependant elle peut être limitée en terme de résultats
collectés.
✓ La définition la plus flexible, stipule qu’on peut interagir avec la cible, dans la peau d’un utilisateur normal. Par exemple, pour un site internet comme cible, on
peut effectuer une action simple sur ledit site sans pour autant tester les vulnérabilités pendant cette action.
• Le but de la reconnaissance passive est de recueillir des informations qui clarifient et/ou élargissent la surface d'attaque sur une cible donnée.
• Il existe beaucoup de ressources et d'outils disponibles pour la collecte d'informations :
✓ Les moteurs de recherche
✓ Les réseaux sociaux
✓ Les sites spécialisés dans la collecte d’informations publiques sur les organisations
PARTIE 2

✓ Les outils OSINT


✓ Les méthodes d’ingénierie sociale

Copyright - Tout droit réservé - OFPPT 41


01 – Collecter les informations de manière
passive
Moteurs de recherche

Les moteurs de recherche


• Les pentesters utilisent les moteurs de recherche pour collecter des informations sur l’entreprise cible, comme les technologies utilisées par l’entreprise, des détails sur
les employés, les pages d’authentification, des portails intranet, qui peuvent aider les pentesters à lancer des compagnes d’ingénierie sociale ou des attaques ciblées.
• Les moteurs de recherche les plus utilisés :
PARTIE 2

• Les résultats des moteurs de recherche peuvent varier de plusieurs manières, en fonction de la date à laquelle le moteur a exploré le contenu pour la dernière fois et de
l'algorithme utilisé par le moteur pour déterminer les pages pertinentes.

Copyright - Tout droit réservé - OFPPT 42


01 – Collecter les informations de manière
passive
Moteurs de recherche

Google
• Le terme « Google Hacking » a été popularisé par Johnny Long en 2001. A travers plusieurs talks142 et un livre extrêmement populaire (Google Hacking for Penetration
Testers143), il a expliqué comment la recherche des moteurs comme Google pourraient être utilisés pour découvrir des informations critiques, des vulnérabilités et des
sites Internet.
• Au cœur de cette technique se trouvent des chaînes de recherches intelligentes et des opérateurs qui permettent raffinement des requêtes de recherche, dont la
plupart fonctionnent avec une variété de moteurs de recherche. Le processus est itératif, en commençant par une recherche large, qui est affinée avec des opérateurs
pour filtrer les éléments non pertinents ou des résultats inintéressants.
• Google prend en charge plusieurs opérateurs avancés qui aident à modifier la recherche :
✓ [cache :] Affiche les pages Web stockées dans le cache de Google
✓ [lien :] Répertorie les pages Web qui ont des liens vers la page Web spécifiée
✓ [lié :] Répertorie les pages Web similaires à une page Web spécifiée
✓ [info :] Présente des informations que Google possède sur une page Web particulière
✓ [site :] Limite les résultats aux sites Web du domaine donné
✓ [allintitile :] Limite les résultats aux sites Web contenant tous les mots-clés de recherche dans le titre
PARTIE 2

✓ [intitle:] Limite les résultats aux documents contenant le mot-clé de recherche dans le titre
✓ [allinurl :] Limite les résultats à ceux qui contiennent tous les mots-clés de recherche dans l'URL
✓ [inurl :] Limite les résultats aux documents contenant le mot-clé de recherche dans l'URL

Copyright - Tout droit réservé - OFPPT 43


01 – Collecter les informations de manière
passive
Moteurs de recherche

Exemple d’utilisation d’opérateurs google


• La syntaxe suivante d’opérateurs google [intitle:internet inurl:intranet +intext:”human ressources”] permet de trouver des informations sensibles sur une entreprise et
ses employés. Les pentesters peuvent utiliser ces informations pour lancer une campagne d’ingénierie sociale.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 44


01 – Collecter les informations de manière
passive
Moteurs de recherche

Google
• Les bases de données de hacking Google : La Google Hacking Database (GHDB) contient une multitude de recherches créatives qui démontrent la puissance de la
recherche créative avec des opérateurs combinés :
✓ Google Hacking Database (GHDB): [Link]
✓ Google Dorks: [Link]
PARTIE 2

Copyright - Tout droit réservé - OFPPT 45


01 – Collecter les informations de manière
passive
Moteurs de recherche

Google
• Collecte d'informations à l'aide de la recherche avancée de Google :
✓ Utilise l'option de recherche avancée de Google pour trouver des sites susceptibles de renvoyer au site Web de l'entreprise cible
✓ Cela peut extraire des informations telles que des partenaires, des fournisseurs, des clients et d'autres affiliations pour le site Web cible
✓ Avec l'option de recherche avancée de Google, vous pouvez rechercher sur le Web de manière plus précise.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 46


01 – Collecter les informations de manière
passive
Moteurs de recherche

Les métamoteurs de recherche


• Un métamoteur de recherche, également connu sous le nom d'agrégateur de recherche, est un portail Web qui utilise un algorithme propriétaire pour agréger les
résultats de recherche Web pour une expression ou un terme provenant d'autres moteurs de recherche. Il récupère simplement les données d'autres moteurs de
recherche Web. Il permet également à l'utilisateur d'entrer une seule requête et d'obtenir les résultats de plusieurs sources, obtenant rapidement les meilleures
réponses à partir d'un large éventail d'informations.
• En utilisant des métamoteurs comme Startpage, MetaGer et [Link], les pentesters peuvent envoyer des requêtes vers plusieurs moteurs de recherche en même
temps et récupérer des informations détaillées des sites de commerce en ligne (Amazon, ebay, etc.), des images, vidéos, blogs de différentes sources.
• Les métamoteurs permettent aussi de cacher l’identité des pentesters en cachant leurs IPs.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 47


01 – Collecter les informations de manière
passive
Moteurs de recherche

Shodan : moteur de recherche IOT


• Shodan est un moteur de recherche qui explore les appareils connectés à Internet, y compris, mais sans s'y limiter au World Wide Web. Cela inclut les serveurs qui
exécutent des sites Web, mais également des appareils tels que des routeurs et appareils IoT(internet of things).
• En d'autres termes, Google et d'autres moteurs de recherche recherchent le contenu du serveur Web, tandis que Shodan recherche les appareils connectés à Internet,
interagit avec eux et affiche des informations à leur sujet.
• Avant d'utiliser Shodan, nous devons créer un compte gratuit, qui fournit un nombre limité de requêtes.
• Commençons par utiliser Shodan pour rechercher hostname:[Link] :

• Dans ce cas, Shodan répertorie les adresses IP, les services et les
informations sur la bannière. Tout cela est recueilli passivement
sans interagir avec le site Web du client.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 48


01 – Collecter les informations de manière
passive
Moteurs de recherche

Shodan : moteur de recherche IOT


Ces informations nous donnent un aperçu de l'empreinte Internet de notre cible. Par exemple, il y a huit serveurs exécutant ftp (21) et nous pouvons explorer cela pour
affiner nos résultats en cliquant sur sous top ports.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 49


01 – Collecter les informations de manière
passive
Moteurs de recherche

NetCraft : moteur de recherche des sites web


• Netcraft est une société de services Internet basée en Angleterre qui propose un portail Web gratuit qui remplit diverses fonctions de collecte d'informations.
• L'utilisation de services offerts par Netcraft est considérée comme une technique passive puisque nous n'interagissons jamais directement avec notre cible.
• Passons en revue certaines des capacités de Netcraft. Par exemple, nous pouvons utiliser la page de recherche DNS de Netcraft ([Link] pour
recueillir des informations sur le domaine [Link] :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 50


01 – Collecter les informations de manière
passive
Moteurs de recherche

NetCraft : moteur de recherche des sites web


• Pour chaque serveur trouvé, nous pouvons afficher un "rapport de site" qui fournit des informations supplémentaires et un historique sur le serveur en cliquant sur
l'icône de fichier à côté de chaque URL de site. Le début du rapport couvre les informations d'enregistrement. Cependant, si nous faisons défiler vers le bas, nous
découvrons diverses entrées « technologie de site » :
PARTIE 2

Cette liste de sous-domaines et de technologies s'avérera utile lorsque nous passerons à la collecte active des informations et l'exploitation.

Copyright - Tout droit réservé - OFPPT 51


CHAPITRE 1
Collecter les informations de manière
passive

1. Moteurs de recherche
2. Réseaux sociaux pour la reconnaissance
3. Outils d’automatisation OSINT
4. Frameworks de collecte d’informations
01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Les réseaux sociaux


• Rechercher quelqu’un sur un réseau social est facile. Les réseaux sociaux sont des services en ligne, des plateformes ou des sites qui ont pour objectif de connecter les
gens entre eux et de permettre à chacun de créer un réseau de relations. Ces réseaux sociaux contiennent des informations que les utilisateurs fournissent lors de
l’inscription et/ou durant leurs activités. Ces formations permettent directement ou indirectement de connecter les gens sur la base de leurs intérêts communs, leurs
localisations ou éducations etc.
• Les réseaux sociaux comme Linkedin, Instagram, Twitter, Facebook, Tiktok, snapshat peuvent vous permettent de trouver des gens par nom, mot clé, entreprise, école,
amis et entourage. En cherchant des gens sur ces sites, en plus des données personnelles qui peuvent être récupérées, des informations professionnelles peuvent aussi
être trouvées, comme l’entreprise, l’adresse postale, le numéro de téléphone, l’adresse email, des photos et vidéos etc.
• Les réseaux sociaux comme twitter sont utilisés pour partager des conseils, des informations, des opinions ou des rumeurs. Sur la base de ces partages, les pentesters
peuvent avoir une bonne compréhension des cibles pour lancer leurs attaques.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 53


01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Exemple : LinkedIn
• LinkedIn est un excellent réseau social professionnel. Plusieurs de ses utilisateurs sont trop ouverts sur leur expérience, révélant toutes les technologies et processus
utilisés en interne.
• En recherchant les employés de l'entreprise sur le site, nous pouvons remplir une liste de cibles pour le phishing, trouver les technologies utilisées dans l'entreprise et
énumérer les rôles que nous pourrions occuper dans les attaques de phishing.
• LinkedIn est une mine d'or OSINT, en particulier pour les petites entreprises avec une empreinte en ligne plus petite.
Informations sur l'emploi :
• Étant donné que les gens utilisent souvent LinkedIn comme site d'emploi, les pages de l'entreprise répertorient les informations pertinentes pour les demandeurs
d'emploi, tel que le nombre d'employés connu et s'il augmente ou diminue.
• L'ancienneté moyenne d'un employé peut nous aider à interagir avec les cibles en cas d'hameçonnage et de phishing.
• Nous pouvons estimer la probabilité qu'un employé connaisse un employé d'un autre site, en particulier dans les grandes entreprises de plus de 300 000 employés.
• De même, les données de LinkedIn sur la répartition des employés, la croissance et les nouvelles embauches peuvent nous donner un aperçu de la probabilité que nous
rencontrions un nouvel employé si, par exemple, nous appelions les bureaux.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 54


01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Exemple : LinkedIn
Informations générales sur la société
• Jetons un coup d'œil à la page commerciale LinkedIn de Walmart.
• En haut de la page, nous pouvons voir le nombre d'abonnés de Walmart,
le nombre de connexions de ce compte qui travaillent chez Walmart,
un symbole boursier et un aperçu de la compagnie.
• La section À propos de nous, fournit également des informations
générales sur Walmart.
• Plus bas, la page répertorie le site Web et les adresses de tous les
principaux sites Walmart, des informations sur la date et le lieu de création
de l'entreprise, l'emplacement du siège social, la taille de l'entreprise et
ses spécialités.
PARTIE 2

* Certaines informations ne sont visibles qu’avec un compte linkedin Premium.

Copyright - Tout droit réservé - OFPPT 55


01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Exemple : LinkedIn
Employés de la Société
• Une page distincte répertorie les utilisateurs de LinkedIn qui sont des employés de l'entreprise. Utilisez-le pour voir le rôle joué par chaque personne. Quelqu'un avec le
titre d'analyste d'intrusion, un rôle de cybersécurité suggère que l'entreprise surveille activement ses sites Web et ses réseaux pour détecter les comportements
malveillants. Nous pouvons évaluer la sécurité de l'entreprise via son nombre d'employés chargés de la sécurité de l'information.
• Un moyen simple d'y parvenir consiste à rechercher dans les profils des employés
les acronymes de certification. La certification de CISSP, GPEN, OSCP, CEH et Security+
sont de bons points de départ. Les bons titres de poste à rechercher incluent les
termes : sécurité de l'information, cybersécurité, intrusion et CISO.
• Ces profils d'employés nous renseignent également sur les technologies utilisées par
l'entreprise. En les recherchant, nous pouvons détecter la présence de solutions
de gestion des événements et des incidents de sécurité (SEIM), de protections contre
les logiciels malveillants, de filtrage des e-mails ou de VPN. De plus, ils nous aident à
créer une liste de diffusion pour davantage de profilage et de phishing.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 56


01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Exemple : LinkedIn
Job Boards et sites carrières
• Les employés, les recruteurs et les fournisseurs de recrutement externalisés peuvent créer des liens vers des pages de carrière ou des sites d'emploi sur leurs réseaux
sociaux. Les pentesters peuvent récupérer ces informations et les transformer en armes.
• Selon la façon dont l'offre d'emploi est rédigée, vous pourriez trouver des informations clés. Par exemple, vous pouvez voir que le candidat doit avoir une expérience
Oracle E-Business Suite (EBS) version 12.2 Cela indique que l’entreprise utilise ou utilisera cette version d’Oracle.
• La façon dont cette annonce de carrière est rédigée pourrait amener un attaquant à croire
que l’entreprise continue également à utiliser une version antérieure, par exemple [Link],
dont les vulnérabilités remontent à 2006.
• Tout d'abord, nous pouvons rechercher des vulnérabilités et d'expositions communes (CVE)
liées à ce logiciel particulier, puis consulter des sites comme [Link]
pour trouver des codes d'exploitation.
• Alternativement, nous pourrions utiliser ces informations dans une compagne de phishing.
• Enfin, nous pourrions simplement tenter d'utiliser le brute force sur toutes les instances
publiques du logiciel en question, qui seraient les plus bruyantes et en dehors du champ
PARTIE 2

d'application de l'ingénierie sociale ou de l'OSINT.

Copyright - Tout droit réservé - OFPPT 57


01 – Collecter les informations de manière
passive
Réseaux sociaux pour la reconnaissance

Exemple : Facebook
• Facebook peut être une mine d'orselon à qui vous demandez et ce que vous recherchez. C'est parce que les données sont abondantes mais peu vérifiées, bien que
parfois vérifiées. Beaucoup de gens ont tendance à sur-partager sur cette plateforme.
• Lorsque vous ciblez une entreprise, l'un des moyens les plus sournois d'amener un employé à vous parler est de se faire passer pour un client. Vous pouvez trouver une
myriade de vrais clients en consultant l'onglet Communauté de Facebook et en lisant les avis.
• l'onglet Communauté de Walmart affiche diverses publications sur la page par le grand public.
Ceux-ci doivent être pris comme un grain de sel et dans leur contexte.
Certains de ces messages sont des préoccupations légitimes,
mais d'autres sont des théories du complot, réclamations non fondées,
tentatives de propagation virale et rapports de pages fausses ou usurpant l'identité.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 58


CHAPITRE 1
Collecter les informations de manière
passive

1. Moteurs de recherche
2. Réseaux sociaux pour la reconnaissance
3. Outils d’automatisation OSINT
4. Frameworks de collecte d’informations
01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
• La plupart des outils OSINT sont préinstallés sur dans la distribution Kali Linux. Avant de présenter quelques outils OSINT, nous introduisons Kali linux qui sera la
distribution utilisée dans les prochaines sections aussi.
• Kali Linux est une distribution Linux open source basée sur Debian destinée aux tests d’intrusion avancés et à l'audit de sécurité. Kali Linux contient plusieurs centaines
d'outils destinés à diverses tâches de sécurité de l'information, tels que les tests d'intrusion, la recherche en sécurité, l’analyse forensique et le reverse engineering. Kali
Linux est une solution multiplateforme, accessible et disponible gratuitement pour les professionnels de la sécurité de l'information et les amateurs.
• Kali Linux est spécifiquement conçu pour répondre aux exigences des tests d'intrusion professionnels et des audits de sécurité. Pour y parvenir, plusieurs modifications
fondamentales ont été implémentées dans Kali Linux qui reflètent ces besoins :
✓ Services réseau désactivés par défaut : Kali Linux contient des hooks systemd qui désactivent les services réseau par défaut. Ces hooks nous permettent
d'installer divers services sur Kali Linux, tout en garantissant que notre distribution reste sécurisée par défaut, quels que soient les packages installés. Des
services supplémentaires tels que Bluetooth sont également bloqués par défaut.
✓ Noyau Linux personnalisé : Kali Linux utilise un noyau en amont, corrigé pour l'injection sans fil.
✓ Un ensemble minimal et fiable de référentiels : compte tenu des buts et objectifs de Kali Linux, le maintien de l'intégrité du système dans son ensemble est
absolument essentiel. Avec cet objectif à l'esprit, l'ensemble des sources logicielles en amont utilisées par Kali est réduit au strict minimum. De nombreux
nouveaux utilisateurs de Kali sont tentés d'ajouter des référentiels supplémentaires à leur [Link], mais cela risque très sérieusement de casser votre
PARTIE 2

installation Kali Linux.

Copyright - Tout droit réservé - OFPPT 60


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
• Pour commencer, téléchargez la machine virtuelle (VM) Kali Linux 64 bits (amd64) officielle et le logiciel VMware que vous choisissez d'utiliser.
• VMware propose un essai gratuit pour VMware WorkStation Pro et VMware Fusion pour Mac. L'avantage d'utiliser l'une de ces versions commerciales est la possibilité
de prendre des instantanés auxquels vous pouvez revenir si vous avez besoin de réinitialiser votre machine virtuelle sur une table rase. VMware propose également une
version gratuite de son logiciel, VMware WorkStation Player. Cependant, la fonction d'instantané n'est pas disponible dans la version gratuite.
• Vous pouvez trouver la dernière image de la machine virtuelle Kali Linux ainsi que des instructions à jour pour vérifier l'archive téléchargée sur le site Web :
[Link]
• Pour utiliser la machine virtuelle Kali Linux, nous allons d'abord extraire l'archive et ouvrir le fichier .vmx avec VMware. Si l'option est présentée, choisissez ’’I copied
it ’’ pour demander à la machine virtuelle de générer une nouvelle adresse MAC virtuelle et d'éviter un conflit potentiel. Les informations d’authentification par défaut
pour la machine virtuelle sont : kali/kali
• La machine virtuelle Kali Linux est configurée avec deux utilisateurs par défaut, "root" et "kali". Nous utiliserons le compte utilisateur kali. Bien qu'il puisse être tentant
de se connecter en tant qu'utilisateur root, cela n'est pas recommandé. L'utilisateur root a un accès illimité et une commande pourrait endommager notre système. Pire
encore, si un pirate arrive à exploiter un processus s'exécutant en tant que root, il aura le contrôle total de notre machine.
• De nombreuses commandes nécessiteront des privilèges élevés pour s'exécuter. Heureusement, la commande sudo peut résoudre ce problème. Nous entrons sudo
suivi de la commande que nous souhaitons exécuter et fournissons notre mot de passe (kali) lorsque vous y êtes invité.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 61


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
• Le menu Kali Linux contient de nombreux outils présentés dans la distribution. Cette structure permet de clarifier le rôle principal de chaque outil ainsi que le contexte
de son utilisation. Il faut prendre le temps de naviguer dans les menus de Kali Linux pour se familiariser avec les outils disponibles et leurs catégories.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 62


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
• Kali Linux est une distribution Linux spécialisée destinée aux professionnels de la sécurité. En tant que tel, il contient plusieurs fonctionnalités non standard. L'installation
par défaut de Kali est livrée avec plusieurs services préinstallés, tels que SSH, HTTP, MySQL, etc. En conséquence, ces services se chargent au boot, ce qui aurait pour
conséquence que Kali exposerait plusieurs ports ouverts par défaut, ce que nous voulons éviter pour des raisons de sécurité.
• Kali résout ce problème en mettant à jour ses paramètres pour empêcher les services réseau d’être activés au démarrage. Kali contient également un mécanisme
permettant à la fois de mettre sur whitelist et de mettre sur blacklist divers services.
Le service ssh :
Le service SSH est basé sur TCP et écoute par défaut sur le port 22. Pour démarrer le service SSH dans Kali, nous exécutons systemctl avec l'option start suivie du nom du
service (ssh dans cet exemple). Lorsque la commande est exécutée, elle ne renvoie aucune sortie, mais nous pouvons vérifier que le service SSH est en cours d'exécution et
en écoute sur le port TCP 22 en utilisant la commande ss et en « pipant » la sortie vers grep pour rechercher la sortie pour "sshd":
PARTIE 2

Si nous voulons que le service SSH s’active automatiquement au démarrage (comme le préfèrent de nombreux utilisateurs), nous l'activons simplement à l'aide de la
commande systemctl. Cependant, assurez-vous de changer le mot de passe par défaut en premier ! Nous pouvons utiliser systemctl pour activer et désactiver la plupart des
services dans Kali Linux.

Copyright - Tout droit réservé - OFPPT 63


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
Le service HTTP :
Le service Apache HTTP est souvent utilisé lors d'un test d'intrusion, soit pour héberger un site, soit pour fournir une source de téléchargement de fichiers sur une
machine cible. Le service HTTP est basé sur TCP et écoute par défaut sur le port 80. Pour démarrer le service HTTP dans Kali, nous pouvons utiliser systemctl comme nous
l'avons fait lors du démarrage du service SSH, en remplaçant le nom du service par "apache2 ». Comme pour le service SSH, nous pouvons vérifier que le service HTTP
s'exécute et écoute sur le port TCP 80 avec les commandes ss et grep.

Pour que le service HTTP démarre au démarrage, comme avec le service SSH, nous devons l'activer explicitement avec systemctl et son option enable :
PARTIE 2

La plupart des services de Kali Linux fonctionnent à peu près de la même manière que SSH et HTTP, via leurs scripts de service ou d'initialisation.

Copyright - Tout droit réservé - OFPPT 64


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
• La distribution Kali contient les outils les plus couramment utilisés dans le domaine des tests d'intrusion. Cependant, il n'est pas pratique d’ajouter chaque outil présent
dans le répertoire Kali dans notre machine. Par conséquent, nous devrons discuter de la manière de rechercher, d'installer ou de supprimer des outils. Nous explorerons
l'ensemble d'outils Advanced Package Tool (APT) ainsi que d'autres commandes utiles pour effectuer des opérations de maintenance sur le système d'exploitation Kali
Linux. APT est un ensemble d'outils qui aide à gérer les packages, ou les applications, sur un système basé sur Debian. Puisque Kali est basé sur Debian, nous pouvons
utiliser APT pour installer et supprimer des applications, mettre à jour des packages et même mettre à niveau l'ensemble du système.
apt update :
Les informations concernant les packages APT sont mises en cache localement pour accélérer tout type d'opération qui implique d'interroger la base de données APT. Par
conséquent, il est toujours recommandé de mettre à jour la liste des packages disponibles, y compris les informations relatives à leurs versions, leurs descriptions, etc.
Nous pouvons le faire avec la commande apt update comme suit :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 65


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
apt upgrade :
Une fois la base de données APT mise à jour, nous pouvons mettre à niveau les packages installés et le système principal vers les dernières versions à l'aide de la
commande apt upgrade. Pour mettre à niveau un seul package, ajoutez le nom du package après la commande apt upgrade, par exemple apt upgrade metasploit-
framework.

apt-cache search :
La commande de recherche apt-cache affiche une grande partie des informations stockées dans le cache de la base de donnés interne des paquets. Par exemple, disons
que nous aimerions installer l'application python2 via APT. La première chose que nous devons faire est de savoir si python2 est présent ou non dans les répertoires Kali
Linux. Pour ce faire, nous exécutons la commande :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 66


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
apt show :
Certains résultats ne contiennent pas forcément le mot-clé python2. Pour confirmer par exemple que la description du package cloud-sptheme contient bien le mot-clé
«python2», on peut utiliser la commande apt show avec le nom du package :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 67


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Kali linux
apt install :
La commande apt install peut être utilisée pour ajouter un package au système avec apt install suivi du nom du package. Continuons avec l'installation de python2 :

(Dans ce cas, python2 est déjà installé)

apt remove –purge :


La commande apt remove –purge supprime complètement les packages de Kali. Il est important de noter que la suppression d'un paquet avec apt remove supprime toutes
les données du paquet, mais laisse généralement des fichiers de configuration utilisateur (modifiés), au cas où la suppression serait accidentelle. L'ajout de l'option --purge
supprime tous les restes.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 68


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Parrot OS
• Parrot OS est une alternative de Kali Linux qui commence à être utilisée pour les tests d’intrusion. Parrot OS est une distribution aussi basée sur Debian qui se concentre
principalement sur tout ce qui concerne la sécurité informatique. Elle propose aussi un écosystème complet de test d’intrusion, d’évaluation et d’analyse des vulnérabilités,
ainsi que l’analyse forensique des systèmes, la préservation de l’anonymat et la pratique de la cryptographie et du cryptage.
• Plusieurs versions de Parrot OS existent, pour notre besoin nous utiliserons la version la security edition où la plupart des outils de tests d’intrusion sont installés.
• La version Parrot OS security edition peut être téléchargée à partir du lien suivant : [Link]
• Comme pour Kali Linux, nous recommandons l’utilisation de vmware pour installer Parrot OS security edition.
• La gestion des paquets est identique à la gestion des paquets sur Kali Linux.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 69


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

Parrot OS security edition


• La distribution Parrot OS security edition n'intègre que des outils de sécurité, pour permettre un accès root facile et faire tomber toutes les barrières du système de
sécurité qui peuvent influencer le flux de travail d'un pentester. Parrot a été conçu pour être un environnement très confortable pour les experts en sécurité et les
chercheurs. Il inclut de nombreux programmes de base pour un usage quotidien que les distributions de test d’intrusion excluent généralement . Ce choix a été fait pour
faire de Parrot non seulement un bon système pour effectuer des tests d’intrusion, mais aussi un bon environnement où vous pouvez rédiger des rapports, construire
vos propres outils et communiquer de manière transparente avec vos coéquipiers, sans avoir besoin d'ordinateurs, de systèmes d'exploitation ou de configuration
supplémentaires.
• Parrot OS Security edition est livré avec des profils et des configurations de durcissement personnalisés pour AppArmor et d'autres technologies de durcissement linux.
Les applications de l'utilisateur dans Parrot sont protégées et "emprisonnées" pour limiter les dommages en cas de compromission du système.
• Toute cette sécurité supplémentaire a un coût : il est plus difficile d'adopter de mauvais comportements sur Parrot. Par exemple, il n'est pas possible de se connecter en
tant que root avec l'ensemble de l'environnement de bureau, ou de lancer des applications critiques comme des navigateurs, des lecteurs multimédia ou des lecteurs
de documents avancés avec des autorisations privilégiées inutiles.
• L'utilisateur peut toujours ouvrir des consoles root, lancer des outils de sécurité avec des permissions privilégiées et utiliser le système sans limites. La seule chose qui
change, c'est que toutes les applications critiques de l'utilisateur sont désormais protégées contre les très mauvais comportements et les techniques d'exploitation
courantes, voire les zero-days, et que les dommages causés par les exploitations avancées sont très limités.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 70


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng : un outil OSINT Web


• recon-ng est un framework basé sur des modules pour la collecte d'informations sur le Web. recon-ng affiche les résultats d'un module au terminal mais il les stocke
également dans une base de données. Une grande partie du pouvoir de recon-ng consiste à alimenter les résultats d'un module dans un autre, ce qui nous permet
d'étendre rapidement la surface de notre collecte d'informations. recon-ng est pré-installée dans Kali Linux.
• Utilisons recon-ng pour compiler des données intéressantes sur tesla. Pour commencer, exécutons simplement : recon-ng.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 71


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Notez que certains modules sont marqués d'un astérisque dans la colonne "K". Ces modules nécessitent des informations d'identification ou des clés API pour les
fournisseurs tiers. Le wiki recon-ng maintient une courte liste des clés utilisées par ses modules. Certaines de ces clés sont disponibles pour les comptes gratuits, tandis
que d'autres nécessitent un abonnement.
• Nous pouvons en savoir plus sur un module en utilisant marketplace info suivi du nom du module. Étant donné que les modules GitHub nécessitent des clés API,
utilisons cette commande pour examiner le module recon/domainshosts/google_site_web :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 72


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Selon sa description, ce module recherche sur Google avec l'opérateur "site" et il ne nécessite pas de clé API. Installons le module avec marketplace install :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 73


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Après avoir installé le module, nous pouvons le charger avec module load suivi de son nom. Ensuite, nous utiliserons les informations pour afficher les détails sur le
module et les paramètres requis :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 74


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Notez que la sortie contient des informations supplémentaires sur le module maintenant que nous l'avons installé et chargé. Selon la sortie, le module nécessite
l'utilisation d'une source, qui est la cible sur laquelle nous voulons collecter des informations. Dans ce cas, nous utiliserons les options set SOURCE [Link] pour
définir notre domaine cible :

• Enfin, nous lançons le module avec run :


PARTIE 2

• La requête a été bloquée par un CAPCHA google. Un pentester doit toujours trouver une autre solution en cas de blocage. Utilisons un autre module en suivant les
mêmes étapes.

Copyright - Tout droit réservé - OFPPT 75


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Nous allons utiliser un autre module hackertarget qui nous permettra d’avoir les mêmes informations en suivant les même étapes info, install, load, run :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 76


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Nous pouvons utiliser la commande show hosts pour afficher les données stockées :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 77


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Examinons un autre module recon/hosts-hosts/resolve qui nous permettra de résoudre des noms de hôtes avec des IPs avec marketplace info :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 78


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Une fois le module installé, nous pouvons l'utiliser avec modules load, run et info pour afficher des informations sur le module et ses options :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 79


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

recon-ng
• Comme il ressort clairement de la sortie précédente, ce module résoudra l'adresse IP d'un hôte. Nous devons fournir l'adresse IP que nous voulons résoudre comme
source. Nous avons quatre options que nous pouvons définir pour la source : default, string, path et query. Chaque option est accompagnée d'une description, comme
indiqué. Par exemple, dans le module de reconnaissance « google_site_web », nous avons utilisé une valeur de chaîne.
• Nous allons choisir de résoudre [Link] :

• Nous avons maintenant des adresses IP resolvant [Link].


• Si nous affichons à nouveau les hôtes, nous pouvons vérifier
que la base de données a été mise à jour avec les résultats des deux
modules :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 80


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

theHarvester : un outil OSINT de reconnaissance


• theHarvester est un autre outil OSINT pour la reconnaissance. Il utilise plusieurs sources d'information pour collecter des informations et nous aider à déterminer le
périmètre de l'entreprise. theHarvester récupère les e-mails, les sous-domaines, les IPs et les URLs. theHarvester est pré-installée dans Kali Linux.
• Syntaxe basique : theharvester -d [domain] -l [amount of depthness] -b [search engines] -f [filename]
-d : Spécifie le domaine à analyser
-l : Spécifie la profondeur de l'analyse. Plus l’analyse est profonde mais plus lent.
-b : spécifie le moteur de recherche sur lequel effectuer la recherche (google, googleCSE, bing, bingapi, pgp, linkedin, google-profiles, jigsaw, twitter, googleplus, all, etc)
certains moteurs de recherche requièrent des clés API.
-f : spécifie un fichier de sortie pour les résultats trouvés. Ce fichier sera enregistré dans le répertoire courant de votre terminal, sauf indication contraire, au format HTML.
• Pour plus de détails et d’options avancées, il faut utiliser l’aide avec theHarvester –h
PARTIE 2

Copyright - Tout droit réservé - OFPPT 81


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

theHarvester : un outil OSINT de reconnaissance


• Exemple : theHarvester -d entreprise –l 600 –d linkedin –f [Link]
PARTIE 2

Copyright - Tout droit réservé - OFPPT 82


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

theHarvester : un outil OSINT de reconnaissance


• Exemple pour des E-mails: theHarvester -d [Link] –d bing
PARTIE 2

Copyright - Tout droit réservé - OFPPT 83


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

SpiderFoot : un outil OSINT de reconnaissance


• SpiderFoot est un outil OSINT de reconnaissance qui interroge automatiquement plus de 100 sources de données publiques pour collecter des informations sur les
adresses IP, les noms de domaine, les adresses e-mail, les noms et plus encore. Nous spécifions simplement la cible que nous voulons étudier et choisissons les
modules à activer. SpiderFoot collectera des données pour acquérir une compréhension de toutes les entités et montrer la relation entre chacune.
• SpiderFoot est préinstallée dans les nouvelles versions de Kali Linux.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 84


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

SpiderFoot : un outil OSINT de reconnaissance


• SpiderFoot est utilisé à travers une interface web. Pour cela, nous lançons un serveur web en local sur le port 5151 : SpiderFoot –l [Link]:5151 et nous visitons la
l’url [Link]
PARTIE 2

Copyright - Tout droit réservé - OFPPT 85


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

SpiderFoot : un outil OSINT de reconnaissance


• Exemple : lancez un nouveau scan, donnez un nom de scan et Entrez ensuite le nom du target : [Link], gardez les options par défaut (all) et cliquez sur Run Scan Now
PARTIE 2

Copyright - Tout droit réservé - OFPPT 86


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

SpiderFoot : un outil OSINT de reconnaissance


• Les résultats sont affichés sous plusieurs formats :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 87


01 – Collecter les informations de manière
passive
Outils d’automatisation OSINT

SpiderFoot : un outil OSINT de reconnaissance


• Nous pouvons ensuite aller sur l’onglet Browse et cliquer sur chaque type de résultat pour voir les détails des informations collectées :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 88


CHAPITRE 1
Collecter les informations de manière
passive

1. Moteurs de recherche
2. Réseaux sociaux pour la reconnaissance
3. Outils d’automatisation OSINT
4. Frameworks de collecte d’informations
01 – Collecter les informations de manière
passive
Frameworks de collecte d’informations

OSINT framework
• Nous terminons ce chapitre en mentionnant brièvement deux frameworks
supplémentaires qui intègrent bon nombre des techniques dont nous avons
discuté et ajoutent des fonctionnalités supplémentaires.
Ces frameworks sont généralement trop lourds pour donner juste quelques
exemples dans un cours, mais ils sont très précieux lors des tests d’intrusion
en conditions réelles parce qu’ils permettent de gérer une très grande quantité
d’informations et de sources.
• L’OSINT framework contient des outils de collecte d'informations et des sites
Web dans un emplacement central. Certains outils répertoriés dans ce
framework couvrent plus de disciplines que la cybersécurité.
• L’OSINT framework n'est pas censé être une checklist, mais l'examen des
catégories et des outils disponibles peut susciter des idées pour des
opportunités de collecte d'informations supplémentaires.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 90


01 – Collecter les informations de manière
passive
Frameworks de collecte d’informations

Maltego: un framework de collecte d’informations


• Maltego est un outil d'exploration de données très puissant qui offre une combinaison infinie d'outils et de stratégies de collecte d’informations. Maltego recherche des
milliers de sources de données en ligne et utilise des "transformations" extrêmement intelligentes pour convertir une information en une autre.
• Par exemple, si nous effectuons une campagne de collecte d'informations sur les utilisateurs, nous pourrions soumettre une adresse e-mail et, par le biais de diverses
recherches automatisées, la "transformer" en un numéro de téléphone ou une adresse postale associés. Au cours de la phase de collecte d'informations
organisationnelles, nous pourrions soumettre un nom de domaine et le "transformer" en un serveur Web, puis une liste d'adresses e-mail, puis une liste de comptes de
médias sociaux associés, puis en une liste de mots de passe potentiels pour ce compte de messagerie. Les combinaisons sont infinies et les informations découvertes
sont présentées dans un graphique évolutif qui permet une navigation facile par zoom et panoramique.
• Maltego CE (la "version communautaire" limitée de Maltego) est inclus dans Kali et nécessite une inscription gratuite pour être utilisé. Des versions commerciales sont
également disponibles et peuvent gérer des ensembles de données plus volumineux.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 91


01 – Collecter les informations de manière
passive
Frameworks de collecte d’informations

Maltego: un framework de collecte d’informations


• Exemple : lancez un nouveau graphe, faites glisser et déposez l'entité "Domaine" sur la page. Entrez ensuite le nom de domaine: [Link].
• Faites un clic droit et choisissez le bouton "All Transforms ".
• Une fois le processus de transformation terminé, vous verrez le résultat comme cette image ci-dessous.
Vous pouvez voir les détails du domaine spécifique, tels que les détails de l'e-mail, de la personne, du serveur, etc.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 92


01 – Collecter les informations de manière
passive
Frameworks de collecte d’informations

Maltego: un framework de collecte d’informations


• Exemple : lancez un nouveau graphe, faites glisser et déposez l'entité "person" sur la page. Entrez ensuite le nom de la personne : elon musk
• Faites un clic droit et choisissez le bouton "All Transforms".
PARTIE 2

Copyright - Tout droit réservé - OFPPT 93


CHAPITRE 2
Identifier les vulnérabilités des services
utilisés

Ce que vous allez apprendre dans ce chapitre :

• Outils de scan (nmap, Nessus, Nexpose, etc.)


• Analyse et évaluation des vulnérabilités
• Élimination des faux positifs

12 heures
CHAPITRE 2
Identifier les vulnérabilités des services
utilisés

1. Outils de scan (nmap, Nessus, Nexpose, etc.)


2. Analyse et évaluation des vulnérabilités
3. Élimination des faux positifs
02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Collecter les informations d’une manière active


• Après avoir collecté des informations sur la cible d'une manière passive. Nous irons au-delà de la collecte passive d'informations et explorerons des techniques qui
impliquent une interaction directe avec les services cibles. Nous verrons quelques techniques fondamentales, mais gardez à l'esprit qu'il existe d'innombrables services
qui peuvent être ciblés. Cela inclut Active Directory, des applications web, etc. Cependant, nous examinerons certaines des techniques de collecte d'informations actives
les plus courantes dans ce module, notamment l'analyse des ports et l'énumération DNS, SMB, NFS, SMTP et SNMP.

• La reconnaissance active commence par des connexions directes établies avec la machine cible. Une telle connexion peut laisser des informations dans les journaux
indiquant l'adresse IP que nous utilisons, l'heure de la connexion et la durée de la connexion, entre autres. Cependant, toutes les connexions ne sont pas suspectes. Il
est possible de faire apparaître votre reconnaissance active comme une activité client régulière. Par exemple, naviguer sur le Web cible avec un navigateur connecté à
internet ne sera pas détecté comme reconnaissance parmi des centaines d'autres utilisateurs légitimes.

• Ensuite vient la partie où il faut utiliser des outils plus agressifs pour scanner les ports, les services, les domaines, les sous-domaines et les dossiers pour trouver des
vulnérabilités sur la cible. La découverte des vulnérabilités fait partie intégrante de tout type de test d’intrusion. Bien que nous préférions le faire manuellement en
tirant partie de nos connaissances et de notre expérience lors d'un audit de sécurité, les scanners de vulnérabilité automatisés sont néanmoins inestimables lorsqu'ils
sont utilisés dans un contexte approprié.
PARTIE 2

• Dans ce chapitre, nous donnerons un aperçu de l'analyse automatisée des vulnérabilités, discuterons de ses diverses considérations et nous concentrerons à la fois sur
nmap, Nessus et nexpose en tant qu'outils indispensables.

Copyright - Tout droit réservé - OFPPT 96


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Scanner les ports et les services


• En matière de test d’intrusion, la connaissance est synonyme de pouvoir. Plus vous avez de connaissances sur un système ou un réseau cible, plus vous disposez
d'options. Il est donc impératif qu’une collecte d’informations appropriée soit effectuée avant toute tentative d'exploitation.
• Supposons que nous ayons reçu/trouvé des IPs d’un SI ciblepour effectuer un audit de sécurité. Avant de commencer, nous devons avoir une idée du « paysage » que
nous attaquons. Cela signifie que nous devons établir quels services s'exécutent sur les cibles. Par exemple, l'un d'entre eux exécute peut-être un serveur Web et un
autre agit en tant que contrôleur de domaine Windows Active Directory.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 97


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Scanner les ports et les services


• La première étape dans l'établissement de cette "carte" du paysage est ce qu'on
appelle la numérisation des ports. Lorsqu'un ordinateur exécute un service réseau, il
ouvre une construction réseau appelée « port » pour recevoir la connexion. Les ports
sont nécessaires pour effectuer plusieurs requêtes réseau ou pour disposer de
plusieurs services.
• Par exemple, lorsque vous chargez plusieurs pages Web à la fois dans un navigateur
Web, le programme doit avoir un moyen de déterminer quel onglet charge quelle page
Web. Cela se fait en établissant des connexions aux serveurs Web distants à l'aide de
différents ports sur votre ordinateur local. De même, si vous souhaitez qu'un serveur
puisse exécuter plusieurs services (par exemple, si vous souhaitez que votre serveur
Web exécute à la fois les versions HTTP et HTTPS du site), vous avez besoin d'un
moyen de diriger le trafic vers le service approprié. Encore une fois, les ports sont la
solution à cela.
• Les connexions réseau sont établies entre deux ports - un port ouvert en écoute sur le
serveur et un port sélectionné au hasard sur votre propre ordinateur. Par exemple,
PARTIE 2

lorsque vous vous connectez à une page Web, votre ordinateur peut ouvrir le port
49534 pour se connecter au port 443 du serveur.

Copyright - Tout droit réservé - OFPPT 98


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Scanner les ports et les services


• Chaque ordinateur/serveur a un total de 65535 ports disponibles ; cependant, beaucoup d'entre eux sont enregistrés en tant que ports standards. Par exemple, un
Webservice HTTP se trouve presque toujours sur le port 80 du serveur. Un Webservice HTTPS se trouve sur le port 443. Windows NETBIOS se trouve sur le port 139 et
SMB se trouve sur le port 445. Afin de savoir quel port est ouvert sur un serveur , nous devons réaliser un scan des ports.

Les classes des ports Les ports les plus connus/utilisés

catégorie Les ports Numéro de port service


Ports connus 0-1023 20 FTP
Ports enregistrés 1024-49151 22/23 SSH/TELNET
Ports privés 49152-65535 25 SMTP
53 DNS
PARTIE 2

80/443 HTTP/HTTPS
161 SNMP
88 KERBEROS

Copyright - Tout droit réservé - OFPPT 99


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : network mapper


• nmap est la norme de l'industrie des scanners. C'est un outil extrêmement puissant, rendu encore plus puissant par son moteur de script qui peut être utilisé pour
rechercher des vulnérabilités et, dans certains cas, même exécuter l'exploit directement !

• Les 3 types de scans nmap basiques : Serveur Client


✓ TCP Connect Scans (-sT)
✓ SYN "Half-open" Scans (-sS) SYN
✓ UDP Scans (-sU)

• D’autres types de scans existent :


SYN, ACK
✓ TCP Null Scans (-sN)
✓ TCP FIN Scans (-sF)
✓ TCP Xmas Scans (-sX)
ACK
PARTIE 2

Copyright - Tout droit réservé - OFPPT 100


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : TCP Connect Scan -sT


• Le scan TCP Connect fonctionne en effectuant le three-way handshake avec chaque port cible à tour de rôle. En d'autres termes, Nmap essaie de se connecter à chaque
port TCP spécifié et détermine si le service est ouvert par la réponse qu'il reçoit.
• Si nmap envoie une requête TCP SYN sur un port fermé, le serveur cible répondra avec un paquet TCP RST (Reset). Par cette réponse, nmap peut établir que le port est
fermé.
• Si la demande est envoyée à un port ouvert, la cible répondra avec un paquet TCP SYN/ACK. nmap marque ce port comme étant ouvert .(et termine three-way
handshake en renvoyant un paquet TCP avec ACK activé).
• De nombreux firewalls sont configurés pour dropper simplement les paquets entrants. Nmap envoie une requête TCP SYN et ne reçoit rien en retour. Cela indique que
le port est protégé par un firewall et que le port est donc considéré comme filtré.

Client Target
PARTIE 2

Copyright - Tout droit réservé - OFPPT 101


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : TCP SYN Scan -sS (Stealth)


• Le scan SYN envoie un paquet TCP RST après avoir reçu un SYN/ACK du serveur. Utilisé pour contourner les anciens IDS ou les applications qui enregistrent
la connexion une fois qu'elle a été entièrement établie.
• les scan SYN sont nettement plus rapides qu'un scan TCP Connect standard. Il faut avoir les droits sudo pour SYN Scan ( le type de scan par défaut pour sudo).
• Peut faire tomber un système instable.
• Mêmes règles pour les ports fermés ou filtrés.

Client Target
PARTIE 2

Copyright - Tout droit réservé - OFPPT 102


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : UDP Scan -sU


• Contrairement à TCP, les connexions UDP sont sans état (stateless). Les connexions UDP reposent sur l'envoi de paquets vers un port cible et espèrent qu’ils arriveront.
• UDP est adapté pour les connexions qui reposent sur la vitesse plutôt que sur la qualité (par exemple, le partage vidéo), mais le manque d'accusé de réception rend
UDP beaucoup plus difficile (et beaucoup plus lent) à analyser.
• Lorsqu'un paquet est envoyé à un port UDP ouvert, il ne devrait y avoir aucune réponse. Lorsque cela se produit, Nmap fait référence au port comme étant
ouvert|filtré. S’il reçoit une réponse le port est marqué comme ouvert. Le plus souvent, il n'y a pas de réponse, auquel cas la demande est envoyée une deuxième fois
en tant que contre-vérification. S'il n'y a toujours pas de réponse, le port est marqué ouvert|filtré.
• Lorsqu'un paquet est envoyé à un port UDP fermé, la cible doit répondre par un paquet ICMP (ping) contenant un message indiquant que le port est inaccessible. Cela
identifie clairement les ports fermés.
• Le scan UDP peut être très lent s’il est lancé sur tous les ports. Il est recommandé de l’utiliser pour les 20 ports les plus utilisés : nmap –sU –top-ports 20 <target>
PARTIE 2

Copyright - Tout droit réservé - OFPPT 103


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : les options


PARTIE 2

Copyright - Tout droit réservé - OFPPT 104


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : les scripts


• Le moteur de script Nmap (NSE) est un ajout incroyablement puissant à Nmap, étendant considérablement ses fonctionnalités. Les scripts NSE sont écrits dans le
langage de programmation Lua et peuvent être utilisés pour faire une variété de choses : de la recherche de vulnérabilités à l'automatisation des exploits pour celles-ci.
Le NSE est particulièrement utile pour la reconnaissance. Cependant, il convient de garder à l'esprit l'étendue de la bibliothèque de scripts.
• De nombreuses catégories sont disponibles. Certaines catégories utiles incluent :
✓ safe :- n'affectera pas la cible.
✓ intrusive :- Pas sûr : susceptible d'affecter la cible.
✓ vuln : - Recherche de vulnérabilités.
✓ exploit :- Tentative d'exploitation d'une vulnérabilité.
✓ auth:- Tentative de contournement de l'authentification pour les services en cours d'exécution (exemple, se connecter à un serveur FTP de manière anonyme).
✓ brute : - Tentative de force brute pour les services en cours d'exécution.
✓ discovery :- Tentative d'interrogation des services en cours d'exécution pour plus d'informations sur le réseau (par exemple, interrogation d'un serveur SNMP).
• Pour une liste exhaustive des scripts nmap : [Link]
PARTIE 2

Copyright - Tout droit réservé - OFPPT 105


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

nmap : exemples
nmap -sV -p 1-65535 [Link]/24
Il s'agit d'une commande simple pour scanner votre réseau local. Cette commande scannera toute votre plage d'adresses IP locales (en supposant que vous êtes dans la
plage [Link]-254), effectuera l'identification du service -sV et scannera tous les ports -p 1 -65535. En l'exécutant en tant qu'utilisateur normal et non root, ce sera un
scan basé sur TCP Connect. Si la commande est exécutée avec sudo au début, elle s'exécutera comme un scan TCP SYN.

Vous pouvez scanner plusieurs hôtes en lancant simplement leurs adresses IP ou leurs noms d'hôte avec Nmap : nmap [Link] [Link] [Link]

Pour économiser du temps et des ressources réseau, nous pouvons également analyser plusieurs adresses IP, en recherchant une courte liste de ports communs. Par
exemple, effectuons une analyse de connexion TCP pour les vingt premiers ports TCP avec l'option --top-ports et activons la détection de la version du système
d'exploitation, l'analyse des scripts et la traceroute avec -A : nmap -sT -A --top-ports=20 [Link]-254 -oG [Link]

Nous pouvons également identifier les services s'exécutant sur des ports spécifiques en inspectant les bannières de service (-sV) et en exécutant divers scripts
d'énumération de système d'exploitation et de service (–A) sur la cible : nmap -sV -sT -A [Link]
PARTIE 2

Copyright - Tout droit réservé - OFPPT 106


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


• Nessus est un scanner de vulnérabilité. Il utilise des techniques similaires à Nmap pour trouver et signaler les vulnérabilités, qui sont ensuite présentées dans une
interface graphique agréable à regarder. Nessus est différent des autres scanners car il ne fait pas d'hypothèses lors de la numérisation, comme si l'application Web
s'exécuterait sur le port 80 par exemple.
• Nessus propose un service gratuit et un service payant, certaines fonctionnalités sont exclues du service gratuit pour vous inciter à acheter le service payant. La version
gratuite est suffisante pour nos besoins de test d’intrusion.
Installation :
Nessus n’est pas installé par défaut sur Kali Linux. Il faut procéder à son installation :
1. Visitez le site : [Link] et créez un compte.
2. Nous allons ensuite télécharger le fichier Nessus-#.##.#-debian6_amd64.deb et Enregistrez-le dans votre dossier /downloads/
3. Dans le terminal, nous allons naviguer vers ce dossier et exécuter la commande suivante : sudo dpkg -i package_file.deb
N'oubliez pas de remplacer package_file.deb par le nom du fichier que vous avez téléchargé.
PARTIE 2

4. Nous allons maintenant démarrer le service Nessus avec la commande : sudo systemctl start [Link]
5. Ouvrez Firefox et accédez à l'URL suivante : [Link]

Copyright - Tout droit réservé - OFPPT 107


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Configuration
1. Ensuite, nous allons configurer le scanner. Sélectionnez l'option Nessus Essentials. Cliquer sur le bouton Skip nous amènera à une page, sur laquelle nous
saisirons le code que nous avons reçu dans l'e-mail de Nessus.
2. Remplissez les champs Nom d'utilisateur et Mot de passe. Assurez-vous d'utiliser un mot de passe fort !
3. Nessus va maintenant installer les plugins nécessaires à son fonctionnement.
Cela prendra un certain temps, qui dépendra de votre connexion Internet et capacités allouées à votre VM.
Si la barre de progression semble ne pas bouger, cela signifie que vous n'avez pas assez d'espace sur la
machine virtuelle pour effectuer l'installation.
PARTIE 2

4. Connectez-vous avec les identifiants de compte que vous avez créés précédemment.

Copyright - Tout droit réservé - OFPPT 108


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités

Console de scan :
Vous avez maintenant installé Nessus avec succès et vous aurez une console d’accueil comme ceci :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 109


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Lancer un scan :
• Pour lancer un scan, nous cliquons simplement sur ’’New Scan’’, une section policy Templates de scan apparait pour choisir le type de scan :
• Pour nos besoins de test d’intrusion, seulement
les 2 premiers types de scan nous intéressent :
✓ Discovery : ce scan nous permet juste
de confirmer que le hôte cible est actif
✓ Vulnerabilities : ces types de scans nous
permettent de scanner le hôte cible
dans l’objectif d’identifier des
vulnérabilités
PARTIE 2

Copyright - Tout droit réservé - OFPPT 110


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Lancer un scan réseau :
• Nous commencerons par l'un des types de scan les plus utiles, considéré comme adapté à n'importe quel hôte : "Basic network scan »
• Nous devons nommer le scan et nous pouvons modifier les options du scan ou ajouter des informations d’authentification si le scanner a besoin de s’authentifier pour
scanner le hôte cible
• Pour note exemple, nous allons scanner [Link]
• Il est possible de sauvegarder le scan pour être lancé ultérieurement
• Dans notre cas, nous lançons le scan en cliquant sur launch (après avoir
cliquer sur la flèche à côté de save) et le scan sera lancé
PARTIE 2

Copyright - Tout droit réservé - OFPPT 111


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Résultats du scan réseau :
• Parce qu’il s’agit d’un scan réseau, les vulnérabilités sont des informations récupérées sur le hôte cible. Nous pouvons cliquer sur chaque ligne pour voir les détails :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 112


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Résultats du scan réseau :
Un exemple d’informations récupérées concernant le hôte cible :

Le FQDN du hôte a été trouvé ( c’est une instance ec2 on sait donc que le hôte. L’OS de l’hôte a été retrouvé, c’est Microsoft Windows 2012 R2
est hébergé chea AWS)
PARTIE 2

Copyright - Tout droit réservé - OFPPT 113


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Lancer un scan web :
• Parmi les types de scan les intéressants, le scan pour identifier des vulnérabilités applicatives pour un site web cible : Web Application Tests
• Nous devons nommer le scan et nous pouvons modifier les options du scan ou ajouter des informations d’authentification si le scanner a besoin de s’authentifier pour
scanner le site web cible
• Pour note exemple, nous allons scanner le site web : [Link]
• Il est possible de sauvegarder le scan pour être lancé ultérieurement
• Dans notre cas, nous lançons le scan en cliquant sur launch (après avoir
cliquer sur la flèche à côté de save) et le scan sera lancé
PARTIE 2

Copyright - Tout droit réservé - OFPPT 114


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Résultats du scan web :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 115


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Nessus : un scanner de vulnérabilités


Résultats du scan web :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 116


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• Nexpose est un scanner de Rapid7. Rapid7 est la même société qui produit Metasploit et l'un des principaux avantages si vous êtes un utilisateur de Metasploit, est la
façon dont Nexpose y intègre ses résultats. Nexpose peut être utilisé dans un environnement Linux/UNIX ou Windows.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 117


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


Les caractéristiques de Rapid7 Nexpose :

• Real risk score : Le score CVSS standard de 1 à 10 entraîne des milliers de vulnérabilités « critiques ». Le score de risque réel de notre scanner de vulnérabilité fournit
des informations plus exploitables.
• Security adaptative : "L'analyse passive" est chargée de faux positifs et de données obsolètes provenant de vidages de données peu fréquents. Avec Nexpose Adaptive
Security, vous pouvez détecter et évaluer automatiquement les nouveaux appareils et les nouvelles vulnérabilités dès qu'ils accèdent à votre réseau
• Policy assessment : Le renforcement de vos systèmes est tout aussi important que la détection et la correction des vulnérabilités. Nexpose fournit une analyse intégrée
des politiques pour vous aider à comparer vos systèmes aux normes courantes telles que CIS et NIST. Des rapports de correction intuitifs vous donnent des instructions
étape par étape sur les actions à entreprendre pour avoir le plus grand impact sur l'amélioration de la conformité.
• Remediation reporting : Avec les rapports de remédiation de Nexpose, montrez au service informatique les 25 actions qu'il peut entreprendre dès maintenant pour
réduire le plus possible les risques. Vos données peuvent être facilement découpées en tranches et en dés pour donner aux bonnes personnes les informations exactes
dont elles ont besoin pour faire leur travail, sans parcourir des rapports de 10 000 pages ou des feuilles de calcul manuelles.
• Integration avec metasploit : L'objectif de tout produit de sécurité est de renforcer vos défenses en cas d'attaque réelle. Quelle meilleure façon de les tester qu'en en
simulant une ? Avec Metasploit Pro, vous pouvez valider les résultats de votre analyseur de vulnérabilités à l'aide d'un processus automatisé en boucle fermée, vous
PARTIE 2

assurant de prioriser automatiquement les actifs les plus importants en premier : ceux qui sont les plus faciles à violer.

Copyright - Tout droit réservé - OFPPT 118


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


Exécution de scan de vulnérabilités :
• Pour commencer un nouveau scan, accédez à la page d'accueil, cliquez sur le menu déroulant Créer et sélectionnez Site. La console de sécurité affichera l'écran « Site
Configuration ». Dans l'onglet Général, nous devons donner le nom et décrire notre site, comme dans l'image ci-dessus. Nous pouvons même définir son importance de
très faible à très élevée.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 119


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• La page de configuration des assets comprend deux sections : Inclure et Exclure. Dans la section Inclure, nous avons fourni notre adresse IP cible (c'est-à-dire
[Link]) ou si nous voulons analyser l'ensemble du réseau, nous devrons fournir la plage IP complète (c'est-à-dire [Link]-254). La section Exclure est utilisée
pour exclure l'adresse IP de l'analyse. Si nous analysons l'intégralité de la plage d'adresses IP et que nous souhaitons exclure certaines adresses IP de l'analyse, il nous
suffit de les placer dans la section Exclure les actifs. Maintenant, dans la section Authentification, si nous devons mettre des informations d'identification, nous pouvons le
faire ici. Concrètement, nous effectuons une analyse basée sur les informations d'identification en fournissant au système un nom d'utilisateur et un mot de passe.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 120


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• Ensuite, configurez un modèle d'analyse particulier, comme indiqué ci-dessus. Nous avons utilisé le modèle d'analyse par défaut, c'est-à-dire un audit complet sans Web
Spider.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 121


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• Nous devons donc maintenant sélectionner un moteur pour notre analyse, bien que nous sélectionnions le moteur d'analyse local, comme indiqué dans l'image ci-
dessus. Maintenant nous avons complété toutes les informations requises pour configurer notre site pour une analyse. Pour commencer la numérisation, cliquez sur le
bouton Enregistrer et numériser dans le coin supérieur droit de notre panneau de console Nexpose.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 122


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• Une fois le scan terminé, le résultat indique clairement le nombre de vulnérabilités possédées, le score de risque et la durée de l'analyse. Nous pouvons maintenant voir
toutes les vulnérabilités mentionnées ainsi que leur score CVSS (Common Vulnerability Scoring System) du plus élevé au plus bas dans l'onglet Vulnérabilités. La partie
intéressante est qu'un ou plusieurs de ces exploits ont été publiés dans la base de données Exploit et sont vulnérables à de nombreux Metasploit.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 123


02 – Identifier les vulnérabilités des services
utilisés
Outils de scan (nmap, Nessus, Nexpose, etc.)

Rapid7 Nexpose : un autre scanner de vulnérabilités


• Lorsque nous cliquons sur une vulnérabilité particulière, pour une instance ici, nous avons cliqué sur le compte par défaut de MySQL qui est une menace critique. Il
nous donnera les informations sur la vulnérabilité telles que sa gravité, si elle est protégée par un mot de passe ou non, sa version , etc. comme indiqué dans l'image ci-
dessous.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 124


CHAPITRE 2
Identifier les vulnérabilités des services
utilisés

1. Outils de scan (nmap, Nessus, Nexpose, etc.)


2. Analyse et évaluation des vulnérabilités
3. Élimination des faux positifs
02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

Évaluation des vulnérabilités


• Les outils de scans automatisés nous permettent de gagner beaucoup de temps et nous facilitent la tâche pour les vulnérabilités les plus faciles à découvrir. Cependant,
« les faux-positifs » est un problème récurrent pour ce type d’outils. C’est pour cela que l’évaluation des vulnérabilités identifiées manuellement ou en utilisant d’autres
outils ou scripts spécialisés est recommandé.
• Nous donnerons dans ce chapitre quelques exemples pour des protocoles très utilisés. Cependant, chaque protocole ou service identifié lors des scans nmap ou
Nessus/nexpose doit être étudié en profondeur pour pouvoir tester ses vulnérabilités et ses mauvaises configurations.
• Ci-dessous une comparaison entre les outils automatisés et la validation manuelle :

Scan des outils automatisés Tests manuels

Ne fournissent pas d'informations plus approfondies sur les vulnérabilités. Fournissent des informations détaillées et plus approfondies sur les
vulnérabilités.
Ils découvrent les failles de sécurité courantes comme une mise à jour Ils détectent les failles difficiles qui sont souvent manquées par un scanner
manquante, des règles d'autorisation défectueuses, des défauts de comme les erreurs de logique métier, les failles, les défauts de codage, etc. Cela
configuration, avec une efficacité étonnante. implique également d'exploiter ces vulnérabilités pour évaluer l'impact sur le
système.
PARTIE 2

Cela peut être fait fréquemment sans beaucoup de préparation et de Cela demande des efforts et du temps, donc ne peut pas être fait fréquemment.
planification.
Il est rapide à exécuter et fait gagner beaucoup de temps. Les test manuels peuvent prendre des jours entiers.

Copyright - Tout droit réservé - OFPPT 126


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

SMB
• SMB - Server Message Block Protocol - est un protocole de communication client-serveur utilisé pour partager l'accès aux fichiers, imprimantes, ports série et autres
ressources sur un réseau. Les serveurs mettent les systèmes de fichiers et d'autres ressources (imprimantes, canaux nommés, API) à la disposition des clients sur le
réseau. Les ordinateurs clients peuvent avoir leurs propres disques durs, mais ils souhaitent également accéder aux systèmes de fichiers partagés et aux imprimantes
sur les serveurs.
• Le protocole SMB est connu sous le nom de protocole de demande de réponse, ce qui signifie qu'il transmet plusieurs messages entre le client et le serveur pour établir
une connexion. Les clients se connectent aux serveurs en utilisant TCP/IP (en fait NetBIOS sur TCP/IP comme spécifié dans RFC1001 et RFC1002), NetBEUI ou IPX/SPX.
• Une fois qu'ils ont établi une connexion, les clients peuvent alors envoyer des commandes (SMB) au serveur qui leur permettent d'accéder aux partages, d'ouvrir des
fichiers, de lire et d'écrire des fichiers, et généralement de réaliser tout ce qu’on peut faire avec un système de fichiers.
• Les systèmes d'exploitation Microsoft Windows depuis Windows 95 ont inclus la prise en charge du protocole SMB client et serveur. Samba, un serveur open source
prenant en charge le protocole SMB, a été publié pour les systèmes Unix.
PARTIE 2

Copyright - Tout droit réservé - OFPPT 127


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

SMB
Enum4Linux
• Enum4linux est un outil utilisé pour énumérer les partages SMB sur les systèmes Windows et Linux. Il s'agit essentiellement d'un wrapper autour des outils du package
Samba et facilite l'extraction rapide des informations de la cible relatives à SMB. Il est installé par défaut sur Parrot et Kali, mais si vous avez besoin de l'installer, vous
pouvez le faire depuis le github officiel.
• La syntaxe d'Enum4Linux est simple et agréable : enum4linux [options] ip
PARTIE 2

Copyright - Tout droit réservé - OFPPT 128


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

SMB
Les types d'exploit SMB
• Bien qu'il existe des vulnérabilités telles que CVE-2017-7494 qui peuvent permettre l'exécution de code à distance en exploitant SMB, on est plus exposé à rencontrer
une situation où la meilleure façon d'accéder à un système est due à des erreurs de configuration dans le système. Dans ce cas, nous allons exploiter l'accès anonyme
au partage SMB - une mauvaise configuration courante qui peut permettre d'obtenir des informations qui mèneront à un shell.
La méthode d’analyse
• Avec l’énumération initiale, on peut connaitre :
✓ L'emplacement de partage SMB
✓ Le nom d'un partage SMB intéressant
SMBClient
• Pour accéder à un partage SMB, nous avons besoin d'un client pour accéder aux ressources sur les serveurs. Nous utiliserons SMBClient car il fait partie de la suite
samba par défaut et bien sûr il est disponible par défaut sur Kali et Parrot.
• On peut accéder à distance au partage SMB en utilisant la syntaxe : smbclient //[IP]/[PARTAGER]
Suivie par les options :
PARTIE 2

• -p [port] : pour spécifier le port


• -u [user] : pour spécifier le nom d’utilisateur

Copyright - Tout droit réservé - OFPPT 129


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

Telnet
• Telnet est un protocole d'application qui vous permet, à l'aide d'un client telnet, de vous connecter et d'exécuter des commandes sur une machine distante hébergeant
un serveur telnet. Le client telnet établira une connexion avec le serveur. Le client deviendra alors un terminal virtuel, vous permettant d'interagir avec l'hôte distant.
• Telnet envoie tous les messages en texte clair et ne dispose d'aucun mécanisme de sécurité spécifique. Ainsi, dans de nombreuses applications et services, Telnet a été
remplacé par SSH dans la plupart des implémentations.
• L'utilisateur se connecte au serveur en utilisant le protocole Telnet, ce qui signifie entrer "telnet" dans une invite de commande. L'utilisateur exécute ensuite des
commandes sur le serveur à l'aide de commandes Telnet spécifiques dans l'invite Telnet. Vous pouvez vous connecter à un serveur telnet avec la syntaxe suivante :
telnet [ip] [port]

Les types d'exploit telnet


• Telnet, étant un protocole, est en soi peu sûr pour les raisons dont nous avons parlé plus haut. Il manque de chiffrement, envoie donc toutes les communications en
clair et, pour la plupart, a un contrôle d'accès médiocre. Cependant, il existe des CVE pour les systèmes client et serveur Telnet, donc lors de l'exploitation, vous pouvez
vérifier ceux-ci sur :
✓ [Link]
✓ [Link]
PARTIE 2

• Cependant, on est beaucoup plus exposé de trouver une mauvaise configuration dans la façon dont telnet a été configuré ou fonctionne qui permettra de l'exploiter.

Copyright - Tout droit réservé - OFPPT 130


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

Telnet
La méthode d’analyse
Ainsi, dès notre étape d’énumération avec nmap, nous devons savoir que :
✓ Il y a un service telnet mal caché en cours d'exécution sur la cible
✓ Le message d’acceuil du service
✓ Et peut être un un nom d'utilisateur par exemple "Skidy" impliqué

• Toutes les analyse intéressantes peuvent être effectuées par nmap : nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>
• Pour des cibles Windows, nous pouvons aussi utiliser le script [Link] pour avoir des infos NTLM comme les infos ci-dessous :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 131


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

FTP
• File Transfer Protocol (FTP) est, comme son nom l'indique, un protocole utilisé pour permettre le transfert à distance de fichiers sur un réseau. Il utilise un modèle client-
serveur pour ce faire et, comme nous le verrons plus tard, relaie les commandes et les données de manière très efficace.
• Une session FTP typique fonctionne à l'aide de deux canaux :
✓ un canal de commande (parfois appelé le canal de contrôle)
✓ un canal de données
• Comme leur nom l'indique, le canal de commande est utilisé pour transmettre des commandes ainsi que des réponses à ces commandes, tandis que le canal de données
est utilisé pour transférer des données. FTP fonctionne à l'aide d'un protocole client-serveur. Le client initie une connexion avec le serveur. Ce dernier valide les
identifiants de connexion fournis, puis ouvre la session.
• Pendant que la session est ouverte, le client peut exécuter des commandes FTP sur le serveur. Le serveur FTP peut prendre en charge les connexions actives ou passives,
ou les deux.
• Utilisation de starttls pour se connecter à un serveur ftp :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 132


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

FTP
• Parmi les mauvaises configurations les plus fréquentes en ftp est le « anonymous login ». Cependant, il faut vérifier les droits que nous avons en se connectant en
anonymous en testant les paires username/mot de passes suivantes : anonymous/anonymous, ftp/ftp, anonymous/ (rien)

• Enfin, nous pouvons toujours essayer de se connecter à un serveur FTP à l'aide d'un navigateur (comme Firefox) en utilisant une URL comme :
PARTIE 2

[Link]

Copyright - Tout droit réservé - OFPPT 133


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

HTTP/HTTPS
• Comme nous pouvons l’imaginer, le service web est parmi les services les plus utilisés et aussi les plus exposés. Après avoir identifié qu’il y a un service http/https utilisé
et lancer des scans pour identifier des vulnérabilités d’une manière automatisée et générale, nous devons envisager d'utiliser des outils spécialisés d'évaluation
d'applications Web pour énumérer plus d'informations sur la cible. Il existe une variété d'outils qui peuvent aider à découvrir et à exploiter les vulnérabilités des
applications Web, dont beaucoup sont préinstallés dans Kali.
Vulnérabilités serveur
• Il faut Vérifier s'il existe des vulnérabilités connues pour la version du serveur en cours d'exécution. Les en-têtes HTTP et les cookies de la réponse peuvent être très
utiles pour identifier les technologies et/ou la version utilisées. Nmap scan permet d'identifier la version du serveur, mais il peut aussi être utile les outils whatweb,
webtech ou [Link] :
PARTIE 2

Copyright - Tout droit réservé - OFPPT 134


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

HTTP/HTTPS
Des scanners automatiques web

Spidering et le brute-forrcing
Les outils de spidering et de brute-forcing permettent de trouver autant de chemins que possible à partir de l'application testée. Par conséquent, l'exploration Web et les
PARTIE 2

sources externes doivent être utilisées pour trouver autant de chemins valides que possible.

Copyright - Tout droit réservé - OFPPT 135


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

HTTP/HTTPS
• Quelques outils de spidering et de brute-forcing :
✓ Dirsearch (python): Il n'autorise pas les certificats auto-signés mais permet la recherche récursive.
✓ Gobuster (go): Il autorise les certificats auto-signés mais n'a pas de recherche récursive.
✓ wfuzz : un outil très puissant et très facile à utiliser pour tout type de brute-forcing :
ffuf : ressemble à wfuzz mais plus rapide : ffuf -c -w /usr/share/wordlists/dirb/[Link] -u [Link]
✓ xnLinkFinder : il s'agit d'un outil utilisé pour découvrir les points de terminaison d'une cible donnée.
✓ waymore : permet de découvrir les liens de la machine cible(également en téléchargeant les réponses dans le retour et en recherchant plus de liens)
PARTIE 2

Copyright - Tout droit réservé - OFPPT 136


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

HTTP/HTTPS
Vulnérabilités SSL/TLS
• Si l'application ne force pas l'utilisation de HTTPS dans aucune partie, alors elle est vulnérable à MitM
• Si l'application envoie des données sensibles (mots de passe) via HTTP, il s'agit alors d'une vulnérabilité très critique.
On peut utiliser le script [Link] pour vérifier les vulnérabilités et utiliser sslscan ou sslyze pour revérifier les vulnérabilités :
PARTIE 2

Note importante : pour une liste de tous les types de vulnérabilités web que nous devons vérifier, il faut se référer à la partie 1 de ce guide. Dans le chapitre 3, vous
trouverez une liste des vérifications à effectuer pour chaque type de vulnérabilité web.

Copyright - Tout droit réservé - OFPPT 137


02 – Identifier les vulnérabilités des services
utilisés
Analyse et évaluation des vulnérabilités

DNS
• Le système de noms de domaine (DNS) est le répertoire téléphonique d'Internet. Les humains accèdent aux informations en ligne via des noms de domaine, comme
[Link] ou [Link]. Les navigateurs Web interagissent via des adresses IP (Internet Protocol). DNS traduit les noms de domaine en adresses IP afin que les
navigateurs puissent charger des ressources Internet.
Zone transfer
Pour vérifier si le service DNS est vulnérable à la vulnérabilité zone transfer, qui est un des mécanismes disponibles pour répliquer les bases de données distribuées
contenant les données DNS au travers d'un ensemble de serveurs DNS, nous pouvons utiliser la commande dig :
dig axfr @<DNS_IP> #tente un transfert de zone sans domaine
dig axfr @<DNS_IP> <DOMAIN> #tente un transfert de zone en devinant le domaine
fierce --domain <DOMAIN> --dns-servers <DNS_IP> #tente un transfert zone contre chaque authoritative name server et si ça ne marche pas lance un brute force

nslookup
> SERVER <IP_DNS> #sélectionne le serveur dns
> [Link] #faire un reverse de [Link] (lui-même) pour avoir le nom dns ou le FQND
PARTIE 2

> <IP_MACHINE> #faire une reverse de la cible ou une autre machine pour avoir son nom dns ou son FQND

Copyright - Tout droit réservé - OFPPT 138


CHAPITRE 2
Identifier les vulnérabilités des services
utilisés

1. Outils de scan (nmap, Nessus, Nexpose, etc.)


2. Analyse et évaluation des vulnérabilités
3. Élimination des faux positifs
02 – Identifier les vulnérabilités des services
utilisés
Élimination des faux positifs

Les outils d’automatisation vs les faux positifs


• L outils d’automatisation et les scanners apportent beaucoup d’avantages, cependant, Les scanners de vulnérabilité créent souvent beaucoup de bruit. Il existe deux
principaux types d'erreurs d'analyse de vulnérabilité :
✓ Les faux négatifs, où les résultats n'incluent pas de vulnérabilité existante. Les faux négatifs ont un impact direct sur la sécurité, car les vulnérabilités non
détectées ne peuvent pas être corrigées
✓ les faux positifs, où le scanner indique des problèmes de sécurité inexistants. Les faux positifs, en revanche, peuvent avoir de graves conséquences non
seulement pour la sécurité, mais pour l'ensemble de l'organisation

• Les tests d’intrusion doivent également être intégrés dans le pipeline de développement et automatisés autant que possible pour garantir que les problèmes sont
détectés rapidement et que les résultats des tests sont efficacement communiqués aux développeurs. Les faux positifs dans les résultats d'analyse introduisent un
travail supplémentaire inutile dans le pipeline de développement hautement automatisé et compromettent l'ensemble du processus de développement.

• Malheureusement, les faux positifs continueront d'exister, mais ils peuvent être limités par la compétence de la personne qui écrit les signatures ou configure les
templates de scan et vérifie manuellement les vulnérabilités remontées.
• Si nous pensons que nous avons un faux positif, il faut travailler soigneusement avec les développeurs ou le fournisseur de l’actif pour essayer de trouver la solution.
PARTIE 2

peut-être que vous êtes en fait vulnérable, ou que quelque chose d'autre est vulnérable à ce "contrôle de sécurité" particulier.

Copyright - Tout droit réservé - OFPPT 140

Vous aimerez peut-être aussi